mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-16 06:41:39 -04:00
dpaa2: avoid linking objects into multiple modules
Each object file contains information about which module it gets linked into, so linking the same file into multiple modules now causes a warning: scripts/Makefile.build:254: drivers/net/ethernet/freescale/dpaa2/Makefile: dpaa2-mac.o is added to multiple modules: fsl-dpaa2-eth fsl-dpaa2-switch scripts/Makefile.build:254: drivers/net/ethernet/freescale/dpaa2/Makefile: dpmac.o is added to multiple modules: fsl-dpaa2-eth fsl-dpaa2-switch Change the way that dpaa2 is built by moving the two common files into a separate module with exported symbols instead. Tested-by: Ioana Ciornei <ioana.ciornei@nxp.com> Reviewed-by: Ioana Ciornei <ioana.ciornei@nxp.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Link: https://patch.msgid.link/20260402184726.3746487-3-arnd@kernel.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
committed by
Jakub Kicinski
parent
df75bd552a
commit
ede3136e56
@@ -3,15 +3,16 @@
|
||||
# Makefile for the Freescale DPAA2 Ethernet controller
|
||||
#
|
||||
|
||||
obj-$(CONFIG_FSL_DPAA2_ETH) += fsl-dpaa2-eth.o
|
||||
obj-$(CONFIG_FSL_DPAA2_ETH) += fsl-dpaa2-eth.o fsl-dpaa2-mac.o
|
||||
obj-$(CONFIG_FSL_DPAA2_PTP_CLOCK) += fsl-dpaa2-ptp.o
|
||||
obj-$(CONFIG_FSL_DPAA2_SWITCH) += fsl-dpaa2-switch.o
|
||||
obj-$(CONFIG_FSL_DPAA2_SWITCH) += fsl-dpaa2-switch.o fsl-dpaa2-mac.o
|
||||
|
||||
fsl-dpaa2-eth-objs := dpaa2-eth.o dpaa2-ethtool.o dpni.o dpaa2-mac.o dpmac.o dpaa2-eth-devlink.o dpaa2-xsk.o
|
||||
fsl-dpaa2-eth-objs := dpaa2-eth.o dpaa2-ethtool.o dpni.o dpaa2-eth-devlink.o dpaa2-xsk.o
|
||||
fsl-dpaa2-eth-${CONFIG_FSL_DPAA2_ETH_DCB} += dpaa2-eth-dcb.o
|
||||
fsl-dpaa2-eth-${CONFIG_DEBUG_FS} += dpaa2-eth-debugfs.o
|
||||
fsl-dpaa2-ptp-objs := dpaa2-ptp.o dprtc.o
|
||||
fsl-dpaa2-switch-objs := dpaa2-switch.o dpaa2-switch-ethtool.o dpsw.o dpaa2-switch-flower.o dpaa2-mac.o dpmac.o
|
||||
fsl-dpaa2-switch-objs := dpaa2-switch.o dpaa2-switch-ethtool.o dpsw.o dpaa2-switch-flower.o
|
||||
fsl-dpaa2-mac-objs += dpaa2-mac.o dpmac.o
|
||||
|
||||
# Needed by the tracing framework
|
||||
CFLAGS_dpaa2-eth.o := -I$(src)
|
||||
|
||||
@@ -544,6 +544,7 @@ void dpaa2_mac_start(struct dpaa2_mac *mac)
|
||||
|
||||
phylink_start(mac->phylink);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dpaa2_mac_start);
|
||||
|
||||
void dpaa2_mac_stop(struct dpaa2_mac *mac)
|
||||
{
|
||||
@@ -554,6 +555,7 @@ void dpaa2_mac_stop(struct dpaa2_mac *mac)
|
||||
if (mac->serdes_phy)
|
||||
phy_power_off(mac->serdes_phy);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dpaa2_mac_stop);
|
||||
|
||||
int dpaa2_mac_connect(struct dpaa2_mac *mac)
|
||||
{
|
||||
@@ -646,6 +648,7 @@ int dpaa2_mac_connect(struct dpaa2_mac *mac)
|
||||
|
||||
return err;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dpaa2_mac_connect);
|
||||
|
||||
void dpaa2_mac_disconnect(struct dpaa2_mac *mac)
|
||||
{
|
||||
@@ -658,6 +661,7 @@ void dpaa2_mac_disconnect(struct dpaa2_mac *mac)
|
||||
of_phy_put(mac->serdes_phy);
|
||||
mac->serdes_phy = NULL;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dpaa2_mac_disconnect);
|
||||
|
||||
int dpaa2_mac_open(struct dpaa2_mac *mac)
|
||||
{
|
||||
@@ -729,6 +733,7 @@ int dpaa2_mac_open(struct dpaa2_mac *mac)
|
||||
dpmac_close(mac->mc_io, 0, dpmac_dev->mc_handle);
|
||||
return err;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dpaa2_mac_open);
|
||||
|
||||
void dpaa2_mac_close(struct dpaa2_mac *mac)
|
||||
{
|
||||
@@ -753,6 +758,7 @@ void dpaa2_mac_close(struct dpaa2_mac *mac)
|
||||
if (mac->fw_node)
|
||||
fwnode_handle_put(mac->fw_node);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dpaa2_mac_close);
|
||||
|
||||
static void dpaa2_mac_transfer_stats(const struct dpmac_counter *counters,
|
||||
size_t num_counters, void *s,
|
||||
@@ -824,6 +830,7 @@ void dpaa2_mac_get_rmon_stats(struct dpaa2_mac *mac,
|
||||
|
||||
*ranges = dpaa2_mac_rmon_ranges;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dpaa2_mac_get_rmon_stats);
|
||||
|
||||
void dpaa2_mac_get_pause_stats(struct dpaa2_mac *mac,
|
||||
struct ethtool_pause_stats *s)
|
||||
@@ -835,6 +842,7 @@ void dpaa2_mac_get_pause_stats(struct dpaa2_mac *mac,
|
||||
DPAA2_MAC_NUM_PAUSE_STATS,
|
||||
dpaa2_mac_pause_stats, s);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dpaa2_mac_get_pause_stats);
|
||||
|
||||
void dpaa2_mac_get_ctrl_stats(struct dpaa2_mac *mac,
|
||||
struct ethtool_eth_ctrl_stats *s)
|
||||
@@ -846,6 +854,7 @@ void dpaa2_mac_get_ctrl_stats(struct dpaa2_mac *mac,
|
||||
DPAA2_MAC_NUM_ETH_CTRL_STATS,
|
||||
dpaa2_mac_eth_ctrl_stats, s);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dpaa2_mac_get_ctrl_stats);
|
||||
|
||||
void dpaa2_mac_get_eth_mac_stats(struct dpaa2_mac *mac,
|
||||
struct ethtool_eth_mac_stats *s)
|
||||
@@ -857,11 +866,13 @@ void dpaa2_mac_get_eth_mac_stats(struct dpaa2_mac *mac,
|
||||
DPAA2_MAC_NUM_ETH_MAC_STATS,
|
||||
dpaa2_mac_eth_mac_stats, s);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dpaa2_mac_get_eth_mac_stats);
|
||||
|
||||
int dpaa2_mac_get_sset_count(void)
|
||||
{
|
||||
return DPAA2_MAC_NUM_ETHTOOL_STATS;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dpaa2_mac_get_sset_count);
|
||||
|
||||
void dpaa2_mac_get_strings(u8 **data)
|
||||
{
|
||||
@@ -870,6 +881,7 @@ void dpaa2_mac_get_strings(u8 **data)
|
||||
for (i = 0; i < DPAA2_MAC_NUM_ETHTOOL_STATS; i++)
|
||||
ethtool_puts(data, dpaa2_mac_ethtool_stats[i].name);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dpaa2_mac_get_strings);
|
||||
|
||||
void dpaa2_mac_get_ethtool_stats(struct dpaa2_mac *mac, u64 *data)
|
||||
{
|
||||
@@ -921,3 +933,7 @@ void dpaa2_mac_get_ethtool_stats(struct dpaa2_mac *mac, u64 *data)
|
||||
*(data + i) = value;
|
||||
}
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dpaa2_mac_get_ethtool_stats);
|
||||
|
||||
MODULE_LICENSE("GPL");
|
||||
MODULE_DESCRIPTION("DPAA2 Ethernet MAC library");
|
||||
|
||||
Reference in New Issue
Block a user