diff options
author | Grygorii Strashko <grygorii.strashko@ti.com> | 2019-11-20 01:19:16 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-11-20 22:25:23 +0300 |
commit | 51a9533797b07b44374346fbd36ae0aa4f36ccd3 (patch) | |
tree | 9291d881fa80ebeaa901594249bc5756a5daa0e7 /drivers/net/ethernet/ti/cpsw_priv.c | |
parent | e85c14370783bf9339a95cab9da0fa54dc770a72 (diff) | |
download | linux-51a9533797b07b44374346fbd36ae0aa4f36ccd3.tar.xz |
net: ethernet: ti: cpsw: resolve build deps of cpsw drivers
A following patches introduce new CPSW switchdev driver which uses common
code with legacy CPSW driver. This will introduce build dependency between
CPSW switchdev and CPSW legacy drivers related to for_each_slave() and
cpsw_slave_index() - they can be compiled both, but only one of them will
be not functional depending in Kconfig settings due to duffrences in Slave
Ports indexes calculation.
To fix this make for_each_slave() local (it's used now only by legacy CPSW
driver) and convert cpsw_slave_index() to be a function pointer which is
assigned in probe. Driver to probe is defined by DT.
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/ti/cpsw_priv.c')
-rw-r--r-- | drivers/net/ethernet/ti/cpsw_priv.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/ti/cpsw_priv.c b/drivers/net/ethernet/ti/cpsw_priv.c index 476d050a022c..a1c83af64835 100644 --- a/drivers/net/ethernet/ti/cpsw_priv.c +++ b/drivers/net/ethernet/ti/cpsw_priv.c @@ -19,6 +19,8 @@ #include "cpsw_sl.h" #include "davinci_cpdma.h" +int (*cpsw_slave_index)(struct cpsw_common *cpsw, struct cpsw_priv *priv); + int cpsw_init_common(struct cpsw_common *cpsw, void __iomem *ss_regs, int ale_ageout, phys_addr_t desc_mem_phys, int descs_pool_size) |