// SPDX-License-Identifier: GPL-2.0-or-later
-#include "rtl838x.dtsi"
-
-#include <dt-bindings/input/input.h>
-#include <dt-bindings/gpio/gpio.h>
+#include "rtl8380_tplink_sg2xxx.dtsi"
/ {
compatible = "tplink,sg2008p-v1", "realtek,rtl838x-soc";
model = "TP-Link SG2008P v1";
-
- aliases {
- led-boot = &led_power;
- led-failsafe = &led_power;
- led-running = &led_power;
- led-upgrade = &led_power;
- };
-
- memory@0 {
- device_type = "memory";
- reg = <0x0 0x10000000>;
- };
-
- keys {
- compatible = "gpio-keys";
-
- reset {
- label = "reset";
- gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_RESTART>;
- };
- };
-
- gpio-restart {
- compatible = "gpio-restart";
- gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
- };
-
- leds {
- compatible = "gpio-leds";
-
- led_power: led-0 {
- label = "green:power";
- gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
- };
- };
-
- i2c1: i2c-gpio-1 {
- compatible = "i2c-gpio";
- scl-gpios = <&gpio0 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
- sda-gpios = <&gpio0 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
- i2c-gpio,delay-us = <2>;
- #address-cells = <1>;
- #size-cells = <0>;
-
- tps23861@28 {
- compatible = "ti,tps23861";
- reg = <0x28>;
- shunt-resistor-micro-ohms = <255000>;
- };
- };
-
- watchdog {
- compatible = "linux,wdt-gpio";
- gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>;
- hw_algo = "toggle";
- /* SGM706 specs: typical 1.6s, but minimum 1.0s. */
- hw_margin_ms = <1000>;
- };
-
- virtual_flash {
- compatible = "mtd-concat";
-
- devices = <&syspart &usrpart>;
-
- partitions {
- compatible = "fixed-partitions";
- #address-cells = <1>;
- #size-cells = <1>;
-
- partition@0 {
- compatible = "denx,uimage";
- label = "firmware";
- reg = <0x0 0x1a00000>;
- };
- };
- };
-};
-
-&gpio0 {
- watchdog-enable {
- gpio-hog;
- gpios = <14 GPIO_ACTIVE_LOW>;
- output-low;
- line-name = "watchdog-enable";
- };
-};
-
-&spi0 {
- status = "okay";
-
- flash@0 {
- compatible = "jedec,spi-nor";
- reg = <0>;
- spi-max-frequency = <10000000>;
-
- partitions {
- compatible = "fixed-partitions";
- #address-cells = <1>;
- #size-cells = <1>;
-
- partition@0 {
- label = "u-boot";
- reg = <0x0 0xe0000>;
- read-only;
- };
- partition@e0000 {
- label = "u-boot-env";
- reg = <0xe0000 0x20000>;
- };
- syspart: partition@100000 {
- label = "sys";
- reg = <0x100000 0x600000>;
- };
- usrpart: partition@700000 {
- label = "usrimg1";
- reg = <0x700000 0x1400000>;
- };
- partition@1b00000 {
- label = "usrappfs";
- reg = <0x1b00000 0x400000>;
- };
- partition@1f00000 {
- label = "para";
- reg = <0x1f00000 0x100000>;
- read-only;
- };
- };
- };
-};
-
-ðernet0 {
- mdio: mdio-bus {
- compatible = "realtek,rtl838x-mdio";
- #address-cells = <1>;
- #size-cells = <0>;
-
- INTERNAL_PHY(8)
- INTERNAL_PHY(9)
- INTERNAL_PHY(10)
- INTERNAL_PHY(11)
- INTERNAL_PHY(12)
- INTERNAL_PHY(13)
- INTERNAL_PHY(14)
- INTERNAL_PHY(15)
- };
-};
-
-&switch0 {
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
-
- SWITCH_PORT(15, 1, internal)
- SWITCH_PORT(14, 2, internal)
- SWITCH_PORT(13, 3, internal)
- SWITCH_PORT(12, 4, internal)
- SWITCH_PORT(11, 5, internal)
- SWITCH_PORT(10, 6, internal)
- SWITCH_PORT(9, 7, internal)
- SWITCH_PORT(8, 8, internal)
-
- port@28 {
- ethernet = <ðernet0>;
- reg = <28>;
- phy-mode = "internal";
-
- fixed-link {
- speed = <1000>;
- full-duplex;
- };
- };
- };
};
--- /dev/null
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#include "rtl838x.dtsi"
+
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/gpio/gpio.h>
+
+/ {
+ aliases {
+ led-boot = &led_power;
+ led-failsafe = &led_power;
+ led-running = &led_power;
+ led-upgrade = &led_power;
+ };
+
+ memory@0 {
+ device_type = "memory";
+ reg = <0x0 0x10000000>;
+ };
+
+ keys {
+ compatible = "gpio-keys";
+
+ reset {
+ label = "reset";
+ gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_RESTART>;
+ };
+ };
+
+ gpio-restart {
+ compatible = "gpio-restart";
+ gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led_power: led-0 {
+ label = "green:power";
+ gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
+ };
+ };
+
+ i2c1: i2c-gpio-1 {
+ compatible = "i2c-gpio";
+ scl-gpios = <&gpio0 0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+ sda-gpios = <&gpio0 1 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+ i2c-gpio,delay-us = <2>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ tps23861@28 {
+ compatible = "ti,tps23861";
+ reg = <0x28>;
+ shunt-resistor-micro-ohms = <255000>;
+ };
+ };
+
+ watchdog {
+ compatible = "linux,wdt-gpio";
+ gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>;
+ hw_algo = "toggle";
+ /* SGM706 specs: typical 1.6s, but minimum 1.0s. */
+ hw_margin_ms = <1000>;
+ };
+
+ virtual_flash {
+ compatible = "mtd-concat";
+
+ devices = <&syspart &usrpart>;
+
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ compatible = "denx,uimage";
+ label = "firmware";
+ reg = <0x0 0x1a00000>;
+ };
+ };
+ };
+};
+
+&gpio0 {
+ watchdog-enable {
+ gpio-hog;
+ gpios = <14 GPIO_ACTIVE_LOW>;
+ output-low;
+ line-name = "watchdog-enable";
+ };
+};
+
+&spi0 {
+ status = "okay";
+
+ flash@0 {
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <10000000>;
+
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x0 0xe0000>;
+ read-only;
+ };
+ partition@e0000 {
+ label = "u-boot-env";
+ reg = <0xe0000 0x20000>;
+ };
+ syspart: partition@100000 {
+ label = "sys";
+ reg = <0x100000 0x600000>;
+ };
+ usrpart: partition@700000 {
+ label = "usrimg1";
+ reg = <0x700000 0x1400000>;
+ };
+ partition@1b00000 {
+ label = "usrappfs";
+ reg = <0x1b00000 0x400000>;
+ };
+ partition@1f00000 {
+ label = "para";
+ reg = <0x1f00000 0x100000>;
+ read-only;
+ };
+ };
+ };
+};
+
+ðernet0 {
+ mdio: mdio-bus {
+ compatible = "realtek,rtl838x-mdio";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ INTERNAL_PHY(8)
+ INTERNAL_PHY(9)
+ INTERNAL_PHY(10)
+ INTERNAL_PHY(11)
+ INTERNAL_PHY(12)
+ INTERNAL_PHY(13)
+ INTERNAL_PHY(14)
+ INTERNAL_PHY(15)
+ };
+};
+
+&switch0 {
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ SWITCH_PORT(15, 1, internal)
+ SWITCH_PORT(14, 2, internal)
+ SWITCH_PORT(13, 3, internal)
+ SWITCH_PORT(12, 4, internal)
+ SWITCH_PORT(11, 5, internal)
+ SWITCH_PORT(10, 6, internal)
+ SWITCH_PORT(9, 7, internal)
+ SWITCH_PORT(8, 8, internal)
+
+ port@28 {
+ ethernet = <ðernet0>;
+ reg = <28>;
+ phy-mode = "internal";
+
+ fixed-link {
+ speed = <1000>;
+ full-duplex;
+ };
+ };
+ };
+};