This pull request contains Broadcom ARM64-based SoCs Device Tree changes
for 5.13, please pull the following: - Rafal continues to add support for the 4908 SoCs and describes the USB PHY, firmware flash partitions and Ethernet switch and Ethernet controller. He also adds support for the TP-Link Archer C2300 V1 router and upates the Netgear R8000P and Asus GT-AC5300 routers network ports description. -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmBiINoACgkQh9CWnEQH BwToUA//WssP2pUzjsNev3kdTiOix/Vs/bkKJ9VlGRkmKLsYQJKtIjM1h7GrxrBS d4cUIjgt0sBicLnH/+vXWWzWnle51ZnVVjjPxywxT2SEqp/69elOqH/CnELQF6dD 9nvZgH5VnWi+hgE/yBgfkY5uHjzUnXp8unWkWagHncgaEndPJy7DdHRru50fy0CN bqHbJzHmeJfv/TVdfCAdOFTv1MGi9lcmhIlMerPtxoaf1aX2QZJ99Wc4BoTEfmK6 DP+LLsefewuWeDm/SafZdK3pLg3QyUzMrtrNa7KLNUzNhH69gtUWfjY1tpJn+vUF azD85U+cP70I1+DdVrZ+grUW2JgE1DmMdj/VtUOR80mjrEZDn7fbMldR6X049fjr CNanRMlDuCFe3YZbqqblrfVgQB/iEgI6YHoYZJSbzJNccM6dYv1Txv0jJUtUMgAs TZ7QUFZEJ6BPL6JYb/fIxLvp0gUUihO6qESzxtUFiBnxDB57hL9lZshcsOlRoKTa eAOwNd0F8VCrIc89po3dDTZsr94qtmHpHzttbm7Hr2xwsF3hCsCODn3J9GSdk7OP lI004I0cr6vYwJI+CYgEEf4wfDXCE7JvWIB0uvk307gUbnxR/wlI1YWV/+uVDAHu TRgE7clsR6ZtWxQIMulTSmitm9M5EtZ81E0a1iAnO5wUKmfMDtg= =MdDK -----END PGP SIGNATURE----- Merge tag 'arm-soc/for-5.13/devicetre-arm64' of https://github.com/Broadcom/stblinux into arm/dt This pull request contains Broadcom ARM64-based SoCs Device Tree changes for 5.13, please pull the following: - Rafal continues to add support for the 4908 SoCs and describes the USB PHY, firmware flash partitions and Ethernet switch and Ethernet controller. He also adds support for the TP-Link Archer C2300 V1 router and upates the Netgear R8000P and Asus GT-AC5300 routers network ports description. * tag 'arm-soc/for-5.13/devicetre-arm64' of https://github.com/Broadcom/stblinux: arm64: dts: broadcom: bcm4908: add Ethernet MAC addr arm64: dts: broadcom: bcm4908: add Ethernet TX irq arm64: dts: broadcom: bcm4908: set Asus GT-AC5300 port 7 PHY mode arm64: dts: broadcom: bcm4908: add TP-Link Archer C2300 V1 dt-bindings: arm: bcm: document TP-Link Archer C2300 binding arm64: dts: broadcom: bcm4908: fix switch parent node name arm64: dts: broadcom: bcm4908: describe firmware partitions arm64: dts: broadcom: bcm4908: add remaining Netgear R8000P LEDs arm64: dts: broadcom: bcm4908: describe Netgear R8000P switch arm64: dts: broadcom: bcm4908: describe Ethernet controller arm64: dts: broadcom: bcm4908: describe USB PHY Link: https://lore.kernel.org/r/20210330184006.1451315-2-f.fainelli@gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
commit
3b73ea6c80
|
@ -21,6 +21,7 @@ properties:
|
|||
items:
|
||||
- enum:
|
||||
- netgear,r8000p
|
||||
- tplink,archer-c2300-v1
|
||||
- const: brcm,bcm4906
|
||||
- const: brcm,bcm4908
|
||||
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
# SPDX-License-Identifier: GPL-2.0
|
||||
dtb-$(CONFIG_ARCH_BCM4908) += bcm4906-netgear-r8000p.dtb
|
||||
dtb-$(CONFIG_ARCH_BCM4908) += bcm4906-tplink-archer-c2300-v1.dtb
|
||||
dtb-$(CONFIG_ARCH_BCM4908) += bcm4908-asus-gt-ac5300.dtb
|
||||
|
|
|
@ -18,11 +18,106 @@
|
|||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
wps {
|
||||
led-power-white {
|
||||
function = LED_FUNCTION_POWER;
|
||||
color = <LED_COLOR_ID_WHITE>;
|
||||
gpios = <&gpio0 8 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-power-amber {
|
||||
function = LED_FUNCTION_POWER;
|
||||
color = <LED_COLOR_ID_AMBER>;
|
||||
gpios = <&gpio0 9 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-wps {
|
||||
function = LED_FUNCTION_WPS;
|
||||
color = <LED_COLOR_ID_WHITE>;
|
||||
gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-2ghz {
|
||||
function = "2ghz";
|
||||
color = <LED_COLOR_ID_WHITE>;
|
||||
gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-5ghz-1 {
|
||||
function = "5ghz-1";
|
||||
color = <LED_COLOR_ID_WHITE>;
|
||||
gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-5ghz-2 {
|
||||
function = "5ghz-2";
|
||||
color = <LED_COLOR_ID_WHITE>;
|
||||
gpios = <&gpio0 16 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-usb2 {
|
||||
function = "usb2";
|
||||
color = <LED_COLOR_ID_WHITE>;
|
||||
gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-usb3 {
|
||||
function = "usb3";
|
||||
color = <LED_COLOR_ID_WHITE>;
|
||||
gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-wifi {
|
||||
function = "wifi";
|
||||
color = <LED_COLOR_ID_WHITE>;
|
||||
gpios = <&gpio0 56 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&enet {
|
||||
nvmem-cells = <&base_mac_addr>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
&usb_phy {
|
||||
brcm,ioc = <1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ehci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ohci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&xhci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ports {
|
||||
port@0 {
|
||||
label = "lan4";
|
||||
};
|
||||
|
||||
port@1 {
|
||||
label = "lan3";
|
||||
};
|
||||
|
||||
port@2 {
|
||||
label = "lan2";
|
||||
};
|
||||
|
||||
port@3 {
|
||||
label = "lan1";
|
||||
};
|
||||
|
||||
port@7 {
|
||||
reg = <7>;
|
||||
phy-mode = "internal";
|
||||
phy-handle = <&phy12>;
|
||||
label = "wan";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -40,11 +135,21 @@
|
|||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
compatible = "nvmem-cells";
|
||||
label = "cferom";
|
||||
reg = <0x0 0x100000>;
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges = <0 0x0 0x100000>;
|
||||
|
||||
base_mac_addr: mac@106a0 {
|
||||
reg = <0x106a0 0x6>;
|
||||
};
|
||||
};
|
||||
|
||||
partition@100000 {
|
||||
compatible = "brcm,bcm4908-firmware";
|
||||
label = "firmware";
|
||||
reg = <0x100000 0x4400000>;
|
||||
};
|
||||
|
|
|
@ -0,0 +1,182 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/leds/common.h>
|
||||
|
||||
#include "bcm4906.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "tplink,archer-c2300-v1", "brcm,bcm4906", "brcm,bcm4908";
|
||||
model = "TP-Link Archer C2300 V1";
|
||||
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0x00 0x00 0x00 0x20000000>;
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
led-power {
|
||||
function = LED_FUNCTION_POWER;
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
gpios = <&gpio0 0 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-2ghz {
|
||||
function = "2ghz";
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-5ghz {
|
||||
function = "5ghz";
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-wan-amber {
|
||||
function = LED_FUNCTION_WAN;
|
||||
color = <LED_COLOR_ID_AMBER>;
|
||||
gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
led-wan-blue {
|
||||
function = LED_FUNCTION_WAN;
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
gpios = <&gpio0 10 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-lan {
|
||||
function = LED_FUNCTION_LAN;
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
gpios = <&gpio0 12 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-wps {
|
||||
function = LED_FUNCTION_WPS;
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-usb2 {
|
||||
function = "usb2";
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
gpios = <&gpio0 15 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-usb3 {
|
||||
function = "usbd3";
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-brightness {
|
||||
function = LED_FUNCTION_BACKLIGHT;
|
||||
color = <LED_COLOR_ID_WHITE>;
|
||||
gpios = <&gpio0 19 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
gpio-keys-polled {
|
||||
compatible = "gpio-keys-polled";
|
||||
poll-interval = <100>;
|
||||
|
||||
brightness {
|
||||
label = "LEDs";
|
||||
linux,code = <KEY_BRIGHTNESS_ZERO>;
|
||||
gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
wps {
|
||||
label = "WPS";
|
||||
linux,code = <KEY_WPS_BUTTON>;
|
||||
gpios = <&gpio0 21 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
wifi {
|
||||
label = "WiFi";
|
||||
linux,code = <KEY_RFKILL>;
|
||||
gpios = <&gpio0 22 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
restart {
|
||||
label = "Reset";
|
||||
linux,code = <KEY_RESTART>;
|
||||
gpios = <&gpio0 23 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&usb_phy {
|
||||
brcm,ioc = <1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ehci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ohci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&xhci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ports {
|
||||
port@0 {
|
||||
label = "lan4";
|
||||
};
|
||||
|
||||
port@1 {
|
||||
label = "lan3";
|
||||
};
|
||||
|
||||
port@2 {
|
||||
label = "lan2";
|
||||
};
|
||||
|
||||
port@3 {
|
||||
label = "lan1";
|
||||
};
|
||||
|
||||
port@7 {
|
||||
reg = <7>;
|
||||
phy-mode = "internal";
|
||||
phy-handle = <&phy12>;
|
||||
label = "wan";
|
||||
};
|
||||
};
|
||||
|
||||
&nandcs {
|
||||
nand-ecc-strength = <4>;
|
||||
nand-ecc-step-size = <512>;
|
||||
nand-on-flash-bbt;
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
partitions {
|
||||
compatible = "brcm,bcm4908-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
label = "cferom";
|
||||
reg = <0x0 0x100000>;
|
||||
};
|
||||
|
||||
partition@100000 {
|
||||
compatible = "brcm,bcm4908-firmware";
|
||||
reg = <0x100000 0x3900000>;
|
||||
};
|
||||
|
||||
partition@5800000 {
|
||||
compatible = "brcm,bcm4908-firmware";
|
||||
reg = <0x3a00000 0x3900000>;
|
||||
};
|
||||
};
|
||||
};
|
|
@ -44,6 +44,28 @@
|
|||
};
|
||||
};
|
||||
|
||||
&enet {
|
||||
nvmem-cells = <&base_mac_addr>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
&usb_phy {
|
||||
brcm,ioc = <1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ehci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ohci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&xhci {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ports {
|
||||
port@0 {
|
||||
label = "lan2";
|
||||
|
@ -65,6 +87,7 @@
|
|||
port@7 {
|
||||
label = "sw";
|
||||
reg = <7>;
|
||||
phy-mode = "rgmii";
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
|
@ -105,13 +128,32 @@
|
|||
#size-cells = <0>;
|
||||
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
compatible = "brcm,bcm4908-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
compatible = "nvmem-cells";
|
||||
label = "cferom";
|
||||
reg = <0x0 0x100000>;
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges = <0 0x0 0x100000>;
|
||||
|
||||
base_mac_addr: mac@106a0 {
|
||||
reg = <0x106a0 0x6>;
|
||||
};
|
||||
};
|
||||
|
||||
partition@100000 {
|
||||
compatible = "brcm,bcm4908-firmware";
|
||||
reg = <0x100000 0x5700000>;
|
||||
};
|
||||
|
||||
partition@5800000 {
|
||||
compatible = "brcm,bcm4908-firmware";
|
||||
reg = <0x5800000 0x5700000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -2,6 +2,8 @@
|
|||
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
#include <dt-bindings/phy/phy.h>
|
||||
#include <dt-bindings/soc/bcm-pmb.h>
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
|
@ -110,28 +112,52 @@
|
|||
#size-cells = <1>;
|
||||
ranges = <0x00 0x00 0x80000000 0x281000>;
|
||||
|
||||
usb@c300 {
|
||||
enet: ethernet@2000 {
|
||||
compatible = "brcm,bcm4908-enet";
|
||||
reg = <0x2000 0x1000>;
|
||||
|
||||
interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-names = "rx", "tx";
|
||||
};
|
||||
|
||||
usb_phy: usb-phy@c200 {
|
||||
compatible = "brcm,bcm4908-usb-phy";
|
||||
reg = <0xc200 0x100>;
|
||||
reg-names = "ctrl";
|
||||
power-domains = <&pmb BCM_PMB_HOST_USB>;
|
||||
dr_mode = "host";
|
||||
brcm,has-xhci;
|
||||
brcm,has-eohci;
|
||||
#phy-cells = <1>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
ehci: usb@c300 {
|
||||
compatible = "generic-ehci";
|
||||
reg = <0xc300 0x100>;
|
||||
interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
|
||||
phys = <&usb_phy PHY_TYPE_USB2>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
usb@c400 {
|
||||
ohci: usb@c400 {
|
||||
compatible = "generic-ohci";
|
||||
reg = <0xc400 0x100>;
|
||||
interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
|
||||
phys = <&usb_phy PHY_TYPE_USB2>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
usb@d000 {
|
||||
xhci: usb@d000 {
|
||||
compatible = "generic-xhci";
|
||||
reg = <0xd000 0x8c8>;
|
||||
interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
|
||||
phys = <&usb_phy PHY_TYPE_USB3>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
ethernet-switch@80000 {
|
||||
bus@80000 {
|
||||
compatible = "simple-bus";
|
||||
#size-cells = <1>;
|
||||
#address-cells = <1>;
|
||||
|
@ -182,6 +208,17 @@
|
|||
phy-mode = "internal";
|
||||
phy-handle = <&phy11>;
|
||||
};
|
||||
|
||||
port@8 {
|
||||
reg = <8>;
|
||||
phy-mode = "internal";
|
||||
ethernet = <&enet>;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -222,7 +259,7 @@
|
|||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
power-controller@2800c0 {
|
||||
pmb: power-controller@2800c0 {
|
||||
compatible = "brcm,bcm4908-pmb";
|
||||
reg = <0x2800c0 0x40>;
|
||||
#power-domain-cells = <1>;
|
||||
|
|
Loading…
Reference in New Issue