Browse Source

ramips: create common dtsi for Sercomm Dxx routers

This commit adds common dtsi for the following Sercomm devices with 256
MB NAND:
Beeline Smartbox TURBO (Sercomm DF3)
Rostelecom RT-SF-1 (Sercomm DKG)

Also fixed typo ("Container" mtd name should be with a capital).

Signed-off-by: Mikhail Zhilkin <[email protected]>
Mikhail Zhilkin 3 years ago
parent
commit
e6b99a4e43

+ 1 - 225
target/linux/ramips/dts/mt7621_beeline_smartbox-turbo.dts

@@ -1,183 +1,14 @@
 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
 
-#include "mt7621.dtsi"
-
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-#include <dt-bindings/leds/common.h>
+#include "mt7621_sercomm_dxx_nand_256m.dtsi"
 
 / {
 	compatible = "beeline,smartbox-turbo", "mediatek,mt7621-soc";
 	model = "Beeline SmartBox TURBO";
-
-	aliases {
-		label-mac-device = &gmac0;
-
-		led-boot = &led_status_green;
-		led-failsafe = &led_status_red;
-		led-running = &led_status_green;
-		led-upgrade = &led_status_red;
-	};
-
-	leds {
-		compatible = "gpio-leds";
-
-		led-1 {
-			label = "blue:wan";
-			color = <LED_COLOR_ID_BLUE>;
-			function = LED_FUNCTION_WAN;
-			gpios = <&gpio 13 GPIO_ACTIVE_HIGH>;
-		};
-
-		led_status_green: led-0 {
-			label = "green:status";
-			color = <LED_COLOR_ID_GREEN>;
-			function = LED_FUNCTION_STATUS;
-			gpios = <&gpio 15 GPIO_ACTIVE_HIGH>;
-		};
-
-		led_status_red: led-2 {
-			label = "red:status";
-			color = <LED_COLOR_ID_RED>;
-			function = LED_FUNCTION_STATUS;
-			gpios = <&gpio 16 GPIO_ACTIVE_HIGH>;
-		};
-	};
-
-	keys {
-		compatible = "gpio-keys";
-
-		wps {
-			label = "wps";
-			gpios = <&gpio 11 GPIO_ACTIVE_HIGH>;
-			linux,code = <KEY_WPS_BUTTON>;
-		};
-
-		reset {
-			label = "reset";
-			gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
-			linux,code = <KEY_RESTART>;
-		};
-	};
-
-	ubi-concat {
-		compatible = "mtd-concat";
-		devices = <&ubiconcat0 &ubiconcat1 &ubiconcat2 \
-			&ubiconcat3>;
-
-		partitions {
-			compatible = "fixed-partitions";
-			#address-cells = <1>;
-			#size-cells = <1>;
-
-			partition@0 {
-				label = "ubi";
-				reg = <0x0 0xca00000>;
-			};
-		};
-	};
-};
-
-&nand {
-	status = "okay";
-
-	partitions {
-		compatible = "sercomm,sc-partitions", "fixed-partitions";
-		#address-cells = <1>;
-		#size-cells = <1>;
-
-		partition@0 {
-			label = "u-boot";
-			reg = <0x0 0x100000>;
-			sercomm,scpart-id = <0>;
-			read-only;
-		};
-
-		partition@100000 {
-			label = "dynamic partition map";
-			reg = <0x100000 0x100000>;
-			sercomm,scpart-id = <1>;
-			read-only;
-		};
-
-		factory: partition@200000 {
-			label = "Factory";
-			reg = <0x200000 0x100000>;
-			sercomm,scpart-id = <2>;
-			read-only;
-
-			compatible = "nvmem-cells";
-			#address-cells = <1>;
-			#size-cells = <1>;
-
-			macaddr_factory_21000: macaddr@21000 {
-				reg = <0x21000 0x6>;
-			};
-		};
-
-		partition@300000 {
-			label = "Boot Flag";
-			reg = <0x300000 0x100000>;
-			sercomm,scpart-id = <3>;
-		};
-
-		partition@400000 {
-			label = "kernel";
-			reg = <0x400000 0x600000>;
-			sercomm,scpart-id = <4>;
-		};
-
-		partition@a00000 {
-			label = "Kernel 2";
-			reg = <0xa00000 0x600000>;
-			sercomm,scpart-id = <5>;
-			read-only;
-		};
-
-		ubiconcat0: partition@1000000 {
-			label = "File System 1";
-			reg = <0x1000000 0x2000000>;
-			sercomm,scpart-id = <6>;
-		};
-
-		partition@3000000 {
-			label = "File System 2";
-			reg = <0x3000000 0x2000000>;
-			sercomm,scpart-id = <7>;
-			read-only;
-		};
-
-		ubiconcat1: partition@5000000 {
-			label = "Configuration/log";
-			reg = <0x5000000 0x1400000>;
-			sercomm,scpart-id = <8>;
-		};
-
-		ubiconcat2: partition@6400000 {
-			label = "Debug (Ftool)";
-			reg = <0x6400000 0x1a00000>;
-			sercomm,scpart-id = <9>;
-		};
-
-		ubiconcat3: partition@8000000 {
-			label = "container";
-			reg = <0x8000000 0x7c00000>;
-			sercomm,scpart-id = <10>;
-		};
-	};
-};
-
-&pcie {
-	status = "okay";
 };
 
 &pcie0 {
 	wifi@0,0 {
-		compatible = "mediatek,mt76";
-		reg = <0x0000 0 0 0 0>;
-		mediatek,mtd-eeprom = <&factory 0x8000>;
-		ieee80211-freq-limit = <5000000 6000000>;
-
 		nvmem-cells = <&macaddr_factory_21000>;
 		nvmem-cell-names = "mac-address";
 		mac-address-increment = <(5)>;
@@ -186,69 +17,14 @@
 
 &pcie1 {
 	wifi@0,0 {
-		compatible = "mediatek,mt76";
-		reg = <0x0000 0 0 0 0>;
-		mediatek,mtd-eeprom = <&factory 0x0>;
-		ieee80211-freq-limit = <2400000 2500000>;
-
 		nvmem-cells = <&macaddr_factory_21000>;
 		nvmem-cell-names = "mac-address";
 		mac-address-increment = <(4)>;
 	};
 };
 
-&gmac0 {
-	nvmem-cells = <&macaddr_factory_21000>;
-	nvmem-cell-names = "mac-address";
-};
-
 &gmac1 {
-	status = "okay";
-	label = "wan";
-	phy-handle = <&ethphy0>;
-
 	nvmem-cells = <&macaddr_factory_21000>;
 	nvmem-cell-names = "mac-address";
 	mac-address-increment = <(1)>;
 };
-
-&mdio {
-	ethphy0: ethernet-phy@0 {
-		reg = <0>;
-	};
-};
-
-&switch0 {
-	ports {
-		port@1 {
-			status = "okay";
-			label = "lan1";
-		};
-
-		port@2 {
-			status = "okay";
-			label = "lan2";
-		};
-
-		port@3 {
-			status = "okay";
-			label = "lan3";
-		};
-
-		port@4 {
-			status = "okay";
-			label = "lan4";
-		};
-	};
-};
-
-&uartlite3 {
-	status = "okay";
-};
-
-&state_default {
-	gpio {
-		groups = "jtag", "uart2";
-		function = "gpio";
-	};
-};

+ 239 - 0
target/linux/ramips/dts/mt7621_sercomm_dxx_nand_256m.dtsi

@@ -0,0 +1,239 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "mt7621.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/leds/common.h>
+
+/ {
+	aliases {
+		label-mac-device = &gmac0;
+
+		led-boot = &led_status_green;
+		led-failsafe = &led_status_red;
+		led-running = &led_status_green;
+		led-upgrade = &led_status_red;
+	};
+
+	leds {
+		compatible = "gpio-leds";
+
+		led-1 {
+			label = "blue:wan";
+			color = <LED_COLOR_ID_BLUE>;
+			function = LED_FUNCTION_WAN;
+			gpios = <&gpio 13 GPIO_ACTIVE_HIGH>;
+		};
+
+		led_status_green: led-0 {
+			label = "green:status";
+			color = <LED_COLOR_ID_GREEN>;
+			function = LED_FUNCTION_STATUS;
+			gpios = <&gpio 15 GPIO_ACTIVE_HIGH>;
+		};
+
+		led_status_red: led-2 {
+			label = "red:status";
+			color = <LED_COLOR_ID_RED>;
+			function = LED_FUNCTION_STATUS;
+			gpios = <&gpio 16 GPIO_ACTIVE_HIGH>;
+		};
+	};
+
+	keys {
+		compatible = "gpio-keys";
+
+		wps {
+			label = "wps";
+			gpios = <&gpio 11 GPIO_ACTIVE_HIGH>;
+			linux,code = <KEY_WPS_BUTTON>;
+		};
+
+		reset {
+			label = "reset";
+			gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
+			linux,code = <KEY_RESTART>;
+		};
+	};
+
+	ubi-concat {
+		compatible = "mtd-concat";
+		devices = <&ubiconcat0 &ubiconcat1 &ubiconcat2 \
+			&ubiconcat3>;
+
+		partitions {
+			compatible = "fixed-partitions";
+			#address-cells = <1>;
+			#size-cells = <1>;
+
+			partition@0 {
+				label = "ubi";
+				reg = <0x0 0xca00000>;
+			};
+		};
+	};
+};
+
+&nand {
+	status = "okay";
+
+	partitions {
+		compatible = "sercomm,sc-partitions", "fixed-partitions";
+		#address-cells = <1>;
+		#size-cells = <1>;
+
+		partition@0 {
+			label = "u-boot";
+			reg = <0x0 0x100000>;
+			sercomm,scpart-id = <0>;
+			read-only;
+		};
+
+		partition@100000 {
+			label = "dynamic partition map";
+			reg = <0x100000 0x100000>;
+			sercomm,scpart-id = <1>;
+			read-only;
+		};
+
+		factory: partition@200000 {
+			label = "Factory";
+			reg = <0x200000 0x100000>;
+			sercomm,scpart-id = <2>;
+			read-only;
+
+			compatible = "nvmem-cells";
+			#address-cells = <1>;
+			#size-cells = <1>;
+
+			macaddr_factory_21000: macaddr@21000 {
+				reg = <0x21000 0x6>;
+			};
+		};
+
+		partition@300000 {
+			label = "Boot Flag";
+			reg = <0x300000 0x100000>;
+			sercomm,scpart-id = <3>;
+		};
+
+		partition@400000 {
+			label = "kernel";
+			reg = <0x400000 0x600000>;
+			sercomm,scpart-id = <4>;
+		};
+
+		partition@a00000 {
+			label = "Kernel 2";
+			reg = <0xa00000 0x600000>;
+			sercomm,scpart-id = <5>;
+			read-only;
+		};
+
+		ubiconcat0: partition@1000000 {
+			label = "File System 1";
+			reg = <0x1000000 0x2000000>;
+			sercomm,scpart-id = <6>;
+		};
+
+		partition@3000000 {
+			label = "File System 2";
+			reg = <0x3000000 0x2000000>;
+			sercomm,scpart-id = <7>;
+			read-only;
+		};
+
+		ubiconcat1: partition@5000000 {
+			label = "Configuration/log";
+			reg = <0x5000000 0x1400000>;
+			sercomm,scpart-id = <8>;
+		};
+
+		ubiconcat2: partition@6400000 {
+			label = "Debug (Ftool)";
+			reg = <0x6400000 0x1a00000>;
+			sercomm,scpart-id = <9>;
+		};
+
+		ubiconcat3: partition@8000000 {
+			label = "Container";
+			reg = <0x8000000 0x7c00000>;
+			sercomm,scpart-id = <10>;
+		};
+	};
+};
+
+&pcie {
+	status = "okay";
+};
+
+&pcie0 {
+	wifi@0,0 {
+		compatible = "mediatek,mt76";
+		reg = <0x0000 0 0 0 0>;
+		mediatek,mtd-eeprom = <&factory 0x8000>;
+		ieee80211-freq-limit = <5000000 6000000>;
+	};
+};
+
+&pcie1 {
+	wifi@0,0 {
+		compatible = "mediatek,mt76";
+		reg = <0x0000 0 0 0 0>;
+		mediatek,mtd-eeprom = <&factory 0x0>;
+		ieee80211-freq-limit = <2400000 2500000>;
+	};
+};
+
+&gmac0 {
+	nvmem-cells = <&macaddr_factory_21000>;
+	nvmem-cell-names = "mac-address";
+};
+
+&gmac1 {
+	status = "okay";
+	label = "wan";
+	phy-handle = <&ethphy0>;
+};
+
+&mdio {
+	ethphy0: ethernet-phy@0 {
+		reg = <0>;
+	};
+};
+
+&switch0 {
+	ports {
+		port@1 {
+			status = "okay";
+			label = "lan1";
+		};
+
+		port@2 {
+			status = "okay";
+			label = "lan2";
+		};
+
+		port@3 {
+			status = "okay";
+			label = "lan3";
+		};
+
+		port@4 {
+			status = "okay";
+			label = "lan4";
+		};
+	};
+};
+
+&uartlite3 {
+	status = "okay";
+};
+
+&state_default {
+	gpio {
+		groups = "jtag", "uart2";
+		function = "gpio";
+	};
+};