From: Grygorii Strashko <grygorii.strashko@ti.com> To: "David S. Miller" <davem@davemloft.net>, <netdev@vger.kernel.org> Cc: Sekhar Nori <nsekhar@ti.com>, <linux-kernel@vger.kernel.org>, <linux-omap@vger.kernel.org>, Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org>, Grygorii Strashko <grygorii.strashko@ti.com> Subject: [PATCH net-next] net: ethernet: ti: cpsw: drop vid0 configuration in dual_mac mode Date: Sun, 25 Nov 2018 17:46:26 -0600 [thread overview] Message-ID: <20181125234626.28474-1-grygorii.strashko@ti.com> (raw) In dual_mac mode CPSW driver uses vid1 and vid2 by default to implement dual mac mode wich are used to configure pvids for each external ports. But, historicaly, it also adds vid0 to ALE table and sets "untag" bits for both ext. ports. As result, it's imposible to use priority tagged packets in dual mac mode. Hence, drop vid0 configuration in dual mac mode as it's not required for dual mac mode functionality and, this way, make it possible to use priority tagged packet in dual mac mode. Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com> --- drivers/net/ethernet/ti/cpsw.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/net/ethernet/ti/cpsw.c b/drivers/net/ethernet/ti/cpsw.c index 15d563c..4f3a159 100644 --- a/drivers/net/ethernet/ti/cpsw.c +++ b/drivers/net/ethernet/ti/cpsw.c @@ -2036,9 +2036,6 @@ static int cpsw_ndo_open(struct net_device *ndev) /* Add default VLAN */ if (!cpsw->data.dual_emac) cpsw_add_default_vlan(priv); - else - cpsw_ale_add_vlan(cpsw->ale, cpsw->data.default_vlan, - ALE_ALL_PORTS, ALE_ALL_PORTS, 0, 0); /* initialize shared resources for every ndev */ if (!cpsw->usage_count) { @@ -2490,7 +2487,7 @@ static int cpsw_ndo_vlan_rx_add_vid(struct net_device *ndev, struct cpsw_common *cpsw = priv->cpsw; int ret; - if (vid == cpsw->data.default_vlan) + if (!cpsw->data.dual_emac && vid == cpsw->data.default_vlan) return 0; ret = pm_runtime_get_sync(cpsw->dev); @@ -2528,7 +2525,7 @@ static int cpsw_ndo_vlan_rx_kill_vid(struct net_device *ndev, struct cpsw_common *cpsw = priv->cpsw; int ret; - if (vid == cpsw->data.default_vlan) + if (!cpsw->data.dual_emac && vid == cpsw->data.default_vlan) return 0; ret = pm_runtime_get_sync(cpsw->dev); -- 2.10.5
WARNING: multiple messages have this Message-ID (diff)
From: Grygorii Strashko <grygorii.strashko@ti.com> To: "David S. Miller" <davem@davemloft.net>, netdev@vger.kernel.org Cc: Sekhar Nori <nsekhar@ti.com>, linux-kernel@vger.kernel.org, linux-omap@vger.kernel.org, Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org>, Grygorii Strashko <grygorii.strashko@ti.com> Subject: [PATCH net-next] net: ethernet: ti: cpsw: drop vid0 configuration in dual_mac mode Date: Sun, 25 Nov 2018 17:46:26 -0600 [thread overview] Message-ID: <20181125234626.28474-1-grygorii.strashko@ti.com> (raw) In dual_mac mode CPSW driver uses vid1 and vid2 by default to implement dual mac mode wich are used to configure pvids for each external ports. But, historicaly, it also adds vid0 to ALE table and sets "untag" bits for both ext. ports. As result, it's imposible to use priority tagged packets in dual mac mode. Hence, drop vid0 configuration in dual mac mode as it's not required for dual mac mode functionality and, this way, make it possible to use priority tagged packet in dual mac mode. Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com> --- drivers/net/ethernet/ti/cpsw.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/net/ethernet/ti/cpsw.c b/drivers/net/ethernet/ti/cpsw.c index 15d563c..4f3a159 100644 --- a/drivers/net/ethernet/ti/cpsw.c +++ b/drivers/net/ethernet/ti/cpsw.c @@ -2036,9 +2036,6 @@ static int cpsw_ndo_open(struct net_device *ndev) /* Add default VLAN */ if (!cpsw->data.dual_emac) cpsw_add_default_vlan(priv); - else - cpsw_ale_add_vlan(cpsw->ale, cpsw->data.default_vlan, - ALE_ALL_PORTS, ALE_ALL_PORTS, 0, 0); /* initialize shared resources for every ndev */ if (!cpsw->usage_count) { @@ -2490,7 +2487,7 @@ static int cpsw_ndo_vlan_rx_add_vid(struct net_device *ndev, struct cpsw_common *cpsw = priv->cpsw; int ret; - if (vid == cpsw->data.default_vlan) + if (!cpsw->data.dual_emac && vid == cpsw->data.default_vlan) return 0; ret = pm_runtime_get_sync(cpsw->dev); @@ -2528,7 +2525,7 @@ static int cpsw_ndo_vlan_rx_kill_vid(struct net_device *ndev, struct cpsw_common *cpsw = priv->cpsw; int ret; - if (vid == cpsw->data.default_vlan) + if (!cpsw->data.dual_emac && vid == cpsw->data.default_vlan) return 0; ret = pm_runtime_get_sync(cpsw->dev); -- 2.10.5
next reply other threads:[~2018-11-25 23:46 UTC|newest] Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-11-25 23:46 Grygorii Strashko [this message] 2018-11-25 23:46 ` [PATCH net-next] net: ethernet: ti: cpsw: drop vid0 configuration in dual_mac mode Grygorii Strashko 2018-11-26 16:26 ` [PATCH net-next] net: ethernet: ti: cpsw: drop vid0 configuration in dual_mac modey Ivan Khoronzhuk 2018-11-26 18:57 ` Grygorii Strashko 2018-11-26 18:57 ` Grygorii Strashko 2018-11-26 20:07 ` Ivan Khoronzhuk 2018-11-27 1:08 ` Grygorii Strashko 2018-11-27 1:08 ` Grygorii Strashko 2018-11-28 21:15 ` Grygorii Strashko 2018-11-28 21:15 ` Grygorii Strashko 2018-11-29 15:26 ` Ivan Khoronzhuk 2018-11-29 23:23 ` Grygorii Strashko 2018-11-29 23:23 ` Grygorii Strashko 2018-11-30 13:42 ` Ivan Khoronzhuk 2018-11-30 13:55 ` Ivan Khoronzhuk
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20181125234626.28474-1-grygorii.strashko@ti.com \ --to=grygorii.strashko@ti.com \ --cc=davem@davemloft.net \ --cc=ivan.khoronzhuk@linaro.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-omap@vger.kernel.org \ --cc=netdev@vger.kernel.org \ --cc=nsekhar@ti.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.