ARM: dts: BCM5301X: Add DT for ASUS RT-AC3200

Add the device tree for ASUS RT-AC3200 which is an AC3200 router featuring
5 Ethernet ports over the integrated Broadcom switch.

Hardware info:
* Processor: Broadcom BCM4709A0 dual-core @ 1.0 GHz
* Switch: BCM53012 in BCM4709A0
* DDR3 RAM: 256 MB
* Flash: 128 MB
* 2.4GHz: BCM43602 3x3 single chip 802.11b/g/n SoC
* 5GHz: BCM43602 3x3 two chips 802.11a/n/ac SoC
* Ports: 4 LAN Ports, 1 WAN Port

Co-developed-by: Tom Brautaset <tbrautaset@gmail.com>
Signed-off-by: Tom Brautaset <tbrautaset@gmail.com>
Signed-off-by: Arınç ÜNAL <arinc.unal@arinc9.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20240423-for-soc-asus-rt-ac3200-ac5300-v3-3-23d33cfafe7a@arinc9.com
Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
This commit is contained in:
Arınç ÜNAL 2024-04-23 12:50:47 +03:00 committed by Florian Fainelli
parent 5b4ce81fc1
commit b116239094
2 changed files with 151 additions and 0 deletions

View File

@ -64,6 +64,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
bcm47081-luxul-xap-1410.dtb \
bcm47081-luxul-xwr-1200.dtb \
bcm47081-tplink-archer-c5-v2.dtb \
bcm4709-asus-rt-ac3200.dtb \
bcm4709-asus-rt-ac87u.dtb \
bcm4709-buffalo-wxr-1900dhp.dtb \
bcm4709-linksys-ea9200.dtb \

View File

@ -0,0 +1,150 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
/*
* Author: Tom Brautaset <tbrautaset@gmail.com>
*/
/dts-v1/;
#include "bcm4709.dtsi"
#include "bcm5301x-nand-cs0-bch8.dtsi"
#include <dt-bindings/leds/common.h>
/ {
compatible = "asus,rt-ac3200", "brcm,bcm4709", "brcm,bcm4708";
model = "ASUS RT-AC3200";
memory@0 {
reg = <0x00000000 0x08000000>,
<0x88000000 0x08000000>;
device_type = "memory";
};
nvram@1c080000 {
compatible = "brcm,nvram";
reg = <0x1c080000 0x00180000>;
et0macaddr: et0macaddr {
#nvmem-cell-cells = <1>;
};
};
gpio-keys {
compatible = "gpio-keys";
button-reset {
label = "Reset";
linux,code = <KEY_RESTART>;
gpios = <&chipcommon 11 GPIO_ACTIVE_LOW>;
};
button-wifi {
label = "Wi-Fi";
linux,code = <KEY_RFKILL>;
gpios = <&chipcommon 4 GPIO_ACTIVE_LOW>;
};
button-wps {
label = "WPS";
linux,code = <KEY_WPS_BUTTON>;
gpios = <&chipcommon 7 GPIO_ACTIVE_LOW>;
};
};
leds {
compatible = "gpio-leds";
led-power {
color = <LED_COLOR_ID_WHITE>;
function = LED_FUNCTION_POWER;
gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>;
linux,default-trigger = "default-on";
};
led-wan-red {
color = <LED_COLOR_ID_RED>;
function = LED_FUNCTION_WAN;
gpios = <&chipcommon 5 GPIO_ACTIVE_HIGH>;
};
led-wps {
color = <LED_COLOR_ID_WHITE>;
function = LED_FUNCTION_WPS;
gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>;
};
};
};
&gmac0 {
nvmem-cells = <&et0macaddr 0>;
nvmem-cell-names = "mac-address";
};
&gmac1 {
nvmem-cells = <&et0macaddr 1>;
nvmem-cell-names = "mac-address";
};
&gmac2 {
nvmem-cells = <&et0macaddr 2>;
nvmem-cell-names = "mac-address";
};
&nandcs {
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
reg = <0x00000000 0x00080000>;
label = "boot";
read-only;
};
partition@80000 {
reg = <0x00080000 0x00180000>;
label = "nvram";
};
partition@200000 {
compatible = "brcm,trx";
reg = <0x00200000 0x07e00000>;
label = "firmware";
};
};
};
&srab {
status = "okay";
ports {
port@0 {
label = "wan";
};
port@1 {
label = "lan1";
};
port@2 {
label = "lan2";
};
port@3 {
label = "lan3";
};
port@4 {
label = "lan4";
};
};
};
&usb2 {
vcc-gpio = <&chipcommon 9 GPIO_ACTIVE_HIGH>;
};
&usb3_phy {
status = "okay";
};