// SPDX-License-Identifier: GPL-2.0-or-later OR MIT #include "ar9344_teltonika_rut9xx.dtsi" #include / { model = "Teltonika RUT955 H7V3C0"; compatible = "teltonika,rut955-h7v3c0", "teltonika,rut9xx", "qca,ar9344"; aliases { led-boot = &led_system_green; led-failsafe = &led_system_red; led-running = &led_system_green; led-upgrade = &led_system_red; }; leds { compatible = "gpio-leds"; signal0 { label = "green:signal0"; gpios = <&gpio_ext 0 GPIO_ACTIVE_HIGH>; }; signal1 { label = "green:signal1"; gpios = <&gpio_ext 1 GPIO_ACTIVE_HIGH>; }; signal2 { label = "green:signal2"; gpios = <&gpio_ext 2 GPIO_ACTIVE_HIGH>; }; signal3 { label = "green:signal3"; gpios = <&gpio_ext 3 GPIO_ACTIVE_HIGH>; }; signal4 { label = "green:signal4"; gpios = <&gpio_ext 4 GPIO_ACTIVE_HIGH>; }; led_system_red: system_red { label = "red:system"; gpios = <&gpio_ext 5 GPIO_ACTIVE_HIGH>; }; led_system_green: system_green { label = "green:system"; gpios = <&gpio_ext 6 GPIO_ACTIVE_HIGH>; default-state = "on"; }; }; }; &gpio { pinctrl-names = "default"; pinctrl-0 = <&jtag_disable_pins>; gpio-line-names = "RS485_D", "led_wan", "wmac_lna", "mmc_cs", "EXT_INT", "", "", "", "", "", "", "", "", "led_lan2", "led_lan1", "", "i2c_scl", "i2c_sda", "", "", "", "", "led_lan3", "", "", "", "", "", "", "", "", ""; ext_lna { gpio-hog; gpios = <2 GPIO_ACTIVE_HIGH>; output-high; line-name = "rut955:wmac:ext_lna"; }; mmc_cs { gpio-hog; gpios = <3 GPIO_ACTIVE_HIGH>; output-high; line-name = "rut955:mmc:cs"; }; ext_int { gpio-hog; gpios = <4 GPIO_ACTIVE_LOW>; input; line-name = "rut955:ext:int"; }; uart1_td { gpio-hog; gpios = <18 GPIO_ACTIVE_HIGH>; output-high; line-name = "rut955:uart1:td"; }; uart1_rd { gpio-hog; gpios = <11 GPIO_ACTIVE_LOW>; input; line-name = "rut955:uart1:rd"; }; led_wan { gpio-hog; gpios = <1 GPIO_ACTIVE_HIGH>; output-high; line-name = "rut955:led:wan"; }; led_lan2 { gpio-hog; gpios = <13 GPIO_ACTIVE_HIGH>; output-high; line-name = "rut955:led:lan2"; }; led_lan1 { gpio-hog; gpios = <14 GPIO_ACTIVE_HIGH>; output-high; line-name = "rut955:led:lan1"; }; led_lan3 { gpio-hog; gpios = <22 GPIO_ACTIVE_HIGH>; output-high; line-name = "rut955:led:lan3"; }; }; &i2c0 { gpio_ext: gpio_ext@74 { status = "okay"; compatible = "nxp,pca9539"; reg = <0x74>; #address-cells = <1>; #size-cells = <0>; gpio-controller; #gpio-cells = <2>; reset-gpios = <&gpio 21 GPIO_ACTIVE_HIGH>; interrupt-parent = <&gpio>; interrupts = <4 IRQ_TYPE_EDGE_FALLING>; interrupt-controller; #interrupt-cells = <2>; gpio-line-names = "signal_bar0", "signal_bar1", "signal_bar2", "signal_bar3", "signal_bar4", "status_red", "status_green", "sim_sel", "DOUT1", "DOUT2", "DIN2", "DIN1", "MON", "MRST", "SDCD", "RS485_R"; }; }; ð0 { status = "okay"; phy-handle = <&swphy4>; nvmem-cells = <&macaddr_config_0 1>; nvmem-cell-names = "mac-address"; }; ð1 { status = "okay"; nvmem-cells = <&macaddr_config_0 0>; nvmem-cell-names = "mac-address"; }; &builtin_switch { pinctrl-names = "default"; pinctrl-0 = <&pmx_leds_switch>; }; &wmac { pinctrl-names = "default"; pinctrl-0 = <&pmx_ext_lna>; }; &pinmux { pmx_ext_lna: ext_lna { // EXT_LNA0 on GPIO 2 pinctrl-single,bits = <0x0 0x002e0000 0x00ff0000>; }; };