Skip to content

Commit

Permalink
ixp4xx: Break out mv88e6060 DSA switch to package
Browse files Browse the repository at this point in the history
Just one of the devices uses the Marvell MV88E6060 DSA
switch so break this out from the generic kernel config
and into a package selected only by that single device
and probed at boot instead.

The big win is from being able to drop the dsa_core
(~600KB) kernel module out of the common kernel on
devices with no DSA switch.

Signed-off-by: Linus Walleij <[email protected]>
  • Loading branch information
linusw committed Jan 2, 2025
1 parent 804bc79 commit 2456a2f
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 4 deletions.
17 changes: 17 additions & 0 deletions package/kernel/linux/modules/netdevices.mk
Original file line number Diff line number Diff line change
Expand Up @@ -575,6 +575,23 @@ endef

$(eval $(call KernelPackage,dsa-b53-mdio))

define KernelPackage/dsa-mv88e6060
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Marvell MV88E6060 DSA Switch
DEPENDS:=+kmod-dsa +kmod-phy-marvell
KCONFIG:=CONFIG_NET_DSA_TAG_TRAILER \
CONFIG_NET_DSA_MV88E6060
FILES:= \
$(LINUX_DIR)/drivers/net/dsa/mv88e6060.ko \
$(LINUX_DIR)/net/dsa/tag_trailer.ko
AUTOLOAD:=$(call AutoLoad,41,mv88e6060,1)
endef

define KernelPackage/dsa-mv88e6060/description
Kernel modules for MV88E6060 DSA switches
endef

$(eval $(call KernelPackage,dsa-mv88e6060))

define KernelPackage/dsa-tag-dsa
SUBMENU:=$(NETWORK_DEVICES_MENU)
Expand Down
3 changes: 0 additions & 3 deletions target/linux/ixp4xx/config-6.6
Original file line number Diff line number Diff line change
Expand Up @@ -168,9 +168,6 @@ CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_NEED_KUSER_HELPERS=y
CONFIG_NEED_PER_CPU_KM=y
CONFIG_NET_DEVLINK=y
CONFIG_NET_DSA=y
CONFIG_NET_DSA_MV88E6060=y
CONFIG_NET_DSA_TAG_TRAILER=y
CONFIG_NET_EGRESS=y
CONFIG_NET_INGRESS=y
CONFIG_NET_PTP_CLASSIFY=y
Expand Down
2 changes: 1 addition & 1 deletion target/linux/ixp4xx/image/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ define Device/usrobotics_usr8200
DEVICE_VENDOR := USRobotics
DEVICE_MODEL := USR8200
# USB2 is compiled in and needs no package
DEVICE_PACKAGES := ixp4xx-microcode-ethernet kmod-rtc-r7301 kmod-firewire kmod-firewire-ohci
DEVICE_PACKAGES := ixp4xx-microcode-ethernet kmod-rtc-r7301 kmod-firewire kmod-firewire-ohci kmod-dsa-mv88e6060
DEVICE_DTS := intel-ixp42x-usrobotics-usr8200
KERNEL := kernel-bin | append-dtb
IMAGES := kernel.bin rootfs.bin
Expand Down

0 comments on commit 2456a2f

Please sign in to comment.