// SPDX-License-Identifier: GPL-2.0-or-later #include "rtl838x.dtsi" #include #include / { 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 = ; }; }; 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@30 { compatible = "ti,tps23861"; reg = <0x30>; 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(8, 1, internal) SWITCH_PORT(9, 2, internal) SWITCH_PORT(10, 3, internal) SWITCH_PORT(11, 4, internal) SWITCH_PORT(12, 5, internal) SWITCH_PORT(13, 6, internal) SWITCH_PORT(14, 7, internal) SWITCH_PORT(15, 8, internal) port@28 { ethernet = <ðernet0>; reg = <28>; phy-mode = "internal"; fixed-link { speed = <1000>; full-duplex; }; }; }; };