From: Florian Fainelli <f.fainelli@gmail.com>
To: netdev@vger.kernel.org
Cc: andrew@lunn.ch, vivien.didelot@savoirfairelinux.com,
davem@davemloft.net, Florian Fainelli <f.fainelli@gmail.com>
Subject: [PATCH net-next v2 10/12] net: dsa: b53: Export b53_imp_vlan_setup()
Date: Mon, 18 Sep 2017 19:19:45 -0700 [thread overview]
Message-ID: <20170919021947.8971-11-f.fainelli@gmail.com> (raw)
In-Reply-To: <20170919021947.8971-1-f.fainelli@gmail.com>
bcm_sf2 and b53 do exactly the same thing, so share that piece.
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
---
drivers/net/dsa/b53/b53_common.c | 3 ++-
drivers/net/dsa/b53/b53_priv.h | 1 +
drivers/net/dsa/bcm_sf2.c | 23 +----------------------
3 files changed, 4 insertions(+), 23 deletions(-)
diff --git a/drivers/net/dsa/b53/b53_common.c b/drivers/net/dsa/b53/b53_common.c
index 4e37ec27e496..c3f1cd2c33ea 100644
--- a/drivers/net/dsa/b53/b53_common.c
+++ b/drivers/net/dsa/b53/b53_common.c
@@ -484,7 +484,7 @@ static int b53_fast_age_vlan(struct b53_device *dev, u16 vid)
return b53_flush_arl(dev, FAST_AGE_VLAN);
}
-static void b53_imp_vlan_setup(struct dsa_switch *ds, int cpu_port)
+void b53_imp_vlan_setup(struct dsa_switch *ds, int cpu_port)
{
struct b53_device *dev = ds->priv;
unsigned int i;
@@ -500,6 +500,7 @@ static void b53_imp_vlan_setup(struct dsa_switch *ds, int cpu_port)
b53_write16(dev, B53_PVLAN_PAGE, B53_PVLAN_PORT_MASK(i), pvlan);
}
}
+EXPORT_SYMBOL(b53_imp_vlan_setup);
static int b53_enable_port(struct dsa_switch *ds, int port,
struct phy_device *phy)
diff --git a/drivers/net/dsa/b53/b53_priv.h b/drivers/net/dsa/b53/b53_priv.h
index 0ed59672ef07..df8bea4105e4 100644
--- a/drivers/net/dsa/b53/b53_priv.h
+++ b/drivers/net/dsa/b53/b53_priv.h
@@ -284,6 +284,7 @@ static inline int b53_switch_get_reset_gpio(struct b53_device *dev)
#endif
/* Exported functions towards other drivers */
+void b53_imp_vlan_setup(struct dsa_switch *ds, int cpu_port);
void b53_get_strings(struct dsa_switch *ds, int port, uint8_t *data);
void b53_get_ethtool_stats(struct dsa_switch *ds, int port, uint64_t *data);
int b53_get_sset_count(struct dsa_switch *ds);
diff --git a/drivers/net/dsa/bcm_sf2.c b/drivers/net/dsa/bcm_sf2.c
index 4e8ef4c07eab..08639674947a 100644
--- a/drivers/net/dsa/bcm_sf2.c
+++ b/drivers/net/dsa/bcm_sf2.c
@@ -40,27 +40,6 @@ static enum dsa_tag_protocol bcm_sf2_sw_get_tag_protocol(struct dsa_switch *ds)
return DSA_TAG_PROTO_BRCM;
}
-static void bcm_sf2_imp_vlan_setup(struct dsa_switch *ds, int cpu_port)
-{
- struct bcm_sf2_priv *priv = bcm_sf2_to_priv(ds);
- unsigned int i;
- u32 reg;
-
- /* Enable the IMP Port to be in the same VLAN as the other ports
- * on a per-port basis such that we only have Port i and IMP in
- * the same VLAN.
- */
- for (i = 0; i < priv->hw_params.num_ports; i++) {
- if (!((1 << i) & ds->enabled_port_mask))
- continue;
-
- reg = core_readl(priv, CORE_PORT_VLAN_CTL_PORT(i));
- reg |= (1 << cpu_port);
- core_writel(priv, reg, CORE_PORT_VLAN_CTL_PORT(i));
- }
-}
-
-
static void bcm_sf2_imp_setup(struct dsa_switch *ds, int port)
{
struct bcm_sf2_priv *priv = bcm_sf2_to_priv(ds);
@@ -240,7 +219,7 @@ static int bcm_sf2_port_setup(struct dsa_switch *ds, int port,
reg |= priv->dev->ports[port].vlan_ctl_mask;
core_writel(priv, reg, CORE_PORT_VLAN_CTL_PORT(port));
- bcm_sf2_imp_vlan_setup(ds, cpu_port);
+ b53_imp_vlan_setup(ds, cpu_port);
/* If EEE was enabled, restore it */
if (priv->dev->ports[port].eee.eee_enabled)
--
2.9.3
next prev parent reply other threads:[~2017-09-19 2:26 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-19 2:19 [PATCH net-next v2 00/12] net: dsa: b53/bcm_sf2 cleanups Florian Fainelli
2017-09-19 2:19 ` [PATCH net-next v2 01/12] net: dsa: b53: Remove is_cpu_port() Florian Fainelli
2017-09-19 2:19 ` [PATCH net-next v2 02/12] net: dsa: b53: Make b53_enable_cpu_port() take a port argument Florian Fainelli
2017-09-19 2:19 ` [PATCH net-next v2 03/12] net: dsa: b53: Defer port enabling to calling port_enable Florian Fainelli
2017-09-19 2:19 ` [PATCH net-next v2 04/12] net: dsa: bcm_sf2: " Florian Fainelli
2017-09-19 2:19 ` [PATCH net-next v2 05/12] net: dsa: b53: Use a macro to define I/O operations Florian Fainelli
2017-09-19 2:19 ` [PATCH net-next v2 06/12] net: dsa: b53: Move Broadcom header setup to b53 Florian Fainelli
2017-09-19 2:19 ` [PATCH net-next v2 07/12] net: dsa: b53: Define EEE register page Florian Fainelli
2017-09-19 2:19 ` [PATCH net-next v2 08/12] net: dsa: b53: Move EEE functions to b53 Florian Fainelli
2017-09-19 14:34 ` Vivien Didelot
2017-09-19 2:19 ` [PATCH net-next v2 09/12] net: dsa: b53: Wire-up EEE Florian Fainelli
2017-09-19 14:37 ` Vivien Didelot
2017-09-19 2:19 ` Florian Fainelli [this message]
2017-09-19 14:41 ` [PATCH net-next v2 10/12] net: dsa: b53: Export b53_imp_vlan_setup() Vivien Didelot
2017-09-19 2:19 ` [PATCH net-next v2 11/12] net: dsa: bcm_sf2: Use SF2_NUM_EGRESS_QUEUES for CFP Florian Fainelli
2017-09-19 14:42 ` Vivien Didelot
2017-09-19 2:19 ` [PATCH net-next v2 12/12] net: dsa: bcm_sf2: Utilize b53_{enable,disable}_port Florian Fainelli
2017-09-19 14:45 ` Vivien Didelot
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=20170919021947.8971-11-f.fainelli@gmail.com \
--to=f.fainelli@gmail.com \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=netdev@vger.kernel.org \
--cc=vivien.didelot@savoirfairelinux.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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).