Skip to content

Commit

Permalink
dsa: Allow core and drivers to be built as modules
Browse files Browse the repository at this point in the history
Change the kconfig types to tristate and adjust the condition for
declaring net_device::dsa_ptr to allow for this.

Adjust the makefile so that if NET_DSA_MV88E6123_61_65=y and
NET_DSA_MV88E6131=m or vice versa then both drivers are built-in.  We
could leave these options as bool and make NET_DSA_MV88E6XXX a
user-selected option, but that would break existing configurations.

Signed-off-by: Ben Hutchings <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
  • Loading branch information
bwhacks authored and davem330 committed Nov 26, 2011
1 parent 3d825ed commit 34a430d
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 8 deletions.
2 changes: 1 addition & 1 deletion include/linux/netdevice.h
Original file line number Diff line number Diff line change
Expand Up @@ -1079,7 +1079,7 @@ struct net_device {
#if defined(CONFIG_VLAN_8021Q) || defined(CONFIG_VLAN_8021Q_MODULE)
struct vlan_group __rcu *vlgrp; /* VLAN group */
#endif
#ifdef CONFIG_NET_DSA
#if IS_ENABLED(CONFIG_NET_DSA)
struct dsa_switch_tree *dsa_ptr; /* dsa specific data */
#endif
void *atalk_ptr; /* AppleTalk link */
Expand Down
10 changes: 5 additions & 5 deletions net/dsa/Kconfig
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
menuconfig NET_DSA
bool "Distributed Switch Architecture support"
tristate "Distributed Switch Architecture support"
default n
depends on EXPERIMENTAL && NETDEVICES && !S390
select PHYLIB
Expand All @@ -26,11 +26,11 @@ config NET_DSA_TAG_TRAILER

# switch drivers
config NET_DSA_MV88E6XXX
bool
tristate
default n

config NET_DSA_MV88E6060
bool "Marvell 88E6060 ethernet switch chip support"
tristate "Marvell 88E6060 ethernet switch chip support"
select NET_DSA_TAG_TRAILER
---help---
This enables support for the Marvell 88E6060 ethernet switch
Expand All @@ -41,7 +41,7 @@ config NET_DSA_MV88E6XXX_NEED_PPU
default n

config NET_DSA_MV88E6131
bool "Marvell 88E6085/6095/6095F/6131 ethernet switch chip support"
tristate "Marvell 88E6085/6095/6095F/6131 ethernet switch chip support"
select NET_DSA_MV88E6XXX
select NET_DSA_MV88E6XXX_NEED_PPU
select NET_DSA_TAG_DSA
Expand All @@ -50,7 +50,7 @@ config NET_DSA_MV88E6131
ethernet switch chips.

config NET_DSA_MV88E6123_61_65
bool "Marvell 88E6123/6161/6165 ethernet switch chip support"
tristate "Marvell 88E6123/6161/6165 ethernet switch chip support"
select NET_DSA_MV88E6XXX
select NET_DSA_TAG_EDSA
---help---
Expand Down
8 changes: 6 additions & 2 deletions net/dsa/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,9 @@ dsa_core-$(CONFIG_NET_DSA_TAG_TRAILER) += tag_trailer.o
obj-$(CONFIG_NET_DSA_MV88E6060) += mv88e6060.o
obj-$(CONFIG_NET_DSA_MV88E6XXX) += mv88e6xxx_drv.o
mv88e6xxx_drv-y += mv88e6xxx.o
mv88e6xxx_drv-$(CONFIG_NET_DSA_MV88E6123_61_65) += mv88e6123_61_65.o
mv88e6xxx_drv-$(CONFIG_NET_DSA_MV88E6131) += mv88e6131.o
ifdef CONFIG_NET_DSA_MV88E6123_61_65
mv88e6xxx_drv-y += mv88e6123_61_65.o
endif
ifdef CONFIG_NET_DSA_MV88E6131
mv88e6xxx_drv-y += mv88e6131.o
endif

0 comments on commit 34a430d

Please sign in to comment.