Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/807870/?format=api
{ "id": 807870, "url": "http://patchwork.ozlabs.org/api/patches/807870/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netdev/patch/1504121973-8438-1-git-send-email-f.fainelli@gmail.com/", "project": { "id": 7, "url": "http://patchwork.ozlabs.org/api/projects/7/?format=api", "name": "Linux network development", "link_name": "netdev", "list_id": "netdev.vger.kernel.org", "list_email": "netdev@vger.kernel.org", "web_url": null, "scm_url": null, "webscm_url": null, "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<1504121973-8438-1-git-send-email-f.fainelli@gmail.com>", "list_archive_url": null, "date": "2017-08-30T19:39:33", "name": "[net] net: dsa: bcm_sf2: Fix number of CFP entries for BCM7278", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": true, "hash": "6938886a1fa2f874829accf9dac0263c2ec4b9e1", "submitter": { "id": 2800, "url": "http://patchwork.ozlabs.org/api/people/2800/?format=api", "name": "Florian Fainelli", "email": "f.fainelli@gmail.com" }, "delegate": { "id": 34, "url": "http://patchwork.ozlabs.org/api/users/34/?format=api", "username": "davem", "first_name": "David", "last_name": "Miller", "email": "davem@davemloft.net" }, "mbox": "http://patchwork.ozlabs.org/project/netdev/patch/1504121973-8438-1-git-send-email-f.fainelli@gmail.com/mbox/", "series": [ { "id": 693, "url": "http://patchwork.ozlabs.org/api/series/693/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netdev/list/?series=693", "date": "2017-08-30T19:39:33", "name": "[net] net: dsa: bcm_sf2: Fix number of CFP entries for BCM7278", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/693/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/807870/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/807870/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<netdev-owner@vger.kernel.org>", "X-Original-To": "patchwork-incoming@ozlabs.org", "Delivered-To": "patchwork-incoming@ozlabs.org", "Authentication-Results": [ "ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=netdev-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)", "ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"iPNhi+WI\"; dkim-atps=neutral" ], "Received": [ "from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xjGFX2Yd6z9sP5\n\tfor <patchwork-incoming@ozlabs.org>;\n\tThu, 31 Aug 2017 05:45:36 +1000 (AEST)", "(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1750995AbdH3Tpd (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tWed, 30 Aug 2017 15:45:33 -0400", "from mail-wr0-f195.google.com ([209.85.128.195]:37141 \"EHLO\n\tmail-wr0-f195.google.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1750756AbdH3Tpc (ORCPT\n\t<rfc822;netdev@vger.kernel.org>); Wed, 30 Aug 2017 15:45:32 -0400", "by mail-wr0-f195.google.com with SMTP id k9so1990509wre.4\n\tfor <netdev@vger.kernel.org>; Wed, 30 Aug 2017 12:45:31 -0700 (PDT)", "from stb-bld-04.irv.broadcom.com ([192.19.255.250])\n\tby smtp.gmail.com with ESMTPSA id\n\to191sm4187084wmg.5.2017.08.30.12.45.26\n\t(version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);\n\tWed, 30 Aug 2017 12:45:29 -0700 (PDT)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=gmail.com; s=20161025;\n\th=from:to:cc:subject:date:message-id;\n\tbh=xdu8O/DmTCTRnW8M+O9IbroHzjyvlW1Mhc1gggL75wM=;\n\tb=iPNhi+WIFJ8FOAILcbqec2nACS+dnV7FLdvdSsxYBpxTJdxGEs64lL+Qd/BUcm5y6d\n\t3j8JVbkZr4Az1MRby03+MZi43UVYU9Se6IPTNyZ4QDMlfPyEwEUs7ptUkX74oLQw8Kl/\n\tS8WgYXVE+uFkuqm6BocjblJw1B00Td/w3QYTOPh8CsZDVz0LK8o5RpmivxlUs1xnJ05Z\n\tu1Na+TCyRxwawClE4Iq2v6LjS/i87fPB0jb9wg/lRYUHlNr/3GWHa8fdBr/eDvDoM5sg\n\tcLW8qy9j5v8RG03xyjQHIjmCWiakLrN8qpKNwLEXERa9iyGLHk25LK/psaXjsfADca/u\n\tVk3A==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:from:to:cc:subject:date:message-id;\n\tbh=xdu8O/DmTCTRnW8M+O9IbroHzjyvlW1Mhc1gggL75wM=;\n\tb=AxowIuLy5gCvy4hhX+A4CQeK6ny/PcxKYQo+DnxEW/SDM7z8qapqDkdMp7WLerZjiW\n\taSXSwjluqC1/w1Neamd2SMAv3zlKl/NUfAm+NksjZuJ2BCsTUc+vVEK0c58lswg0wRPF\n\t8NL2Zh+Stl813UvMrDTcDqbtaVibHoLJx0FxOlvZYbmZONGky0BVUvV4tASINXUeRgvC\n\tIh9BcGv+sdpI1wdPXTAwH0SApRpndUBmZrnF7rG9TWSBmnvyuu6KpzQR3/12vZC5v400\n\tzqGk+z7N4F3kVUDRKMY2HiYc9Aj0lZEjiFf/W1LOk4obkOZsBBNJH0TBU8ylSzjqgKs8\n\tgmcw==", "X-Gm-Message-State": "AHYfb5iSviZb+YTzKdh3VhwmzG8GA/OcgWq4Ue6jOtdW5JV50M55fegQ\n\tC/WPVOeRyPEwjL02kSg=", "X-Received": "by 10.223.199.206 with SMTP id y14mr1594449wrg.173.1504122330737;\n\tWed, 30 Aug 2017 12:45:30 -0700 (PDT)", "From": "Florian Fainelli <f.fainelli@gmail.com>", "To": "netdev@vger.kernel.org", "Cc": "davem@davemloft.net, andrew@lunn.ch, vivien.didelot@savoirfairelinux.com,\n\tFlorian Fainelli <f.fainelli@gmail.com>", "Subject": "[PATCH net] net: dsa: bcm_sf2: Fix number of CFP entries for BCM7278", "Date": "Wed, 30 Aug 2017 12:39:33 -0700", "Message-Id": "<1504121973-8438-1-git-send-email-f.fainelli@gmail.com>", "X-Mailer": "git-send-email 1.9.1", "Sender": "netdev-owner@vger.kernel.org", "Precedence": "bulk", "List-ID": "<netdev.vger.kernel.org>", "X-Mailing-List": "netdev@vger.kernel.org" }, "content": "BCM7278 has only 128 entries while BCM7445 has the full 256 entries set,\nfix that.\n\nFixes: 7318166cacad (\"net: dsa: bcm_sf2: Add support for ethtool::rxnfc\")\nSigned-off-by: Florian Fainelli <f.fainelli@gmail.com>\n---\n drivers/net/dsa/bcm_sf2.c | 4 ++++\n drivers/net/dsa/bcm_sf2.h | 1 +\n drivers/net/dsa/bcm_sf2_cfp.c | 8 ++++----\n 3 files changed, 9 insertions(+), 4 deletions(-)", "diff": "diff --git a/drivers/net/dsa/bcm_sf2.c b/drivers/net/dsa/bcm_sf2.c\nindex 00416e9f0196..eb220c8327b5 100644\n--- a/drivers/net/dsa/bcm_sf2.c\n+++ b/drivers/net/dsa/bcm_sf2.c\n@@ -1043,6 +1043,7 @@ struct bcm_sf2_of_data {\n \tu32 type;\n \tconst u16 *reg_offsets;\n \tunsigned int core_reg_align;\n+\tunsigned int num_cfp_rules;\n };\n \n /* Register offsets for the SWITCH_REG_* block */\n@@ -1066,6 +1067,7 @@ struct bcm_sf2_of_data {\n \t.type\t\t= BCM7445_DEVICE_ID,\n \t.core_reg_align\t= 0,\n \t.reg_offsets\t= bcm_sf2_7445_reg_offsets,\n+\t.num_cfp_rules\t= 256,\n };\n \n static const u16 bcm_sf2_7278_reg_offsets[] = {\n@@ -1088,6 +1090,7 @@ struct bcm_sf2_of_data {\n \t.type\t\t= BCM7278_DEVICE_ID,\n \t.core_reg_align\t= 1,\n \t.reg_offsets\t= bcm_sf2_7278_reg_offsets,\n+\t.num_cfp_rules\t= 128,\n };\n \n static const struct of_device_id bcm_sf2_of_match[] = {\n@@ -1144,6 +1147,7 @@ static int bcm_sf2_sw_probe(struct platform_device *pdev)\n \tpriv->type = data->type;\n \tpriv->reg_offsets = data->reg_offsets;\n \tpriv->core_reg_align = data->core_reg_align;\n+\tpriv->num_cfp_rules = data->num_cfp_rules;\n \n \t/* Auto-detection using standard registers will not work, so\n \t * provide an indication of what kind of device we are for\ndiff --git a/drivers/net/dsa/bcm_sf2.h b/drivers/net/dsa/bcm_sf2.h\nindex d9c96b281fc0..02c499f9c56b 100644\n--- a/drivers/net/dsa/bcm_sf2.h\n+++ b/drivers/net/dsa/bcm_sf2.h\n@@ -72,6 +72,7 @@ struct bcm_sf2_priv {\n \tu32 \t\t\t\ttype;\n \tconst u16\t\t\t*reg_offsets;\n \tunsigned int\t\t\tcore_reg_align;\n+\tunsigned int\t\t\tnum_cfp_rules;\n \n \t/* spinlock protecting access to the indirect registers */\n \tspinlock_t\t\t\tindir_lock;\ndiff --git a/drivers/net/dsa/bcm_sf2_cfp.c b/drivers/net/dsa/bcm_sf2_cfp.c\nindex 2fb32d67065f..8a1da7e67707 100644\n--- a/drivers/net/dsa/bcm_sf2_cfp.c\n+++ b/drivers/net/dsa/bcm_sf2_cfp.c\n@@ -98,7 +98,7 @@ static inline void bcm_sf2_cfp_rule_addr_set(struct bcm_sf2_priv *priv,\n {\n \tu32 reg;\n \n-\tWARN_ON(addr >= CFP_NUM_RULES);\n+\tWARN_ON(addr >= priv->num_cfp_rules);\n \n \treg = core_readl(priv, CORE_CFP_ACC);\n \treg &= ~(XCESS_ADDR_MASK << XCESS_ADDR_SHIFT);\n@@ -109,7 +109,7 @@ static inline void bcm_sf2_cfp_rule_addr_set(struct bcm_sf2_priv *priv,\n static inline unsigned int bcm_sf2_cfp_rule_size(struct bcm_sf2_priv *priv)\n {\n \t/* Entry #0 is reserved */\n-\treturn CFP_NUM_RULES - 1;\n+\treturn priv->num_cfp_rules - 1;\n }\n \n static int bcm_sf2_cfp_rule_set(struct dsa_switch *ds, int port,\n@@ -523,7 +523,7 @@ static int bcm_sf2_cfp_rule_get_all(struct bcm_sf2_priv *priv,\n \t\tif (!(reg & OP_STR_DONE))\n \t\t\tbreak;\n \n-\t} while (index < CFP_NUM_RULES);\n+\t} while (index < priv->num_cfp_rules);\n \n \t/* Put the TCAM size here */\n \tnfc->data = bcm_sf2_cfp_rule_size(priv);\n@@ -544,7 +544,7 @@ int bcm_sf2_get_rxnfc(struct dsa_switch *ds, int port,\n \tcase ETHTOOL_GRXCLSRLCNT:\n \t\t/* Subtract the default, unusable rule */\n \t\tnfc->rule_cnt = bitmap_weight(priv->cfp.used,\n-\t\t\t\t\t CFP_NUM_RULES) - 1;\n+\t\t\t\t\t priv->num_cfp_rules) - 1;\n \t\t/* We support specifying rule locations */\n \t\tnfc->data |= RX_CLS_LOC_SPECIAL;\n \t\tbreak;\n", "prefixes": [ "net" ] }