// SPDX-License-Identifier: GPL-2.0-or-later OR MIT /dts-v1/; #include #include #include "qca953x.dtsi" / { compatible = "glinet,gl-s200", "qca,qca9531"; model = "GL.iNet GL-S200"; aliases { label-mac-device = ð0; }; keys { compatible = "gpio-keys"; pinctrl-names = "default"; pinctrl-0 = <&jtag_disable_pins>; reset { label = "reset"; linux,code = ; linux,input-type = ; gpios = <&gpio 3 GPIO_ACTIVE_LOW>; }; switch { label = "switch"; linux,code = ; linux,input-type = ; gpios = <&gpio 14 GPIO_ACTIVE_LOW>; }; }; leds { compatible = "gpio-leds"; blue_led { label = "gl-s200:blue"; gpios = <&gpio 13 GPIO_ACTIVE_HIGH>; default-state = "on"; }; white_led { label = "gl-s200:white"; gpios = <&gpio 12 GPIO_ACTIVE_HIGH>; default-state = "off"; }; orange_led { label = "gl-s200:orange"; gpios = <&gpio 4 GPIO_ACTIVE_HIGH>; default-state = "off"; }; }; gpio-export { compatible = "gpio-export"; gpio_zigbee_reset { gpio-export,name = "gpio1"; gpio-export,output = <1>; gpio-export,direction_may_change; gpios = <&gpio 1 GPIO_ACTIVE_HIGH>; }; gpio_zwave_reset { gpio-export,name = "gpio2"; gpio-export,output = <1>; gpio-export,direction_may_change; gpios = <&gpio 2 GPIO_ACTIVE_HIGH>; }; gpio_zigbee_upgrade { gpio-export,name = "gpio11"; gpio-export,output = <1>; gpio-export,direction_may_change; gpios = <&gpio 11 GPIO_ACTIVE_HIGH>; }; gpio_zwave_upgrade { gpio-export,name = "gpio17"; gpio-export,output = <1>; gpio-export,direction_may_change; gpios = <&gpio 17 GPIO_ACTIVE_HIGH>; }; }; }; &gpio { gpio-line-names = "","reset-zigbee","reset-zwave","reset", "LED-orange","","","","","","", "upgrade-zigbee","LED-white","LED-blue", "switch","","","upgrade-zwave"; }; &pcie0 { status = "okay"; }; &uart { status = "okay"; }; &spi { status = "okay"; flash@0 { compatible = "jedec,spi-nor"; reg = <0>; spi-max-frequency = <25000000>; nor_partitions: partitions { compatible = "fixed-partitions"; #address-cells = <1>; #size-cells = <1>; partition@0 { label = "u-boot"; reg = <0x000000 0x040000>; read-only; }; partition@40000 { label = "u-boot-env"; reg = <0x040000 0x010000>; }; partition@50000 { label = "art"; reg = <0x050000 0x010000>; read-only; nvmem-layout { compatible = "fixed-layout"; #address-cells = <1>; #size-cells = <1>; macaddr_wan_lan: macaddr@0 { compatible = "mac-base"; reg = <0x0 0x6>; #nvmem-cell-cells = <1>; }; calibration_art_1000: calibration@1000 { reg = <0x1000 0x440>; }; }; }; }; }; flash_nand: flash@1 { compatible = "spi-nand"; reg = <1>; spi-max-frequency = <25000000>; status = "disabled"; nand_partitions: partitions { compatible = "fixed-partitions"; #address-cells = <1>; #size-cells = <1>; nand_ubi: partition@0 { label = "ubi"; reg = <0x000000 0x8000000>; }; }; }; }; ð0 { status = "okay"; phy-handle = <&swphy4>; nvmem-cells = <&macaddr_wan_lan 0>; nvmem-cell-names = "mac-address"; }; ð1 { status = "okay"; nvmem-cells = <&macaddr_wan_lan 1>; nvmem-cell-names = "mac-address"; }; &wmac { status = "okay"; nvmem-cells = <&calibration_art_1000>; nvmem-cell-names = "calibration"; };