ARM: dts: BCM5301X: Add DT for Asus RT-AC88U
authorArınç ÜNAL <arinc.unal@arinc9.com>
Tue, 21 Sep 2021 12:19:01 +0000 (20:19 +0800)
committerFlorian Fainelli <f.fainelli@gmail.com>
Wed, 22 Sep 2021 18:37:27 +0000 (11:37 -0700)
Hardware Info
-------------

Processor - Broadcom BCM4709C0KFEBG dual-core @ 1.4 GHz
Switch - BCM53012 in BCM4709C0KFEBG & external RTL8365MB
DDR3 RAM - 512 MB
Flash - 128 MB (ESMT F59L1G81LA-25T)
2.4GHz - BCM4366 4×4 2.4/5G single chip 802.11ac SoC
5GHz - BCM4366 4×4 2.4/5G single chip 802.11ac SoC
Ports - 8 Ports, 1 WAN Ports

Tested on OpenWrt on kernel 5.10 built with DSA driver.

Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
arch/arm/boot/dts/Makefile
arch/arm/boot/dts/bcm47094-asus-rt-ac88u.dts [new file with mode: 0644]

index 4213546db40eb1074821917615a88326a7a0dd8a..2093b9d5cc715b087ba3d64e3861b7e233a6efef 100644 (file)
@@ -117,6 +117,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
        bcm4709-netgear-r7000.dtb \
        bcm4709-netgear-r8000.dtb \
        bcm4709-tplink-archer-c9-v1.dtb \
+       bcm47094-asus-rt-ac88u.dtb \
        bcm47094-dlink-dir-885l.dtb \
        bcm47094-linksys-panamera.dtb \
        bcm47094-luxul-abr-4500.dtb \
diff --git a/arch/arm/boot/dts/bcm47094-asus-rt-ac88u.dts b/arch/arm/boot/dts/bcm47094-asus-rt-ac88u.dts
new file mode 100644 (file)
index 0000000..4480605
--- /dev/null
@@ -0,0 +1,200 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/*
+ * Copyright (C) 2021 Arınç ÜNAL <arinc.unal@arinc9.com>
+ */
+
+/dts-v1/;
+
+#include "bcm47094.dtsi"
+#include "bcm5301x-nand-cs0-bch8.dtsi"
+
+/ {
+       compatible = "asus,rt-ac88u", "brcm,bcm47094", "brcm,bcm4708";
+       model = "Asus RT-AC88U";
+
+       chosen {
+               bootargs = "earlycon";
+       };
+
+       memory@0 {
+               device_type = "memory";
+               reg = <0x00000000 0x08000000>,
+                     <0x88000000 0x18000000>;
+       };
+
+       nvram@1c080000 {
+               compatible = "brcm,nvram";
+               reg = <0x1c080000 0x00180000>;
+       };
+
+       leds {
+               compatible = "gpio-leds";
+
+               power {
+                       label = "white:power";
+                       gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>;
+                       linux,default-trigger = "default-on";
+               };
+
+               wan-red {
+                       label = "red:wan";
+                       gpios = <&chipcommon 5 GPIO_ACTIVE_HIGH>;
+               };
+
+               lan {
+                       label = "white:lan";
+                       gpios = <&chipcommon 21 GPIO_ACTIVE_LOW>;
+               };
+
+               usb2 {
+                       label = "white:usb2";
+                       gpios = <&chipcommon 16 GPIO_ACTIVE_LOW>;
+                       trigger-sources = <&ehci_port2>;
+                       linux,default-trigger = "usbport";
+               };
+
+               usb3 {
+                       label = "white:usb3";
+                       gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>;
+                       trigger-sources = <&ehci_port1>, <&xhci_port1>;
+                       linux,default-trigger = "usbport";
+               };
+
+               wps {
+                       label = "white:wps";
+                       gpios = <&chipcommon 19 GPIO_ACTIVE_LOW>;
+               };
+       };
+
+       gpio-keys {
+               compatible = "gpio-keys";
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               wps {
+                       label = "WPS";
+                       linux,code = <KEY_WPS_BUTTON>;
+                       gpios = <&chipcommon 20 GPIO_ACTIVE_LOW>;
+               };
+
+               reset {
+                       label = "Reset";
+                       linux,code = <KEY_RESTART>;
+                       gpios = <&chipcommon 11 GPIO_ACTIVE_LOW>;
+               };
+
+               wifi {
+                       label = "Wi-Fi";
+                       linux,code = <KEY_RFKILL>;
+                       gpios = <&chipcommon 18 GPIO_ACTIVE_LOW>;
+               };
+
+               led {
+                       label = "Backlight";
+                       linux,code = <KEY_BRIGHTNESS_ZERO>;
+                       gpios = <&chipcommon 4 GPIO_ACTIVE_LOW>;
+               };
+       };
+};
+
+&srab {
+       compatible = "brcm,bcm53012-srab", "brcm,bcm5301x-srab";
+       status = "okay";
+       dsa,member = <0 0>;
+
+       ports {
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               port@0 {
+                       reg = <0>;
+                       label = "lan4";
+               };
+
+               port@1 {
+                       reg = <1>;
+                       label = "lan3";
+               };
+
+               port@2 {
+                       reg = <2>;
+                       label = "lan2";
+               };
+
+               port@3 {
+                       reg = <3>;
+                       label = "lan1";
+               };
+
+               port@4 {
+                       reg = <4>;
+                       label = "wan";
+               };
+
+               sw0_p5: port@5 {
+                       reg = <5>;
+                       label = "extsw";
+
+                       fixed-link {
+                               speed = <1000>;
+                               full-duplex;
+                       };
+               };
+
+               port@7 {
+                       reg = <7>;
+                       ethernet = <&gmac1>;
+                       label = "cpu";
+
+                       fixed-link {
+                               speed = <1000>;
+                               full-duplex;
+                       };
+               };
+
+               port@8 {
+                       reg = <8>;
+                       ethernet = <&gmac2>;
+                       label = "cpu";
+                       status = "disabled";
+
+                       fixed-link {
+                               speed = <1000>;
+                               full-duplex;
+                       };
+               };
+       };
+};
+
+&usb2 {
+       vcc-gpio = <&chipcommon 9 GPIO_ACTIVE_HIGH>;
+};
+
+&usb3_phy {
+       status = "okay";
+};
+
+&nandcs {
+       partitions {
+               compatible = "fixed-partitions";
+               #address-cells = <1>;
+               #size-cells = <1>;
+
+               partition@0 {
+                       label = "boot";
+                       reg = <0x00000000 0x00080000>;
+                       read-only;
+               };
+
+               partition@80000 {
+                       label = "nvram";
+                       reg = <0x00080000 0x00180000>;
+               };
+
+               partition@200000 {
+                       label = "firmware";
+                       reg = <0x00200000 0x07e00000>;
+                       compatible = "brcm,trx";
+               };
+       };
+};