summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/freescale
diff options
context:
space:
mode:
authorIoana Ciornei <ioana.ciornei@nxp.com>2021-03-22 23:58:54 +0300
committerDavid S. Miller <davem@davemloft.net>2021-03-23 02:37:44 +0300
commitc7e856c85981722013cbdfa8f5324c2ad8c803f4 (patch)
tree488020809cb292f67dff77711225d0ad2cae9ae1 /drivers/net/ethernet/freescale
parent3adffc762d5fa8f7d0087819839305a6fba68ced (diff)
downloadlinux-c7e856c85981722013cbdfa8f5324c2ad8c803f4.tar.xz
dpaa2-switch: move the dpaa2_switch_fdb_set_egress_flood function
In order to avoid a forward declaration in the next patches, move the dpaa2_switch_fdb_set_egress_flood() function to the top of the file. Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/freescale')
-rw-r--r--drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c84
1 files changed, 42 insertions, 42 deletions
diff --git a/drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c b/drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
index 2fd05dd18d46..5254eae5c86a 100644
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-switch.c
@@ -110,6 +110,48 @@ static u16 dpaa2_switch_port_set_fdb(struct ethsw_port_priv *port_priv,
return 0;
}
+static int dpaa2_switch_fdb_set_egress_flood(struct ethsw_core *ethsw, u16 fdb_id)
+{
+ struct dpsw_egress_flood_cfg flood_cfg;
+ int i = 0, j;
+ int err;
+
+ /* Add all the DPAA2 switch ports found in the same bridging domain to
+ * the egress flooding domain
+ */
+ for (j = 0; j < ethsw->sw_attr.num_ifs; j++)
+ if (ethsw->ports[j] && ethsw->ports[j]->fdb->fdb_id == fdb_id)
+ flood_cfg.if_id[i++] = ethsw->ports[j]->idx;
+
+ /* Add the CTRL interface to the egress flooding domain */
+ flood_cfg.if_id[i++] = ethsw->sw_attr.num_ifs;
+
+ /* Use the FDB of the first dpaa2 switch port added to the bridge */
+ flood_cfg.fdb_id = fdb_id;
+
+ /* Setup broadcast flooding domain */
+ flood_cfg.flood_type = DPSW_BROADCAST;
+ flood_cfg.num_ifs = i;
+ err = dpsw_set_egress_flood(ethsw->mc_io, 0, ethsw->dpsw_handle,
+ &flood_cfg);
+ if (err) {
+ dev_err(ethsw->dev, "dpsw_set_egress_flood() = %d\n", err);
+ return err;
+ }
+
+ /* Setup unknown flooding domain */
+ flood_cfg.flood_type = DPSW_FLOODING;
+ flood_cfg.num_ifs = i;
+ err = dpsw_set_egress_flood(ethsw->mc_io, 0, ethsw->dpsw_handle,
+ &flood_cfg);
+ if (err) {
+ dev_err(ethsw->dev, "dpsw_set_egress_flood() = %d\n", err);
+ return err;
+ }
+
+ return 0;
+}
+
static void *dpaa2_iova_to_virt(struct iommu_domain *domain,
dma_addr_t iova_addr)
{
@@ -1442,48 +1484,6 @@ static int dpaa2_switch_port_attr_set_event(struct net_device *netdev,
return notifier_from_errno(err);
}
-static int dpaa2_switch_fdb_set_egress_flood(struct ethsw_core *ethsw, u16 fdb_id)
-{
- struct dpsw_egress_flood_cfg flood_cfg;
- int i = 0, j;
- int err;
-
- /* Add all the DPAA2 switch ports found in the same bridging domain to
- * the egress flooding domain
- */
- for (j = 0; j < ethsw->sw_attr.num_ifs; j++)
- if (ethsw->ports[j] && ethsw->ports[j]->fdb->fdb_id == fdb_id)
- flood_cfg.if_id[i++] = ethsw->ports[j]->idx;
-
- /* Add the CTRL interface to the egress flooding domain */
- flood_cfg.if_id[i++] = ethsw->sw_attr.num_ifs;
-
- /* Use the FDB of the first dpaa2 switch port added to the bridge */
- flood_cfg.fdb_id = fdb_id;
-
- /* Setup broadcast flooding domain */
- flood_cfg.flood_type = DPSW_BROADCAST;
- flood_cfg.num_ifs = i;
- err = dpsw_set_egress_flood(ethsw->mc_io, 0, ethsw->dpsw_handle,
- &flood_cfg);
- if (err) {
- dev_err(ethsw->dev, "dpsw_set_egress_flood() = %d\n", err);
- return err;
- }
-
- /* Setup unknown flooding domain */
- flood_cfg.flood_type = DPSW_FLOODING;
- flood_cfg.num_ifs = i;
- err = dpsw_set_egress_flood(ethsw->mc_io, 0, ethsw->dpsw_handle,
- &flood_cfg);
- if (err) {
- dev_err(ethsw->dev, "dpsw_set_egress_flood() = %d\n", err);
- return err;
- }
-
- return 0;
-}
-
static int dpaa2_switch_port_bridge_join(struct net_device *netdev,
struct net_device *upper_dev)
{