[openwrt/openwrt] ipq40xx: add support for Netgear RBS20

LEDE Commits lede-commits at lists.infradead.org
Sat Nov 15 02:24:54 PST 2025


robimarko pushed a commit to openwrt/openwrt.git, branch main:
https://git.openwrt.org/0db1b11073af0282282e3c825a0498c19c837383

commit 0db1b11073af0282282e3c825a0498c19c837383
Author: Christoph Krapp <achterin at gmail.com>
AuthorDate: Sat Nov 8 22:47:07 2025 +0100

    ipq40xx: add support for Netgear RBS20
    
    This device has only half the flash and ram of the RBR20. It also has
    two lan ports instead of wan and lan.
    
    Hardware
    --------
    SOC:    Qualcomm IPQ4019
    FLASH:  128MB (Winbond W29N01HVSINF)
    RAM:    256MB (Winbond W632GU6MB-12)
    WIFI:   Qualcomm IPQ4019
            Qualcomm Atheros QCA9886
    ETH:    2x LAN
    LED:    5 (4 RGB at top, 1 RG at back)
    BTN:    WPS, Reset
    UART:   115200 8N1 (dotted Pin = VCC) VCC-TX-RX-GND
    
    MAC addresses
    -------------
    LAN     Label MAC (stored in boarddata1 offset 0x0)
    2.4G    LAN
    5GLow   LAN + 3 (stored in boarddata1 offset 0xc)
    5GUpper LAN + 2 (stored in boarddata1 offset 0x12)
    
    Installation
    ------------
    Either use the vendor ui upgrade method or nmrpflash to install the
    factory image.
    
    Signed-off-by: Christoph Krapp <achterin at gmail.com>
    Link: https://github.com/openwrt/openwrt/pull/20560
    Signed-off-by: Robert Marko <robimarko at gmail.com>
---
 .../boot/uboot-tools/uboot-envtools/files/ipq40xx  |   3 +-
 .../ipq40xx/base-files/etc/board.d/02_network      |   3 +-
 .../ipq40xx/base-files/lib/upgrade/platform.sh     |   1 +
 .../arch/arm/boot/dts/qcom/qcom-ipq4019-rbr20.dts  | 267 +--------------------
 .../arch/arm/boot/dts/qcom/qcom-ipq4019-rbs20.dts  | 210 ++++++++++++++++
 ...m-ipq4019-rbr20.dts => qcom-ipq4019-rbx20.dtsi} | 219 -----------------
 target/linux/ipq40xx/image/generic.mk              |  20 +-
 7 files changed, 232 insertions(+), 491 deletions(-)

diff --git a/package/boot/uboot-tools/uboot-envtools/files/ipq40xx b/package/boot/uboot-tools/uboot-envtools/files/ipq40xx
index b3d18980d5..e2d67d7f19 100644
--- a/package/boot/uboot-tools/uboot-envtools/files/ipq40xx
+++ b/package/boot/uboot-tools/uboot-envtools/files/ipq40xx
@@ -55,7 +55,8 @@ aruba,ap-365)
 	;;
 buffalo,wtr-m2133hp|\
 netgear,lbr20|\
-netgear,rbr20)
+netgear,rbr20|\
+netgear,rbs20)
 	ubootenv_add_uci_config "/dev/mtd8" "0x0" "0x40000" "0x20000"
 	;;
 linksys,ea6350v3)
diff --git a/target/linux/ipq40xx/base-files/etc/board.d/02_network b/target/linux/ipq40xx/base-files/etc/board.d/02_network
index 737fcee083..13b1cdc43a 100644
--- a/target/linux/ipq40xx/base-files/etc/board.d/02_network
+++ b/target/linux/ipq40xx/base-files/etc/board.d/02_network
@@ -81,7 +81,8 @@ ipq40xx_setup_interfaces()
 		;;
 	avm,fritzrepeater-3000|\
 	cellc,rtl30vw|\
-	compex,wpj428)
+	compex,wpj428|\
+	netgear,rbs20)
 		ucidef_set_interface_lan "lan1 lan2"
 		;;
 	devolo,magic-2-wifi-next)
diff --git a/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh b/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh
index 248832d467..21ec2f4d29 100644
--- a/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh
+++ b/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh
@@ -124,6 +124,7 @@ platform_do_upgrade() {
 	mobipromo,cm520-79f|\
 	netgear,lbr20|\
 	netgear,rbr20|\
+	netgear,rbs20|\
 	netgear,wac510|\
 	p2w,r619ac-64m|\
 	p2w,r619ac-128m|\
diff --git a/target/linux/ipq40xx/files-6.12/arch/arm/boot/dts/qcom/qcom-ipq4019-rbr20.dts b/target/linux/ipq40xx/files-6.12/arch/arm/boot/dts/qcom/qcom-ipq4019-rbr20.dts
index 269be9fdfb..bc713e0759 100644
--- a/target/linux/ipq40xx/files-6.12/arch/arm/boot/dts/qcom/qcom-ipq4019-rbr20.dts
+++ b/target/linux/ipq40xx/files-6.12/arch/arm/boot/dts/qcom/qcom-ipq4019-rbr20.dts
@@ -1,178 +1,10 @@
 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
 
-#include "qcom-ipq4019.dtsi"
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-#include <dt-bindings/soc/qcom,tcsr.h>
-#include <dt-bindings/leds/common.h>
+#include "qcom-ipq4019-rbx20.dtsi"
 
 / {
 	model = "Netgear RBR20";
 	compatible = "netgear,rbr20";
-
-	chosen {
-		bootargs-append = "ubi.mtd=ubi root=/dev/ubiblock0_0";
-	};
-
-	aliases {
-		led-boot = &led_status_white;
-		led-failsafe = &led_status_red;
-		led-running = &led_status_green;
-		led-upgrade = &led_status_blue;
-		label-mac-device = &gmac;
-	};
-
-	keys {
-		compatible = "gpio-keys";
-
-		reset {
-			label = "reset";
-			gpios = <&tlmm 18 GPIO_ACTIVE_LOW>;
-			linux,code = <KEY_RESTART>;
-		};
-
-		wps {
-			label = "wps";
-			gpios = <&tlmm 32 GPIO_ACTIVE_LOW>;
-			linux,code = <KEY_WPS_BUTTON>;
-		};
-	};
-
-	leds {
-		compatible = "gpio-leds";
-
-		led-0 {
-			function = LED_FUNCTION_POWER;
-			color = <LED_COLOR_ID_GREEN>;
-			gpios = <&tlmm 22 GPIO_ACTIVE_HIGH>;
-			default-state = "on";
-		};
-
-		led-1 {
-			function = LED_FUNCTION_POWER;
-			color = <LED_COLOR_ID_RED>;
-			gpios = <&tlmm 23 GPIO_ACTIVE_HIGH>;
-			panic-indicator;
-		};
-
-		led_status_green: led-2 {
-			function = LED_FUNCTION_STATUS;
-			color = <LED_COLOR_ID_GREEN>;
-			gpios = <&tlmm 24 GPIO_ACTIVE_HIGH>;
-		};
-
-		led_status_red: led-3 {
-			function = LED_FUNCTION_STATUS;
-			color = <LED_COLOR_ID_RED>;
-			gpios = <&tlmm 25 GPIO_ACTIVE_HIGH>;
-		};
-
-		led_status_blue: led-4 {
-			function = LED_FUNCTION_STATUS;
-			color = <LED_COLOR_ID_BLUE>;
-			gpios = <&tlmm 26 GPIO_ACTIVE_HIGH>;
-		};
-
-		led_status_white: led-5 {
-			function = LED_FUNCTION_STATUS;
-			color = <LED_COLOR_ID_WHITE>;
-			gpios = <&tlmm 27 GPIO_ACTIVE_HIGH>;
-		};
-	};
-
-	soc {
-		tcsr at 1949000 {
-			compatible = "qcom,tcsr";
-			reg = <0x1949000 0x100>;
-			qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>;
-		};
-
-		tcsr at 194b000 {
-			status = "okay";
-
-			compatible = "qcom,tcsr";
-			reg = <0x194b000 0x100>;
-			qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>;
-		};
-
-		ess_tcsr at 1953000 {
-			compatible = "qcom,tcsr";
-			reg = <0x1953000 0x1000>;
-			qcom,ess-interface-select = <TCSR_ESS_PSGMII>;
-		};
-
-		tcsr at 1957000 {
-			compatible = "qcom,tcsr";
-			reg = <0x1957000 0x100>;
-			qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
-		};
-	};
-};
-
-&prng {
-	status = "okay";
-};
-
-&mdio {
-	status = "okay";
-	pinctrl-0 = <&mdio_pins>;
-	pinctrl-names = "default";
-};
-
-&crypto {
-	status = "okay";
-};
-
-&watchdog {
-	status = "okay";
-};
-
-&blsp_dma {
-	status = "okay";
-};
-
-&qpic_bam {
-	status = "okay";
-};
-
-&tlmm {
-	mdio_pins: mdio-pinmux {
-		mux_mdio {
-			pins = "gpio6";
-			function = "mdio";
-			bias-pull-up;
-		};
-
-		mux_mdc {
-			pins = "gpio7";
-			function = "mdc";
-			bias-pull-up;
-		};
-	};
-
-	serial_pins: serial-pinmux {
-		function = "blsp_uart0";
-		pins = "gpio16", "gpio17";
-		bias-disable;
-	};
-
-	nand_pins: nand-pins {
-		pullups {
-			pins = "gpio53", "gpio58", "gpio59";
-			function = "qpic";
-			bias-pull-up;
-		};
-
-		pulldowns {
-			pins = "gpio54", "gpio55", "gpio56",
-				"gpio57", "gpio60", "gpio61",
-				"gpio62", "gpio63", "gpio64",
-				"gpio65", "gpio66", "gpio67",
-				"gpio68", "gpio69";
-			function = "qpic";
-			bias-pull-down;
-		};
-	};
 };
 
 &nand {
@@ -377,70 +209,6 @@
 	};
 };
 
-&blsp1_i2c3 {
-	status = "okay";
-
-	led-controller at 27 {
-		#address-cells = <1>;
-		#size-cells = <0>;
-		compatible = "ti,tlc59108"; /* really is tlc59208f */
-		reg = <0x27>;
-
-		led0 at 0 {
-			function = LED_FUNCTION_BACKLIGHT;
-			function-enumerator = <0>;
-			color = <LED_COLOR_ID_WHITE>;
-			reg = <0x0>;
-			linux,default-trigger = "default-on";
-		};
-
-		led1 at 1 {
-			function = LED_FUNCTION_BACKLIGHT;
-			function-enumerator = <1>;
-			color = <LED_COLOR_ID_WHITE>;
-			reg = <0x1>;
-			linux,default-trigger = "default-on";
-		};
-
-		led2 at 2 {
-			function = LED_FUNCTION_BACKLIGHT;
-			function-enumerator = <2>;
-			color = <LED_COLOR_ID_WHITE>;
-			reg = <0x2>;
-			linux,default-trigger = "default-on";
-		};
-
-		led3 at 3 {
-			function = LED_FUNCTION_BACKLIGHT;
-			function-enumerator = <3>;
-			color = <LED_COLOR_ID_WHITE>;
-			reg = <0x3>;
-			linux,default-trigger = "default-on";
-		};
-	};
-};
-
-&blsp1_uart1 {
-	status = "okay";
-	pinctrl-0 = <&serial_pins>;
-	pinctrl-names = "default";
-};
-
-&cryptobam {
-	status = "okay";
-};
-
-&gmac {
-	status = "okay";
-
-	nvmem-cell-names = "mac-address";
-	nvmem-cells = <&mac_address_lan 0>;
-};
-
-&switch {
-	status = "okay";
-};
-
 &swport4 {
 	status = "okay";
 
@@ -454,36 +222,3 @@
 
 	label = "lan";
 };
-
-&pcie0 {
-	status = "okay";
-
-	perst-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>;
-	wake-gpios = <&tlmm 50 GPIO_ACTIVE_LOW>;
-};
-
-&pcie_bridge0 {
-	wifi at 0,0 {
-		compatible = "qcom,ath10k";
-		reg = <0x00010000 0 0 0 0>;
-		ieee80211-freq-limit = <5170000 5350000>;
-		nvmem-cell-names = "pre-calibration", "mac-address";
-		nvmem-cells = <&precal_art_9000>, <&mac_address_wlan_2nd5g 0>;
-		qcom,ath10k-calibration-variant = "Netgear-RBK20";
-	};
-};
-
-&wifi0 {
-	status = "okay";
-	nvmem-cell-names = "pre-calibration", "mac-address";
-	nvmem-cells = <&precal_art_1000>, <&mac_address_lan 0>;
-	qcom,ath10k-calibration-variant = "Netgear-RBK20";
-};
-
-&wifi1 {
-	status = "okay";
-	ieee80211-freq-limit = <5470000 5815000>;
-	nvmem-cell-names = "pre-calibration", "mac-address";
-	nvmem-cells = <&precal_art_5000>, <&mac_address_wlan_5g 0>;
-	qcom,ath10k-calibration-variant = "Netgear-RBK20";
-};
diff --git a/target/linux/ipq40xx/files-6.12/arch/arm/boot/dts/qcom/qcom-ipq4019-rbs20.dts b/target/linux/ipq40xx/files-6.12/arch/arm/boot/dts/qcom/qcom-ipq4019-rbs20.dts
new file mode 100644
index 0000000000..c35a9139aa
--- /dev/null
+++ b/target/linux/ipq40xx/files-6.12/arch/arm/boot/dts/qcom/qcom-ipq4019-rbs20.dts
@@ -0,0 +1,210 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "qcom-ipq4019-rbx20.dtsi"
+
+/ {
+	model = "Netgear RBS20";
+	compatible = "netgear,rbs20";
+};
+
+&nand {
+	pinctrl-0 = <&nand_pins>;
+	pinctrl-names = "default";
+	status = "okay";
+
+	nand at 0 {
+		partitions {
+			compatible = "fixed-partitions";
+			#address-cells = <1>;
+			#size-cells = <1>;
+
+			partition at 0 {
+				label = "0:SBL1";
+				reg = <0x00000000 0x00100000>;
+				read-only;
+			};
+
+			partition at 100000 {
+				label = "0:MIBIB";
+				reg = <0x00100000 0x00100000>;
+				read-only;
+			};
+
+			partition at 200000 {
+				label = "0:BOOTCONFIG";
+				reg = <0x00200000 0x00100000>;
+				read-only;
+			};
+
+			partition at 300000 {
+				label = "0:QSEE";
+				reg = <0x00300000 0x00100000>;
+				read-only;
+			};
+
+			partition at 400000 {
+				label = "0:QSEE_1";
+				reg = <0x00400000 0x00100000>;
+				read-only;
+			};
+
+			partition at 500000 {
+				label = "0:CDT";
+				reg = <0x00500000 0x00080000>;
+				read-only;
+			};
+
+			partition at 580000 {
+				label = "0:CDT_1";
+				reg = <0x00580000 0x00080000>;
+				read-only;
+			};
+
+			partition at 600000 {
+				label = "0:BOOTCONFIG1";
+				reg = <0x00600000 0x00080000>;
+				read-only;
+			};
+
+			partition at 680000 {
+				label = "0:APPSBLENV";
+				reg = <0x00680000 0x00080000>;
+			};
+
+			partition at 700000 {
+				label = "0:APPSBL";
+				reg = <0x00700000 0x00200000>;
+				read-only;
+			};
+
+			partition at 900000 {
+				label = "0:APPSBL_1";
+				reg = <0x00900000 0x00200000>;
+				read-only;
+			};
+
+			partition at b00000 {
+				label = "0:ART";
+				reg = <0x00b00000 0x00080000>;
+				read-only;
+
+				nvmem-layout {
+					compatible = "fixed-layout";
+					#address-cells = <1>;
+					#size-cells = <1>;
+
+					precal_art_1000: precal at 1000 {
+						reg = <0x1000 0x2f20>;
+					};
+
+					precal_art_5000: precal at 5000 {
+						reg = <0x5000 0x2f20>;
+					};
+
+					precal_art_9000: precal at 9000 {
+						reg = <0x9000 0x2f20>;
+					};
+				};
+			};
+
+			partition at b80000 {
+				label = "0:ART.bak";
+				reg = <0x00b80000 0x00080000>;
+				read-only;
+			};
+
+			partition at c00000 {
+				label = "config";
+				reg = <0x00c00000 0x00100000>;
+				read-only;
+			};
+
+			partition at d00000 {
+				label = "boarddata1";
+				reg = <0x00d00000 0x00080000>;
+				read-only;
+
+				nvmem-layout {
+					compatible = "fixed-layout";
+					#address-cells = <1>;
+					#size-cells = <1>;
+
+					mac_address_lan: macaddr at 0 {
+						compatible = "mac-base";
+						reg = <0x0 0x6>;
+						#nvmem-cell-cells = <1>;
+					};
+
+					mac_address_wlan_5g: macaddr at c {
+						compatible = "mac-base";
+						reg = <0xc 0x6>;
+						#nvmem-cell-cells = <1>;
+					};
+
+					mac_address_wlan_2nd5g: macaddr at 12 {
+						compatible = "mac-base";
+						reg = <0x12 0x6>;
+						#nvmem-cell-cells = <1>;
+					};
+				};
+			};
+
+			partition at d80000 {
+				label = "boarddata2";
+				reg = <0x00d80000 0x00040000>;
+				read-only;
+			};
+
+			partition at dc0000 {
+				label = "pot";
+				reg = <0x00dc0000 0x00100000>;
+				read-only;
+			};
+
+			partition at ec0000 {
+				label = "boarddata1.bak";
+				reg = <0x00ec0000 0x00080000>;
+				read-only;
+			};
+
+			partition at f40000 {
+				label = "boarddata2.bak";
+				reg = <0x00f40000 0x00040000>;
+				read-only;
+			};
+
+			partition at f80000 {
+				label = "language";
+				reg = <0x00f80000 0x00300000>;
+				read-only;
+			};
+
+			partition at 1280000 {
+				label = "ntgrdata";
+				reg = <0x01280000 0x01e00000>;
+			};
+
+			partition at 3080000 {
+				label = "kernel";
+				reg = <0x03080000 0x00700000>;
+			};
+
+			partition at 3780000 {
+				label = "ubi";
+				reg = <0x03780000 0x04880000>;
+			};
+		};
+	};
+};
+
+&swport4 {
+	status = "okay";
+
+	label = "lan1";
+};
+
+&swport5 {
+	status = "okay";
+
+	label = "lan2";
+};
diff --git a/target/linux/ipq40xx/files-6.12/arch/arm/boot/dts/qcom/qcom-ipq4019-rbr20.dts b/target/linux/ipq40xx/files-6.12/arch/arm/boot/dts/qcom/qcom-ipq4019-rbx20.dtsi
similarity index 57%
copy from target/linux/ipq40xx/files-6.12/arch/arm/boot/dts/qcom/qcom-ipq4019-rbr20.dts
copy to target/linux/ipq40xx/files-6.12/arch/arm/boot/dts/qcom/qcom-ipq4019-rbx20.dtsi
index 269be9fdfb..08d2c0e4a0 100644
--- a/target/linux/ipq40xx/files-6.12/arch/arm/boot/dts/qcom/qcom-ipq4019-rbr20.dts
+++ b/target/linux/ipq40xx/files-6.12/arch/arm/boot/dts/qcom/qcom-ipq4019-rbx20.dtsi
@@ -7,9 +7,6 @@
 #include <dt-bindings/leds/common.h>
 
 / {
-	model = "Netgear RBR20";
-	compatible = "netgear,rbr20";
-
 	chosen {
 		bootargs-append = "ubi.mtd=ubi root=/dev/ubiblock0_0";
 	};
@@ -175,208 +172,6 @@
 	};
 };
 
-&nand {
-	pinctrl-0 = <&nand_pins>;
-	pinctrl-names = "default";
-	status = "okay";
-
-	nand at 0 {
-		partitions {
-			compatible = "fixed-partitions";
-			#address-cells = <1>;
-			#size-cells = <1>;
-
-			partition at 0 {
-				label = "0:SBL1";
-				reg = <0x00000000 0x00100000>;
-				read-only;
-			};
-
-			partition at 100000 {
-				label = "0:MIBIB";
-				reg = <0x00100000 0x00100000>;
-				read-only;
-			};
-
-			partition at 200000 {
-				label = "0:BOOTCONFIG";
-				reg = <0x00200000 0x00100000>;
-				read-only;
-			};
-
-			partition at 300000 {
-				label = "0:QSEE";
-				reg = <0x00300000 0x00100000>;
-				read-only;
-			};
-
-			partition at 400000 {
-				label = "0:QSEE_1";
-				reg = <0x00400000 0x00100000>;
-				read-only;
-			};
-
-			partition at 500000 {
-				label = "0:CDT";
-				reg = <0x00500000 0x00080000>;
-				read-only;
-			};
-
-			partition at 580000 {
-				label = "0:CDT_1";
-				reg = <0x00580000 0x00080000>;
-				read-only;
-			};
-
-			partition at 600000 {
-				label = "0:BOOTCONFIG1";
-				reg = <0x00600000 0x00080000>;
-				read-only;
-			};
-
-			partition at 680000 {
-				label = "0:APPSBLENV";
-				reg = <0x00680000 0x00080000>;
-			};
-
-			partition at 700000 {
-				label = "0:APPSBL";
-				reg = <0x00700000 0x00200000>;
-				read-only;
-			};
-
-			partition at 900000 {
-				label = "0:APPSBL_1";
-				reg = <0x00900000 0x00200000>;
-				read-only;
-			};
-
-			partition at b00000 {
-				label = "0:ART";
-				reg = <0x00b00000 0x00080000>;
-				read-only;
-
-				nvmem-layout {
-					compatible = "fixed-layout";
-					#address-cells = <1>;
-					#size-cells = <1>;
-
-					precal_art_1000: precal at 1000 {
-						reg = <0x1000 0x2f20>;
-					};
-
-					precal_art_5000: precal at 5000 {
-						reg = <0x5000 0x2f20>;
-					};
-
-					precal_art_9000: precal at 9000 {
-						reg = <0x9000 0x2f20>;
-					};
-				};
-			};
-
-			partition at b80000 {
-				label = "0:ART.bak";
-				reg = <0x00b80000 0x00080000>;
-				read-only;
-			};
-
-			partition at c00000 {
-				label = "config";
-				reg = <0x00c00000 0x00100000>;
-				read-only;
-			};
-
-			partition at d00000 {
-				label = "boarddata1";
-				reg = <0x00d00000 0x00080000>;
-				read-only;
-
-				nvmem-layout {
-					compatible = "fixed-layout";
-					#address-cells = <1>;
-					#size-cells = <1>;
-
-					mac_address_lan: macaddr at 0 {
-						compatible = "mac-base";
-						reg = <0x0 0x6>;
-						#nvmem-cell-cells = <1>;
-					};
-
-					mac_address_wan: macaddr at 6 {
-						compatible = "mac-base";
-						reg = <0x6 0x6>;
-						#nvmem-cell-cells = <1>;
-					};
-
-					mac_address_wlan_5g: macaddr at c {
-						compatible = "mac-base";
-						reg = <0xc 0x6>;
-						#nvmem-cell-cells = <1>;
-					};
-
-					mac_address_wlan_2nd5g: macaddr at 12 {
-						compatible = "mac-base";
-						reg = <0x12 0x6>;
-						#nvmem-cell-cells = <1>;
-					};
-				};
-			};
-
-			partition at d80000 {
-				label = "boarddata2";
-				reg = <0x00d80000 0x00040000>;
-				read-only;
-			};
-
-			partition at dc0000 {
-				label = "pot";
-				reg = <0x00dc0000 0x00100000>;
-				read-only;
-			};
-
-			partition at ec0000 {
-				label = "boarddata1.bak";
-				reg = <0x00ec0000 0x00080000>;
-				read-only;
-			};
-
-			partition at f40000 {
-				label = "boarddata2.bak";
-				reg = <0x00f40000 0x00040000>;
-				read-only;
-			};
-
-			partition at f80000 {
-				label = "language";
-				reg = <0x00f80000 0x00300000>;
-				read-only;
-			};
-
-			partition at 1280000 {
-				label = "cert";
-				reg = <0x01280000 0x00080000>;
-				read-only;
-			};
-
-			partition at 1300000 {
-				label = "ntgrdata";
-				reg = <0x01300000 0x09300000>;
-			};
-
-			partition at a600000 {
-				label = "kernel";
-				reg = <0x0a600000 0x00700000>;
-			};
-
-			partition at ad00000 {
-				label = "ubi";
-				reg = <0x0ad00000 0x05300000>;
-			};
-		};
-	};
-};
-
 &blsp1_i2c3 {
 	status = "okay";
 
@@ -441,20 +236,6 @@
 	status = "okay";
 };
 
-&swport4 {
-	status = "okay";
-
-	label = "wan";
-	nvmem-cell-names = "mac-address";
-	nvmem-cells = <&mac_address_wan 0>;
-};
-
-&swport5 {
-	status = "okay";
-
-	label = "lan";
-};
-
 &pcie0 {
 	status = "okay";
 
diff --git a/target/linux/ipq40xx/image/generic.mk b/target/linux/ipq40xx/image/generic.mk
index af637c4ba3..544fe0424d 100644
--- a/target/linux/ipq40xx/image/generic.mk
+++ b/target/linux/ipq40xx/image/generic.mk
@@ -911,13 +911,10 @@ define Device/netgear_lbr20
 endef
 TARGET_DEVICES += netgear_lbr20
 
-define Device/netgear_rbr20
+define Device/netgear_rbx20
 	$(call Device/DniImage)
 	SOC := qcom-ipq4019
 	DEVICE_VENDOR := NETGEAR
-	DEVICE_MODEL := RBR20
-	NETGEAR_BOARD_ID := RBR20
-	NETGEAR_HW_ID := 29765641+0+256+512+2x2+2x2+2x2
 	KERNEL_SIZE := 7340032
 	BLOCKSIZE := 128k
 	PAGESIZE := 2048
@@ -930,8 +927,23 @@ define Device/netgear_rbr20
 		append-metadata
 	DEVICE_PACKAGES := ipq-wifi-netgear_rbk20 ath10k-firmware-qca9888-ct
 endef
+
+define Device/netgear_rbr20
+	$(call Device/netgear_rbx20)
+	DEVICE_MODEL := RBR20
+	NETGEAR_BOARD_ID := RBR20
+	NETGEAR_HW_ID := 29765641+0+256+512+2x2+2x2+2x2
+endef
 TARGET_DEVICES += netgear_rbr20
 
+define Device/netgear_rbs20
+	$(call Device/netgear_rbx20)
+	DEVICE_MODEL := RBS20
+	NETGEAR_BOARD_ID := RBS20
+	NETGEAR_HW_ID := 29765641+0+128+512+2x2+2x2+2x2
+endef
+TARGET_DEVICES += netgear_rbs20
+
 define Device/netgear_rbx40
 	$(call Device/netgear_orbi)
 	NETGEAR_HW_ID := 29765515+0+4096+512+2x2+2x2+2x2




More information about the lede-commits mailing list