From 7d21642ce03306e953707154ebbf122215f40b0c Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Fri, 10 Sep 2021 23:02:15 +0100 Subject: [PATCH] sunxi: bring up DSA b53 switch on Lamobo R1 Build cortexa7 subtarget with DSA driver for MDIO-connected Broadcom BCM53xxx switches. This is needed for the Lamobo R1 aka. BananaPi BPi-R1 board which comes with such a switch IC. Remove old swconfig driver from target kernel config as the only board using it is now supported by the DSA driver. No changes to device tree are needed as upstream DTS already got a DSA switch definition and we are just using that upstream source. Update default network config of the Lamobo R1 to create lan bridge with all 4 lan ports. Introduce DEVICE_COMPAT_VERSION for the board to inform users about having the re-create their network configuration and add device alias as Bananapi BPi-R1 while at it. Signed-off-by: Daniel Golle --- .../base-files/lib/preinit/03_b53_hack.sh | 16 ---- target/linux/sunxi/config-5.4 | 4 - target/linux/sunxi/cortexa7/config-5.4 | 12 +++ target/linux/sunxi/image/cortexa7.mk | 4 +- ...un7i-Add-BCM53125-switch-nodes-to-th.patch | 86 ------------------- 5 files changed, 15 insertions(+), 107 deletions(-) delete mode 100644 target/linux/sunxi/base-files/lib/preinit/03_b53_hack.sh delete mode 100644 target/linux/sunxi/patches-5.4/310-Revert-ARM-dts-sun7i-Add-BCM53125-switch-nodes-to-th.patch diff --git a/target/linux/sunxi/base-files/lib/preinit/03_b53_hack.sh b/target/linux/sunxi/base-files/lib/preinit/03_b53_hack.sh deleted file mode 100644 index cc0c67acc7..0000000000 --- a/target/linux/sunxi/base-files/lib/preinit/03_b53_hack.sh +++ /dev/null @@ -1,16 +0,0 @@ -do_b53_hack() { - . /lib/functions.sh - - # hack: enable switch on Lamobo R1 and reset counters - case $(board_name) in - lamobo,lamobo-r1) - ip link set eth0 up - sleep 1 - swconfig dev switch0 set reset 1 - swconfig dev switch0 set reset_mib 1 - swconfig dev switch0 set apply 1 - ;; - esac -} - -boot_hook_add preinit_main do_b53_hack diff --git a/target/linux/sunxi/config-5.4 b/target/linux/sunxi/config-5.4 index 33e74cbb9d..c9f4a3860a 100644 --- a/target/linux/sunxi/config-5.4 +++ b/target/linux/sunxi/config-5.4 @@ -527,10 +527,6 @@ CONFIG_SUNXI_SRAM=y CONFIG_SUNXI_WATCHDOG=y CONFIG_SUSPEND=y CONFIG_SUSPEND_FREEZER=y -CONFIG_SWCONFIG=y -CONFIG_SWCONFIG_B53=y -CONFIG_SWCONFIG_B53_PHY_DRIVER=y -CONFIG_SWCONFIG_B53_PHY_FIXUP=y CONFIG_SWIOTLB=y CONFIG_SWPHY=y CONFIG_SWP_EMULATE=y diff --git a/target/linux/sunxi/cortexa7/config-5.4 b/target/linux/sunxi/cortexa7/config-5.4 index 1476c89e51..f0ae54d699 100644 --- a/target/linux/sunxi/cortexa7/config-5.4 +++ b/target/linux/sunxi/cortexa7/config-5.4 @@ -24,3 +24,15 @@ CONFIG_USB_MUSB_HDRC=y # CONFIG_USB_MUSB_HOST is not set CONFIG_USB_MUSB_SUNXI=y CONFIG_USB_PHY=y +CONFIG_NET_DEVLINK=y +CONFIG_NET_DSA=y +CONFIG_NET_DSA_TAG_BRCM=y +CONFIG_NET_DSA_TAG_BRCM_COMMON=y +CONFIG_NET_DSA_TAG_BRCM_PREPEND=y +CONFIG_NET_SWITCHDEV=y +CONFIG_B53=y +CONFIG_B53_MDIO_DRIVER=y +# CONFIG_B53_MMAP_DRIVER is not set +# CONFIG_B53_SERDES is not set +# CONFIG_B53_SPI_DRIVER is not set +# CONFIG_B53_SRAB_DRIVER is not set diff --git a/target/linux/sunxi/image/cortexa7.mk b/target/linux/sunxi/image/cortexa7.mk index 9d07670d16..56c50c9b7c 100644 --- a/target/linux/sunxi/image/cortexa7.mk +++ b/target/linux/sunxi/image/cortexa7.mk @@ -63,7 +63,9 @@ TARGET_DEVICES += friendlyarm_zeropi define Device/lamobo_lamobo-r1 DEVICE_VENDOR := Lamobo DEVICE_MODEL := Lamobo R1 - DEVICE_PACKAGES:=kmod-ata-sunxi kmod-rtl8192cu swconfig wpad-basic-wolfssl + DEVICE_ALT0_VENDOR := Bananapi + DEVICE_ALT0_MODEL := BPi-R1 + DEVICE_PACKAGES := kmod-ata-sunxi kmod-rtl8192cu wpad-basic-wolfssl SOC := sun7i-a20 endef TARGET_DEVICES += lamobo_lamobo-r1 diff --git a/target/linux/sunxi/patches-5.4/310-Revert-ARM-dts-sun7i-Add-BCM53125-switch-nodes-to-th.patch b/target/linux/sunxi/patches-5.4/310-Revert-ARM-dts-sun7i-Add-BCM53125-switch-nodes-to-th.patch deleted file mode 100644 index 79c1671de1..0000000000 --- a/target/linux/sunxi/patches-5.4/310-Revert-ARM-dts-sun7i-Add-BCM53125-switch-nodes-to-th.patch +++ /dev/null @@ -1,86 +0,0 @@ -From 49cd9ea6dc8d68eb519ccd9f31c9730dec8a181a Mon Sep 17 00:00:00 2001 -From: Hauke Mehrtens -Date: Thu, 8 Mar 2018 22:14:50 +0100 -Subject: [PATCH] Revert "ARM: dts: sun7i: Add BCM53125 switch nodes to the - lamobo-r1 board" - -This reverts the changes needed for the upstream b53 DSA switch driver -to use the OpenWrt b43 swconfig switch driver. - -This reverts commit 0cdefd5b5485ee6eb3512a75739d09a4090176ed. -This reverts commit d7b9eaff5f0ca00726336b4c0c3c29decf30412a. ---- - arch/arm/boot/dts/sun7i-a20-lamobo-r1.dts | 60 ++----------------------------- - 1 file changed, 3 insertions(+), 57 deletions(-) - ---- a/arch/arm/boot/dts/sun7i-a20-lamobo-r1.dts -+++ b/arch/arm/boot/dts/sun7i-a20-lamobo-r1.dts -@@ -120,65 +120,13 @@ - &gmac { - pinctrl-names = "default"; - pinctrl-0 = <&gmac_rgmii_pins>; -+ phy = <&phy1>; - phy-mode = "rgmii"; - phy-supply = <®_gmac_3v3>; - status = "okay"; - -- fixed-link { -- speed = <1000>; -- full-duplex; -- }; -- -- mdio { -- compatible = "snps,dwmac-mdio"; -- #address-cells = <1>; -- #size-cells = <0>; -- -- switch: ethernet-switch@1e { -- compatible = "brcm,bcm53125"; -- reg = <30>; -- -- ports { -- #address-cells = <1>; -- #size-cells = <0>; -- -- port0: port@0 { -- reg = <0>; -- label = "lan2"; -- }; -- -- port1: port@1 { -- reg = <1>; -- label = "lan3"; -- }; -- -- port2: port@2 { -- reg = <2>; -- label = "lan4"; -- }; -- -- port3: port@3 { -- reg = <3>; -- label = "wan"; -- }; -- -- port4: port@4 { -- reg = <4>; -- label = "lan1"; -- }; -- -- port8: port@8 { -- reg = <8>; -- label = "cpu"; -- ethernet = <&gmac>; -- phy-mode = "rgmii-txid"; -- fixed-link { -- speed = <1000>; -- full-duplex; -- }; -- }; -- }; -- }; -+ phy1: ethernet-phy@1 { -+ reg = <1>; - }; - }; -