ath79: add support for ALFA Network N2Q
[openwrt/openwrt.git] / target / linux / ath79 / dts / qca9531_alfa-network_n2q.dts
diff --git a/target/linux/ath79/dts/qca9531_alfa-network_n2q.dts b/target/linux/ath79/dts/qca9531_alfa-network_n2q.dts
new file mode 100644 (file)
index 0000000..8dd91ab
--- /dev/null
@@ -0,0 +1,120 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "qca9531_alfa-network_r36a.dtsi"
+
+/ {
+       model = "ALFA Network N2Q";
+       compatible = "alfa-network,n2q", "qca,qca9531";
+
+       aliases {
+               led-boot = &led_usb;
+               led-failsafe = &led_usb;
+               led-upgrade = &led_usb;
+       };
+
+       gpio-export-pcf8574 {
+               compatible = "gpio-export";
+               #size-cells = <0>;
+
+               poe-passthrough {
+                       gpio-export,name = "poe-passthrough";
+                       gpio-export,output = <1>;
+                       gpios = <&pcf8574 0 GPIO_ACTIVE_LOW>;
+               };
+
+               usb-power {
+                       gpio-export,name = "usb-power";
+                       gpio-export,output = <0>;
+                       gpios = <&pcf8574 2 GPIO_ACTIVE_LOW>;
+               };
+       };
+
+       i2c {
+               compatible = "i2c-gpio";
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               sda-gpios = <&gpio 11 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+               scl-gpios = <&gpio  3 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+
+               pcf8574: pcf8574@20 {
+                       compatible = "nxp,pcf8574";
+                       reg = <0x20>;
+                       gpio-controller;
+                       #gpio-cells = <2>;
+               };
+       };
+
+       leds {
+               compatible = "gpio-leds";
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&enable_gpio4 &enable_gpio16>;
+
+               lan1 {
+                       label = "n2q:orange:lan1";
+                       gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
+               };
+
+               lan2 {
+                       label = "n2q:orange:lan2";
+                       gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
+               };
+
+               led_usb: usb {
+                       label = "n2q:green:usb";
+                       gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
+                       linux,default-trigger = "usbport";
+                       trigger-sources = <&hub_port0>;
+               };
+
+               minipcie {
+                       label = "n2q:green:minipcie";
+                       gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
+               };
+
+               wlan {
+                       label = "n2q:green:wlan";
+                       gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
+                       linux,default-trigger = "phy0tpt";
+               };
+       };
+
+       leds-pcf8574 {
+               compatible = "gpio-leds";
+
+               poe-passthrough {
+                       label = "n2q:green:poe-passthrough";
+                       gpios = <&pcf8574 1 GPIO_ACTIVE_LOW>;
+               };
+
+               signal1 {
+                       label = "n2q:red:signal1";
+                       gpios = <&pcf8574 3 GPIO_ACTIVE_LOW>;
+               };
+
+               signal2 {
+                       label = "n2q:orange:signal2";
+                       gpios = <&pcf8574 4 GPIO_ACTIVE_LOW>;
+               };
+
+               signal3 {
+                       label = "n2q:green:signal3";
+                       gpios = <&pcf8574 5 GPIO_ACTIVE_LOW>;
+               };
+       };
+};
+
+&eth0 {
+       mtd-mac-address = <&art 0x1002>;
+       mtd-mac-address-increment = <(-2)>;
+};
+
+&eth1 {
+       mtd-mac-address = <&art 0x1002>;
+       mtd-mac-address-increment = <(-1)>;
+};
+
+&pcie0 {
+       status = "okay";
+};