This pull request contains Broadcom ARM-based SoCs Device Tree changes
for 5.16, please pull the following: - Matthew provides a set of updates to the Northstar Plus Device Tree files to fix a number of warnings, and prepare the files to support the addition of the Cisco Meraki MX64/MX65 wireless controller devices and finally adds support for those boards. - Rafal continues to provide updates to the BCM5301X Device Tree files in order to fix warnings with the various node names, MDIO muxes and memory nodes. He also adds support for the external switches on the BCM53573 SoC and adds Tenda AC9 switch ports. - Christian provides the description of the Ethernet switch ports for the Cisco Meraki MR32 based on the 53016 SoC - Arinc adds support for the Asus RT-AC88U device based on the BCM4709 and featuring 8 Ethernet ports over the integrated and the external Realtek switch (not supported yet) - Stefan adds support for the Raspberry Pi Compute Module 4 IO board and does a number of preparatory changes to get there to the Device Tree files before doing the actual addition -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmFlvtQACgkQh9CWnEQH BwTOUA//bomocJlqdnsIyRRVrpAxDnaNKmFtEAIGb1okHeocweIy1HEXI4ssAmiR R+k74MpsgMyi9AP6zcJLAtkQCYw2xn01MjRfpidX42Qumvz8c/ZCKrlTd2YoUvGI IuhIjp2Mmb07Gte72tQ95WAP+86p4B7Q9P321hVv00ENXbI3tyO+ABjctLmFicFc YqQChdBMVQOBKS8xYxjLu8kJyYbuGIaA/3xhxx8y6PQ/TL8GQVwub79Yngg/XA6t 1hG1Jw+yRQlX2nM7rdzuALKUR1JBgo14yBrStyboLzgHOOTvLYE4JSq0Q5eRZxvw nrNYuxV74Z3J88OluP6qVUcMfj14c88dwueQKlvoZuCuSbIk3r/dbb8sijfud4JU GoUx1/+grfn0BK30UyF4p3DFoAIC29YlfDi6VNAfNN7hOpT+yXSo/01J4/twQfG8 0iruWA2dPVjL+4AMBW32fCx+6s59pLNS/psILgb0+BTeE9kqmmFgiPoiJOlWPztn loOjVH6eijfSUReUkExTMl0VU93Rgy3f45aM4HHWnHyy0/BlYaoQ0SjZVc0YMIhw lrfEutO/MXAik5Ga+BlG9e8OG7LHhcZmxt3NX1FLUpreLPdgz47aqjzbDxV2WSdg y0A6Lo/2tqCbljYOWgiNNw6XAg6z5e5Bb4DFkybsxUwHhVNL7zc= =KGAI -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmFvOiUACgkQmmx57+YA GNmQ/Q/+J2HunngXPMz68OysNCQ8tvT2eWRQo5Ju5KGiabXrF7QNeNPysxAwhvZv Wv0Bfg0aONEjfJgonub0ezKDd/GrsBxOaHdA/5VNcCGZyPvXfRRkvCkFggI3oQsO wWWX523kcsLyck59kixLOxJdHjplcwV/Hj6qW0+iGNCglVRDL73DoVzF5nqtUgMP WXcQl9L5YTjnCmRJwsQylqIZJzGIEhNwr5wYp/RtEVe9vdJ2uQ74PqLcZJZCPD1g WpMNgAS0w5ZocIbyRlvN5SmLI8gM7nwwmzp9Eq2q6bzpPKfBBcrSySPNEj3avTCc Fpb1GwlRECTlVc90eF1Om6garFkdO6xorxaagqQAebxSOZ5uWH5urzfUVSuKVBDv uTWUNXFghukjHVdnv1rblxfRlIzj5cFats/0lQTzjo/ankQMBs53vZ3720TV2uq7 D5go3cd4V6ebVP0NoINYs+4iO2BaXA32g7SwGier8X6p2xPVKuZ8+18+wytE1RoY hobWTwdY5DbsfV1+z1cksNHrgY1NRXVlKEw6gkw5RXMf2GZ7XSO1CpzNEHsp7J4y S51bmO7LZqx8wSq+WCQjL0RzQbzSmls28ofyiEAlsGG0wzYdRWeLbdqU7UijgFRc r8B0ydAiKS/NH1r3hh+ht+j6TG2vCxm8G1KWYjZXOM3oJyGnbpQ= =Ptpv -----END PGP SIGNATURE----- Merge tag 'arm-soc/for-5.16/devicetree' of https://github.com/Broadcom/stblinux into arm/dt This pull request contains Broadcom ARM-based SoCs Device Tree changes for 5.16, please pull the following: - Matthew provides a set of updates to the Northstar Plus Device Tree files to fix a number of warnings, and prepare the files to support the addition of the Cisco Meraki MX64/MX65 wireless controller devices and finally adds support for those boards. - Rafal continues to provide updates to the BCM5301X Device Tree files in order to fix warnings with the various node names, MDIO muxes and memory nodes. He also adds support for the external switches on the BCM53573 SoC and adds Tenda AC9 switch ports. - Christian provides the description of the Ethernet switch ports for the Cisco Meraki MR32 based on the 53016 SoC - Arinc adds support for the Asus RT-AC88U device based on the BCM4709 and featuring 8 Ethernet ports over the integrated and the external Realtek switch (not supported yet) - Stefan adds support for the Raspberry Pi Compute Module 4 IO board and does a number of preparatory changes to get there to the Device Tree files before doing the actual addition * tag 'arm-soc/for-5.16/devicetree' of https://github.com/Broadcom/stblinux: (31 commits) arm64: dts: broadcom: Add reference to RPi CM4 IO Board ARM: dts: Add Raspberry Pi Compute Module 4 IO Board ARM: dts: Add Raspberry Pi Compute Module 4 dt-bindings: arm: bcm2835: Add Raspberry Pi Compute Module 4 ARM: dts: bcm283x-rpi: Move Wifi/BT into separate dtsi dt-bindings: display: bcm2835: add optional property power-domains ARM: dts: BCM5301X: Add DT for Asus RT-AC88U ARM: BCM53016: MR32: get mac-address from nvmem ARM: BCM53016: Specify switch ports for Meraki MR32 ARM: dts: BCM53573: Add Tenda AC9 switch ports ARM: dts: BCM53573: Describe on-SoC BCM53125 rev 4 switch ARM: dts: BCM5301X: Specify switch ports for more devices ARM: dts: NSP: Fix MX65 MDIO mux warnings ARM: dts: NSP: Fix MX64/MX65 eeprom node name ARM: dts: NSP: Fix MDIO mux node names ARM: dts: NSP: Fix mpcore, mmc node names ARM: dts: NSP: Add bcm958623hr board name to dts ARM: dts: BCM5301X: Fix memory nodes names ARM: dts: BCM5301X: Fix MDIO mux binding ARM: dts: BCM5301X: Fix nodes names ... Link: https://lore.kernel.org/r/20211013174016.831348-1-f.fainelli@gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
commit
4d3e49a375
|
@ -19,6 +19,7 @@ properties:
|
|||
items:
|
||||
- enum:
|
||||
- raspberrypi,400
|
||||
- raspberrypi,4-compute-module
|
||||
- raspberrypi,4-model-b
|
||||
- const: brcm,bcm2711
|
||||
|
||||
|
|
|
@ -22,16 +22,61 @@ properties:
|
|||
$nodename:
|
||||
const: '/'
|
||||
compatible:
|
||||
items:
|
||||
- enum:
|
||||
- brcm,bcm58522
|
||||
- brcm,bcm58525
|
||||
- brcm,bcm58535
|
||||
- brcm,bcm58622
|
||||
- brcm,bcm58623
|
||||
- brcm,bcm58625
|
||||
- brcm,bcm88312
|
||||
- const: brcm,nsp
|
||||
oneOf:
|
||||
- description: BCM58522 based boards
|
||||
items:
|
||||
- enum:
|
||||
- brcm,bcm958522er
|
||||
- const: brcm,bcm58522
|
||||
- const: brcm,nsp
|
||||
|
||||
- description: BCM58525 based boards
|
||||
items:
|
||||
- enum:
|
||||
- brcm,bcm958525er
|
||||
- brcm,bcm958525xmc
|
||||
- const: brcm,bcm58525
|
||||
- const: brcm,nsp
|
||||
|
||||
- description: BCM58535 based boards
|
||||
items:
|
||||
- const: brcm,bcm58535
|
||||
- const: brcm,nsp
|
||||
|
||||
- description: BCM58622 based boards
|
||||
items:
|
||||
- enum:
|
||||
- brcm,bcm958622hr
|
||||
- const: brcm,bcm58622
|
||||
- const: brcm,nsp
|
||||
|
||||
- description: BCM58623 based boards
|
||||
items:
|
||||
- enum:
|
||||
- brcm,bcm958623hr
|
||||
- const: brcm,bcm58623
|
||||
- const: brcm,nsp
|
||||
|
||||
- description: BCM58625 based boards
|
||||
items:
|
||||
- enum:
|
||||
- brcm,bcm958625hr
|
||||
- brcm,bcm958625k
|
||||
- meraki,mx64
|
||||
- meraki,mx64-a0
|
||||
- meraki,mx64w
|
||||
- meraki,mx64w-a0
|
||||
- meraki,mx65
|
||||
- meraki,mx65w
|
||||
- const: brcm,bcm58625
|
||||
- const: brcm,nsp
|
||||
|
||||
- description: BCM88312 based boards
|
||||
items:
|
||||
- enum:
|
||||
- brcm,bcm988312hr
|
||||
- const: brcm,bcm88312
|
||||
- const: brcm,nsp
|
||||
|
||||
additionalProperties: true
|
||||
|
||||
|
|
|
@ -47,6 +47,9 @@ properties:
|
|||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
power-domains:
|
||||
maxItems: 1
|
||||
|
||||
required:
|
||||
- "#clock-cells"
|
||||
- compatible
|
||||
|
|
|
@ -51,6 +51,9 @@ properties:
|
|||
dma-names:
|
||||
const: audio-rx
|
||||
|
||||
power-domains:
|
||||
maxItems: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
|
|
@ -24,6 +24,9 @@ properties:
|
|||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
power-domains:
|
||||
maxItems: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
|
|
@ -24,6 +24,9 @@ properties:
|
|||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
power-domains:
|
||||
maxItems: 1
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
|
|
@ -94,6 +94,7 @@ dtb-$(CONFIG_ARCH_BCM2835) += \
|
|||
bcm2837-rpi-cm3-io3.dtb \
|
||||
bcm2711-rpi-400.dtb \
|
||||
bcm2711-rpi-4-b.dtb \
|
||||
bcm2711-rpi-cm4-io.dtb \
|
||||
bcm2835-rpi-zero.dtb \
|
||||
bcm2835-rpi-zero-w.dtb
|
||||
dtb-$(CONFIG_ARCH_BCM_5301X) += \
|
||||
|
@ -119,6 +120,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 \
|
||||
|
@ -159,6 +161,12 @@ dtb-$(CONFIG_ARCH_BCM_NSP) += \
|
|||
bcm958525xmc.dtb \
|
||||
bcm958622hr.dtb \
|
||||
bcm958623hr.dtb \
|
||||
bcm958625-meraki-mx64.dtb \
|
||||
bcm958625-meraki-mx64-a0.dtb \
|
||||
bcm958625-meraki-mx64w.dtb \
|
||||
bcm958625-meraki-mx64w-a0.dtb \
|
||||
bcm958625-meraki-mx65.dtb \
|
||||
bcm958625-meraki-mx65w.dtb \
|
||||
bcm958625hr.dtb \
|
||||
bcm988312hr.dtb \
|
||||
bcm958625k.dtb
|
||||
|
|
|
@ -0,0 +1,70 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom Northstar Plus Ax stepping-specific bindings.
|
||||
* Notable differences from B0+ are the secondary-boot-reg and
|
||||
* lack of DMA coherency.
|
||||
*/
|
||||
|
||||
&cpu1 {
|
||||
secondary-boot-reg = <0xffff042c>;
|
||||
};
|
||||
|
||||
&dma {
|
||||
/delete-property/ dma-coherent;
|
||||
};
|
||||
|
||||
&sdio {
|
||||
/delete-property/ dma-coherent;
|
||||
};
|
||||
|
||||
&amac0 {
|
||||
/delete-property/ dma-coherent;
|
||||
};
|
||||
|
||||
&amac1 {
|
||||
/delete-property/ dma-coherent;
|
||||
};
|
||||
|
||||
&amac2 {
|
||||
/delete-property/ dma-coherent;
|
||||
};
|
||||
|
||||
&ehci0 {
|
||||
/delete-property/ dma-coherent;
|
||||
};
|
||||
|
||||
&mailbox {
|
||||
/delete-property/ dma-coherent;
|
||||
};
|
||||
|
||||
&xhci {
|
||||
/delete-property/ dma-coherent;
|
||||
};
|
||||
|
||||
&ehci0 {
|
||||
/delete-property/ dma-coherent;
|
||||
};
|
||||
|
||||
&ohci0 {
|
||||
/delete-property/ dma-coherent;
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
/delete-property/ dma-coherent;
|
||||
};
|
||||
|
||||
&sata {
|
||||
/delete-property/ dma-coherent;
|
||||
};
|
||||
|
||||
&pcie0 {
|
||||
/delete-property/ dma-coherent;
|
||||
};
|
||||
|
||||
&pcie1 {
|
||||
/delete-property/ dma-coherent;
|
||||
};
|
||||
|
||||
&pcie2 {
|
||||
/delete-property/ dma-coherent;
|
||||
};
|
|
@ -77,7 +77,7 @@
|
|||
interrupt-affinity = <&cpu0>, <&cpu1>;
|
||||
};
|
||||
|
||||
mpcore@19000000 {
|
||||
mpcore-bus@19000000 {
|
||||
compatible = "simple-bus";
|
||||
ranges = <0x00000000 0x19000000 0x00023000>;
|
||||
#address-cells = <1>;
|
||||
|
@ -166,7 +166,7 @@
|
|||
};
|
||||
};
|
||||
|
||||
axi@18000000 {
|
||||
axi: axi@18000000 {
|
||||
compatible = "simple-bus";
|
||||
ranges = <0x00000000 0x18000000 0x0011c40c>;
|
||||
#address-cells = <1>;
|
||||
|
@ -219,7 +219,7 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
sdio: sdhci@21000 {
|
||||
sdio: mmc@21000 {
|
||||
compatible = "brcm,sdhci-iproc-cygnus";
|
||||
reg = <0x21000 0x100>;
|
||||
interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
@ -310,6 +310,7 @@
|
|||
num-cs = <2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
xhci: usb@29000 {
|
||||
|
@ -362,6 +363,42 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
mdio: mdio@32000 {
|
||||
compatible = "brcm,iproc-mdio";
|
||||
reg = <0x32000 0x8>;
|
||||
#size-cells = <0>;
|
||||
#address-cells = <1>;
|
||||
};
|
||||
|
||||
mdio-mux@32000 {
|
||||
compatible = "mdio-mux-mmioreg", "mdio-mux";
|
||||
reg = <0x32000 0x4>;
|
||||
mux-mask = <0x200>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
mdio-parent-bus = <&mdio>;
|
||||
|
||||
mdio_int: mdio@0 {
|
||||
reg = <0x0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
usb3_phy: usb3-phy@10 {
|
||||
compatible = "brcm,ns-bx-usb3-phy";
|
||||
reg = <0x10>;
|
||||
usb3-dmp-syscon = <&usb3_dmp>;
|
||||
#phy-cells = <0>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
mdio_ext: mdio@200 {
|
||||
reg = <0x200>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
rng: rng@33000 {
|
||||
compatible = "brcm,bcm-nsp-rng";
|
||||
reg = <0x33000 0x14>;
|
||||
|
@ -520,13 +557,8 @@
|
|||
};
|
||||
};
|
||||
|
||||
usb3_phy: usb3-phy@104000 {
|
||||
compatible = "brcm,ns-bx-usb3-phy";
|
||||
reg = <0x104000 0x1000>,
|
||||
<0x032000 0x1000>;
|
||||
reg-names = "dmp", "ccb-mii";
|
||||
#phy-cells = <0>;
|
||||
status = "disabled";
|
||||
usb3_dmp: syscon@104000 {
|
||||
reg = <0x104000 0x1000>;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
#include "bcm2711.dtsi"
|
||||
#include "bcm2711-rpi.dtsi"
|
||||
#include "bcm283x-rpi-usb-peripheral.dtsi"
|
||||
#include "bcm283x-rpi-wifi-bt.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "raspberrypi,4-model-b", "brcm,bcm2711";
|
||||
|
@ -26,11 +27,6 @@
|
|||
};
|
||||
};
|
||||
|
||||
wifi_pwrseq: wifi-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
reset-gpios = <&expgpio 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
sd_io_1v8_reg: sd_io_1v8_reg {
|
||||
compatible = "regulator-gpio";
|
||||
regulator-name = "vdd-sd-io";
|
||||
|
@ -56,6 +52,10 @@
|
|||
};
|
||||
};
|
||||
|
||||
&bt {
|
||||
shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
&ddc0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
@ -178,23 +178,6 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
/* SDHCI is used to control the SDIO for wireless */
|
||||
&sdhci {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&emmc_gpio34>;
|
||||
bus-width = <4>;
|
||||
non-removable;
|
||||
mmc-pwrseq = <&wifi_pwrseq>;
|
||||
status = "okay";
|
||||
|
||||
brcmf: wifi@1 {
|
||||
reg = <1>;
|
||||
compatible = "brcm,bcm4329-fmac";
|
||||
};
|
||||
};
|
||||
|
||||
/* EMMC2 is used to drive the SD card */
|
||||
&emmc2 {
|
||||
vqmmc-supply = <&sd_io_1v8_reg>;
|
||||
|
@ -236,13 +219,6 @@
|
|||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_ctsrts_gpio30 &uart0_gpio32>;
|
||||
uart-has-rtscts;
|
||||
status = "okay";
|
||||
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm43438-bt";
|
||||
max-speed = <2000000>;
|
||||
shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
/* uart1 is mapped to the pin header */
|
||||
|
@ -259,3 +235,7 @@
|
|||
&vec {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&wifi_pwrseq {
|
||||
reset-gpios = <&expgpio 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
|
|
@ -0,0 +1,138 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
#include "bcm2711-rpi-cm4.dtsi"
|
||||
#include "bcm283x-rpi-usb-host.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Raspberry Pi Compute Module 4 IO Board";
|
||||
|
||||
leds {
|
||||
led-act {
|
||||
gpios = <&gpio 42 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
led-pwr {
|
||||
label = "PWR";
|
||||
gpios = <&expgpio 2 GPIO_ACTIVE_LOW>;
|
||||
default-state = "keep";
|
||||
linux,default-trigger = "default-on";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&ddc0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ddc1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio {
|
||||
/*
|
||||
* Parts taken from rpi_SCH_4b_4p0_reduced.pdf and
|
||||
* the official GPU firmware DT blob.
|
||||
*
|
||||
* Legend:
|
||||
* "FOO" = GPIO line named "FOO" on the schematic
|
||||
* "FOO_N" = GPIO line named "FOO" on schematic, active low
|
||||
*/
|
||||
gpio-line-names = "ID_SDA",
|
||||
"ID_SCL",
|
||||
"SDA1",
|
||||
"SCL1",
|
||||
"GPIO_GCLK",
|
||||
"GPIO5",
|
||||
"GPIO6",
|
||||
"SPI_CE1_N",
|
||||
"SPI_CE0_N",
|
||||
"SPI_MISO",
|
||||
"SPI_MOSI",
|
||||
"SPI_SCLK",
|
||||
"GPIO12",
|
||||
"GPIO13",
|
||||
/* Serial port */
|
||||
"TXD1",
|
||||
"RXD1",
|
||||
"GPIO16",
|
||||
"GPIO17",
|
||||
"GPIO18",
|
||||
"GPIO19",
|
||||
"GPIO20",
|
||||
"GPIO21",
|
||||
"GPIO22",
|
||||
"GPIO23",
|
||||
"GPIO24",
|
||||
"GPIO25",
|
||||
"GPIO26",
|
||||
"GPIO27",
|
||||
"RGMII_MDIO",
|
||||
"RGMIO_MDC",
|
||||
/* Used by BT module */
|
||||
"CTS0",
|
||||
"RTS0",
|
||||
"TXD0",
|
||||
"RXD0",
|
||||
/* Used by Wifi */
|
||||
"SD1_CLK",
|
||||
"SD1_CMD",
|
||||
"SD1_DATA0",
|
||||
"SD1_DATA1",
|
||||
"SD1_DATA2",
|
||||
"SD1_DATA3",
|
||||
/* Shared with SPI flash */
|
||||
"PWM0_MISO",
|
||||
"PWM1_MOSI",
|
||||
"STATUS_LED_G_CLK",
|
||||
"SPIFLASH_CE_N",
|
||||
"SDA0",
|
||||
"SCL0",
|
||||
"RGMII_RXCLK",
|
||||
"RGMII_RXCTL",
|
||||
"RGMII_RXD0",
|
||||
"RGMII_RXD1",
|
||||
"RGMII_RXD2",
|
||||
"RGMII_RXD3",
|
||||
"RGMII_TXCLK",
|
||||
"RGMII_TXCTL",
|
||||
"RGMII_TXD0",
|
||||
"RGMII_TXD1",
|
||||
"RGMII_TXD2",
|
||||
"RGMII_TXD3";
|
||||
};
|
||||
|
||||
&hdmi0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&hdmi1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&genet {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pixelvalve0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pixelvalve1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pixelvalve2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pixelvalve4 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&vc4 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&vec {
|
||||
status = "disabled";
|
||||
};
|
|
@ -0,0 +1,113 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
#include "bcm2711.dtsi"
|
||||
#include "bcm2711-rpi.dtsi"
|
||||
#include "bcm283x-rpi-wifi-bt.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "raspberrypi,4-compute-module", "brcm,bcm2711";
|
||||
|
||||
chosen {
|
||||
/* 8250 auxiliary UART instead of pl011 */
|
||||
stdout-path = "serial1:115200n8";
|
||||
};
|
||||
|
||||
sd_io_1v8_reg: sd_io_1v8_reg {
|
||||
compatible = "regulator-gpio";
|
||||
regulator-name = "vdd-sd-io";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
regulator-settling-time-us = <5000>;
|
||||
gpios = <&expgpio 4 GPIO_ACTIVE_HIGH>;
|
||||
states = <1800000 0x1>,
|
||||
<3300000 0x0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
sd_vcc_reg: sd_vcc_reg {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc-sd";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
enable-active-high;
|
||||
gpio = <&expgpio 6 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
&bt {
|
||||
shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
/* EMMC2 is used to drive the eMMC */
|
||||
&emmc2 {
|
||||
bus-width = <8>;
|
||||
vqmmc-supply = <&sd_io_1v8_reg>;
|
||||
vmmc-supply = <&sd_vcc_reg>;
|
||||
broken-cd;
|
||||
/* Even the IP block is limited to 100 MHz
|
||||
* this provides a throughput gain
|
||||
*/
|
||||
mmc-hs200-1_8v;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&expgpio {
|
||||
gpio-line-names = "BT_ON",
|
||||
"WL_ON",
|
||||
"PWR_LED_OFF",
|
||||
"ANT1",
|
||||
"VDD_SD_IO_SEL",
|
||||
"CAM_GPIO",
|
||||
"SD_PWR_ON",
|
||||
"ANT2";
|
||||
|
||||
ant1: ant1-hog {
|
||||
gpio-hog;
|
||||
gpios = <3 GPIO_ACTIVE_HIGH>;
|
||||
/* internal antenna enabled */
|
||||
output-high;
|
||||
line-name = "ant1";
|
||||
};
|
||||
|
||||
ant2: ant2-hog {
|
||||
gpio-hog;
|
||||
gpios = <7 GPIO_ACTIVE_HIGH>;
|
||||
/* external antenna disabled */
|
||||
output-low;
|
||||
line-name = "ant2";
|
||||
};
|
||||
};
|
||||
|
||||
&genet {
|
||||
phy-handle = <&phy1>;
|
||||
phy-mode = "rgmii-rxid";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&genet_mdio {
|
||||
phy1: ethernet-phy@0 {
|
||||
/* No PHY interrupt */
|
||||
reg = <0x0>;
|
||||
};
|
||||
};
|
||||
|
||||
/* uart0 communicates with the BT module */
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_ctsrts_gpio30 &uart0_gpio32>;
|
||||
uart-has-rtscts;
|
||||
};
|
||||
|
||||
/* uart1 is mapped to the pin header */
|
||||
&uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart1_gpio14>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&wifi_pwrseq {
|
||||
reset-gpios = <&expgpio 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
|
@ -7,6 +7,7 @@
|
|||
#include "bcm2835.dtsi"
|
||||
#include "bcm2835-rpi.dtsi"
|
||||
#include "bcm283x-rpi-usb-otg.dtsi"
|
||||
#include "bcm283x-rpi-wifi-bt.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "raspberrypi,model-zero-w", "brcm,bcm2835";
|
||||
|
@ -27,11 +28,10 @@
|
|||
gpios = <&gpio 47 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
wifi_pwrseq: wifi-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
reset-gpios = <&gpio 41 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
&bt {
|
||||
shutdown-gpios = <&gpio 45 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
&gpio {
|
||||
|
@ -110,19 +110,7 @@
|
|||
};
|
||||
|
||||
&sdhci {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&emmc_gpio34 &gpclk2_gpio43>;
|
||||
bus-width = <4>;
|
||||
mmc-pwrseq = <&wifi_pwrseq>;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
|
||||
brcmf: wifi@1 {
|
||||
reg = <1>;
|
||||
compatible = "brcm,bcm4329-fmac";
|
||||
};
|
||||
};
|
||||
|
||||
&sdhost {
|
||||
|
@ -135,13 +123,6 @@
|
|||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_gpio32 &uart0_ctsrts_gpio30>;
|
||||
status = "okay";
|
||||
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm43438-bt";
|
||||
max-speed = <2000000>;
|
||||
shutdown-gpios = <&gpio 45 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
|
@ -149,3 +130,7 @@
|
|||
pinctrl-0 = <&uart1_gpio14>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&wifi_pwrseq {
|
||||
reset-gpios = <&gpio 41 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
#include "bcm2837.dtsi"
|
||||
#include "bcm2836-rpi.dtsi"
|
||||
#include "bcm283x-rpi-usb-host.dtsi"
|
||||
#include "bcm283x-rpi-wifi-bt.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "raspberrypi,3-model-a-plus", "brcm,bcm2837";
|
||||
|
@ -130,28 +131,6 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
/*
|
||||
* SDHCI is used to control the SDIO for wireless
|
||||
*
|
||||
* WL_REG_ON and BT_REG_ON of the CYW43455 Wifi/BT module are driven
|
||||
* by a single GPIO. We can't give GPIO control to one of the drivers,
|
||||
* otherwise the other part would get unexpectedly disturbed.
|
||||
*/
|
||||
&sdhci {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&emmc_gpio34>;
|
||||
status = "okay";
|
||||
bus-width = <4>;
|
||||
non-removable;
|
||||
|
||||
brcmf: wifi@1 {
|
||||
reg = <1>;
|
||||
compatible = "brcm,bcm4329-fmac";
|
||||
};
|
||||
};
|
||||
|
||||
/* SDHOST is used to drive the SD card */
|
||||
&sdhost {
|
||||
pinctrl-names = "default";
|
||||
|
@ -160,16 +139,15 @@
|
|||
bus-width = <4>;
|
||||
};
|
||||
|
||||
/* uart0 communicates with the BT module */
|
||||
/* uart0 communicates with the BT module
|
||||
*
|
||||
* WL_REG_ON and BT_REG_ON of the CYW43455 Wifi/BT module are driven
|
||||
* by a single GPIO. We can't give GPIO control to one of the drivers,
|
||||
* otherwise the other part would get unexpectedly disturbed.
|
||||
*/
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_ctsrts_gpio30 &uart0_gpio32 &gpclk2_gpio43>;
|
||||
status = "okay";
|
||||
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm43438-bt";
|
||||
max-speed = <2000000>;
|
||||
};
|
||||
};
|
||||
|
||||
/* uart1 is mapped to the pin header */
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
#include "bcm2836-rpi.dtsi"
|
||||
#include "bcm283x-rpi-lan7515.dtsi"
|
||||
#include "bcm283x-rpi-usb-host.dtsi"
|
||||
#include "bcm283x-rpi-wifi-bt.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "raspberrypi,3-model-b-plus", "brcm,bcm2837";
|
||||
|
@ -31,11 +32,10 @@
|
|||
linux,default-trigger = "default-on";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
wifi_pwrseq: wifi-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
reset-gpios = <&expgpio 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
&bt {
|
||||
shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
&firmware {
|
||||
|
@ -137,23 +137,6 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
/* SDHCI is used to control the SDIO for wireless */
|
||||
&sdhci {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&emmc_gpio34>;
|
||||
status = "okay";
|
||||
bus-width = <4>;
|
||||
non-removable;
|
||||
mmc-pwrseq = <&wifi_pwrseq>;
|
||||
|
||||
brcmf: wifi@1 {
|
||||
reg = <1>;
|
||||
compatible = "brcm,bcm4329-fmac";
|
||||
};
|
||||
};
|
||||
|
||||
/* SDHOST is used to drive the SD card */
|
||||
&sdhost {
|
||||
pinctrl-names = "default";
|
||||
|
@ -166,13 +149,6 @@
|
|||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_ctsrts_gpio30 &uart0_gpio32 &gpclk2_gpio43>;
|
||||
status = "okay";
|
||||
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm43438-bt";
|
||||
max-speed = <2000000>;
|
||||
shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
/* uart1 is mapped to the pin header */
|
||||
|
@ -181,3 +157,7 @@
|
|||
pinctrl-0 = <&uart1_gpio14>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&wifi_pwrseq {
|
||||
reset-gpios = <&expgpio 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
#include "bcm2836-rpi.dtsi"
|
||||
#include "bcm283x-rpi-smsc9514.dtsi"
|
||||
#include "bcm283x-rpi-usb-host.dtsi"
|
||||
#include "bcm283x-rpi-wifi-bt.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "raspberrypi,3-model-b", "brcm,bcm2837";
|
||||
|
@ -24,11 +25,10 @@
|
|||
gpios = <&expgpio 2 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
wifi_pwrseq: wifi-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
reset-gpios = <&expgpio 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
&bt {
|
||||
shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
&firmware {
|
||||
|
@ -134,13 +134,6 @@
|
|||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_gpio32 &gpclk2_gpio43>;
|
||||
status = "okay";
|
||||
|
||||
bluetooth {
|
||||
compatible = "brcm,bcm43438-bt";
|
||||
max-speed = <2000000>;
|
||||
shutdown-gpios = <&expgpio 0 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
/* uart1 is mapped to the pin header */
|
||||
|
@ -150,23 +143,6 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
/* SDHCI is used to control the SDIO for wireless */
|
||||
&sdhci {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&emmc_gpio34>;
|
||||
status = "okay";
|
||||
bus-width = <4>;
|
||||
non-removable;
|
||||
mmc-pwrseq = <&wifi_pwrseq>;
|
||||
|
||||
brcmf: wifi@1 {
|
||||
reg = <1>;
|
||||
compatible = "brcm,bcm4329-fmac";
|
||||
};
|
||||
};
|
||||
|
||||
/* SDHOST is used to drive the SD card */
|
||||
&sdhost {
|
||||
pinctrl-names = "default";
|
||||
|
@ -174,3 +150,7 @@
|
|||
status = "okay";
|
||||
bus-width = <4>;
|
||||
};
|
||||
|
||||
&wifi_pwrseq {
|
||||
reset-gpios = <&expgpio 1 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
|
|
@ -0,0 +1,34 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
|
||||
/ {
|
||||
wifi_pwrseq: wifi-pwrseq {
|
||||
compatible = "mmc-pwrseq-simple";
|
||||
};
|
||||
};
|
||||
|
||||
/* SDHCI is used to control the SDIO for wireless */
|
||||
&sdhci {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&emmc_gpio34>;
|
||||
bus-width = <4>;
|
||||
non-removable;
|
||||
mmc-pwrseq = <&wifi_pwrseq>;
|
||||
status = "okay";
|
||||
|
||||
brcmf: wifi@1 {
|
||||
reg = <1>;
|
||||
compatible = "brcm,bcm4329-fmac";
|
||||
};
|
||||
};
|
||||
|
||||
/* uart0 communicates with the BT module */
|
||||
&uart0 {
|
||||
status = "okay";
|
||||
|
||||
bt: bluetooth {
|
||||
compatible = "brcm,bcm43438-bt";
|
||||
max-speed = <2000000>;
|
||||
};
|
||||
};
|
|
@ -20,7 +20,7 @@
|
|||
bootargs = "console=ttyS0,115200 earlycon";
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0x00000000 0x08000000>,
|
||||
<0x88000000 0x08000000>;
|
||||
|
@ -94,3 +94,40 @@
|
|||
&usb3_phy {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&srab {
|
||||
status = "okay";
|
||||
|
||||
ports {
|
||||
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";
|
||||
};
|
||||
|
||||
port@5 {
|
||||
reg = <5>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -117,3 +117,40 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
|
||||
&srab {
|
||||
status = "okay";
|
||||
|
||||
ports {
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
label = "lan1";
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
label = "lan2";
|
||||
};
|
||||
|
||||
port@2 {
|
||||
reg = <2>;
|
||||
label = "lan3";
|
||||
};
|
||||
|
||||
port@3 {
|
||||
reg = <3>;
|
||||
label = "lan4";
|
||||
};
|
||||
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
label = "wan";
|
||||
};
|
||||
|
||||
port@5 {
|
||||
reg = <5>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
bootargs = "console=ttyS0,115200";
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0x00000000 0x08000000>,
|
||||
<0x88000000 0x08000000>;
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
bootargs = "console=ttyS0,115200";
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0x00000000 0x08000000>,
|
||||
<0x88000000 0x18000000>;
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
bootargs = "console=ttyS0,115200";
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0x00000000 0x08000000>,
|
||||
<0x88000000 0x08000000>;
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
bootargs = "console=ttyS0,115200";
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0x00000000 0x08000000>,
|
||||
<0x88000000 0x08000000>;
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
bootargs = "console=ttyS0,115200";
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0x00000000 0x08000000>,
|
||||
<0x88000000 0x08000000>;
|
||||
|
@ -187,3 +187,45 @@
|
|||
&usb3_phy {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&srab {
|
||||
status = "okay";
|
||||
|
||||
ports {
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
label = "lan1";
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
label = "lan2";
|
||||
};
|
||||
|
||||
port@2 {
|
||||
reg = <2>;
|
||||
label = "lan3";
|
||||
};
|
||||
|
||||
port@3 {
|
||||
reg = <3>;
|
||||
label = "lan4";
|
||||
};
|
||||
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
label = "wan";
|
||||
};
|
||||
|
||||
port@8 {
|
||||
reg = <8>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
bootargs = "console=ttyS0,115200 earlycon";
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0x00000000 0x08000000>;
|
||||
};
|
||||
|
|
|
@ -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";
|
||||
};
|
||||
};
|
||||
};
|
|
@ -118,3 +118,45 @@
|
|||
&usb3_phy {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&srab {
|
||||
status = "okay";
|
||||
|
||||
ports {
|
||||
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";
|
||||
};
|
||||
|
||||
port@8 {
|
||||
reg = <8>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac2>;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -129,7 +129,7 @@
|
|||
};
|
||||
};
|
||||
|
||||
mdio-bus-mux@18003000 {
|
||||
mdio-mux@18003000 {
|
||||
|
||||
/* BIT(9) = 1 => external mdio */
|
||||
mdio@200 {
|
||||
|
|
|
@ -68,3 +68,40 @@
|
|||
&usb3_phy {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&srab {
|
||||
status = "okay";
|
||||
|
||||
ports {
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
label = "wan";
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
label = "lan4";
|
||||
};
|
||||
|
||||
port@2 {
|
||||
reg = <2>;
|
||||
label = "lan3";
|
||||
};
|
||||
|
||||
port@3 {
|
||||
reg = <3>;
|
||||
label = "lan2";
|
||||
};
|
||||
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
label = "lan1";
|
||||
};
|
||||
|
||||
port@5 {
|
||||
reg = <5>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -68,3 +68,40 @@
|
|||
&usb3_phy {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&srab {
|
||||
status = "okay";
|
||||
|
||||
ports {
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
label = "wan";
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
label = "lan4";
|
||||
};
|
||||
|
||||
port@2 {
|
||||
reg = <2>;
|
||||
label = "lan3";
|
||||
};
|
||||
|
||||
port@3 {
|
||||
reg = <3>;
|
||||
label = "lan2";
|
||||
};
|
||||
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
label = "lan1";
|
||||
};
|
||||
|
||||
port@5 {
|
||||
reg = <5>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
bootargs = "earlycon";
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0x00000000 0x08000000>,
|
||||
<0x88000000 0x18000000>;
|
||||
|
|
|
@ -105,3 +105,40 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
|
||||
&switch {
|
||||
status = "okay";
|
||||
|
||||
ports {
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
label = "wan";
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
label = "lan1";
|
||||
};
|
||||
|
||||
port@2 {
|
||||
reg = <2>;
|
||||
label = "lan2";
|
||||
};
|
||||
|
||||
port@3 {
|
||||
reg = <3>;
|
||||
label = "lan3";
|
||||
};
|
||||
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
label = "lan4";
|
||||
};
|
||||
|
||||
port@5 {
|
||||
reg = <5>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
bootargs = " console=ttyS0,115200n8 earlycon";
|
||||
};
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
reg = <0x00000000 0x08000000>;
|
||||
device_type = "memory";
|
||||
};
|
||||
|
@ -110,6 +110,12 @@
|
|||
reg = <0x50>;
|
||||
pagesize = <32>;
|
||||
read-only;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
mac_address: mac-address@66 {
|
||||
reg = <0x66 0x6>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
@ -133,6 +139,11 @@
|
|||
*/
|
||||
};
|
||||
|
||||
&gmac0 {
|
||||
nvmem-cell-names = "mac-address";
|
||||
nvmem-cells = <&mac_address>;
|
||||
};
|
||||
|
||||
&gmac1 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
@ -195,3 +206,25 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
|
||||
&srab {
|
||||
status = "okay";
|
||||
|
||||
ports {
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
label = "poe";
|
||||
};
|
||||
|
||||
port@5 {
|
||||
reg = <5>;
|
||||
label = "cpu";
|
||||
ethernet = <&gmac0>;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
duplex-full;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
#size-cells = <1>;
|
||||
interrupt-parent = <&gic>;
|
||||
|
||||
chipcommonA@18000000 {
|
||||
chipcommon-a-bus@18000000 {
|
||||
compatible = "simple-bus";
|
||||
ranges = <0x00000000 0x18000000 0x00001000>;
|
||||
#address-cells = <1>;
|
||||
|
@ -44,7 +44,7 @@
|
|||
};
|
||||
};
|
||||
|
||||
mpcore@19000000 {
|
||||
mpcore-bus@19000000 {
|
||||
compatible = "simple-bus";
|
||||
ranges = <0x00000000 0x19000000 0x00023000>;
|
||||
#address-cells = <1>;
|
||||
|
@ -369,8 +369,8 @@
|
|||
#address-cells = <1>;
|
||||
};
|
||||
|
||||
mdio-bus-mux@18003000 {
|
||||
compatible = "mdio-mux-mmioreg";
|
||||
mdio-mux@18003000 {
|
||||
compatible = "mdio-mux-mmioreg", "mdio-mux";
|
||||
mdio-parent-bus = <&mdio>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
@ -415,7 +415,7 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
dmu@1800c000 {
|
||||
dmu-bus@1800c000 {
|
||||
compatible = "simple-bus";
|
||||
ranges = <0 0x1800c000 0x1000>;
|
||||
#address-cells = <1>;
|
||||
|
|
|
@ -180,6 +180,24 @@
|
|||
|
||||
gmac0: ethernet@5000 {
|
||||
reg = <0x5000 0x1000>;
|
||||
|
||||
mdio {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
switch: switch@1e {
|
||||
compatible = "brcm,bcm53125";
|
||||
reg = <0x1e>;
|
||||
|
||||
status = "disabled";
|
||||
|
||||
/* ports are defined in board DTS */
|
||||
ports {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
gmac1: ethernet@b000 {
|
||||
|
|
|
@ -38,7 +38,7 @@
|
|||
model = "NorthStar SVK (BCM94708)";
|
||||
compatible = "brcm,bcm94708", "brcm,bcm4708";
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0x00000000 0x08000000>;
|
||||
};
|
||||
|
|
|
@ -38,7 +38,7 @@
|
|||
model = "NorthStar SVK (BCM94709)";
|
||||
compatible = "brcm,bcm94709", "brcm,bcm4709", "brcm,bcm4708";
|
||||
|
||||
memory {
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <0x00000000 0x08000000>;
|
||||
};
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
|
||||
/ {
|
||||
model = "NorthStar Plus SVK (BCM958522ER)";
|
||||
compatible = "brcm,bcm58522", "brcm,nsp";
|
||||
compatible = "brcm,bcm958522er", "brcm,bcm58522", "brcm,nsp";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
|
@ -134,6 +134,7 @@
|
|||
};
|
||||
|
||||
&qspi {
|
||||
status = "okay";
|
||||
bspi-sel = <0>;
|
||||
flash: m25p80@0 {
|
||||
#address-cells = <1>;
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
|
||||
/ {
|
||||
model = "NorthStar Plus SVK (BCM958525ER)";
|
||||
compatible = "brcm,bcm58525", "brcm,nsp";
|
||||
compatible = "brcm,bcm958525er", "brcm,bcm58525", "brcm,nsp";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
|
@ -134,6 +134,7 @@
|
|||
};
|
||||
|
||||
&qspi {
|
||||
status = "okay";
|
||||
bspi-sel = <0>;
|
||||
flash: m25p80@0 {
|
||||
#address-cells = <1>;
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
|
||||
/ {
|
||||
model = "NorthStar Plus XMC (BCM958525xmc)";
|
||||
compatible = "brcm,bcm58525", "brcm,nsp";
|
||||
compatible = "brcm,bcm958525xmc", "brcm,bcm58525", "brcm,nsp";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
|
@ -150,6 +150,7 @@
|
|||
};
|
||||
|
||||
&qspi {
|
||||
status = "okay";
|
||||
bspi-sel = <0>;
|
||||
flash: m25p80@0 {
|
||||
#address-cells = <1>;
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
|
||||
/ {
|
||||
model = "NorthStar Plus SVK (BCM958622HR)";
|
||||
compatible = "brcm,bcm58622", "brcm,nsp";
|
||||
compatible = "brcm,bcm958622hr", "brcm,bcm58622", "brcm,nsp";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
|
@ -138,6 +138,7 @@
|
|||
};
|
||||
|
||||
&qspi {
|
||||
status = "okay";
|
||||
bspi-sel = <0>;
|
||||
flash: m25p80@0 {
|
||||
#address-cells = <1>;
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
|
||||
/ {
|
||||
model = "NorthStar Plus SVK (BCM958623HR)";
|
||||
compatible = "brcm,bcm58623", "brcm,nsp";
|
||||
compatible = "brcm,bcm958623hr", "brcm,bcm58623", "brcm,nsp";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
|
@ -142,6 +142,7 @@
|
|||
};
|
||||
|
||||
&qspi {
|
||||
status = "okay";
|
||||
bspi-sel = <0>;
|
||||
flash: m25p80@0 {
|
||||
#address-cells = <1>;
|
||||
|
|
|
@ -0,0 +1,281 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Device Tree Bindings for Cisco Meraki MX65 series (Alamo).
|
||||
*
|
||||
* Copyright (C) 2020-2021 Matthew Hagan <mnhagan88@gmail.com>
|
||||
*/
|
||||
|
||||
#include "bcm958625-meraki-mx6x-common.dtsi"
|
||||
|
||||
/ {
|
||||
keys {
|
||||
compatible = "gpio-keys-polled";
|
||||
autorepeat;
|
||||
poll-interval = <20>;
|
||||
|
||||
reset {
|
||||
label = "reset";
|
||||
linux,code = <KEY_RESTART>;
|
||||
gpios = <&gpioa 8 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
led-0 {
|
||||
/* green:wan1-left */
|
||||
function = LED_FUNCTION_ACTIVITY;
|
||||
function-enumerator = <0>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&gpioa 25 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-1 {
|
||||
/* green:wan1-right */
|
||||
function = LED_FUNCTION_ACTIVITY;
|
||||
function-enumerator = <1>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&gpioa 24 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-2 {
|
||||
/* green:wan2-left */
|
||||
function = LED_FUNCTION_ACTIVITY;
|
||||
function-enumerator = <2>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&gpioa 27 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-3 {
|
||||
/* green:wan2-right */
|
||||
function = LED_FUNCTION_ACTIVITY;
|
||||
function-enumerator = <3>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&gpioa 26 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-4 {
|
||||
/* amber:power */
|
||||
function = LED_FUNCTION_POWER;
|
||||
color = <LED_COLOR_ID_AMBER>;
|
||||
gpios = <&gpioa 3 GPIO_ACTIVE_HIGH>;
|
||||
default-state = "on";
|
||||
};
|
||||
|
||||
led-5 {
|
||||
/* white:status */
|
||||
function = LED_FUNCTION_STATUS;
|
||||
color = <LED_COLOR_ID_WHITE>;
|
||||
gpios = <&gpioa 31 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&axi {
|
||||
mdio-mux@3f1c0 {
|
||||
compatible = "mdio-mux-mmioreg", "mdio-mux";
|
||||
reg = <0x3f1c0 0x4>;
|
||||
mux-mask = <0x2000>;
|
||||
mdio-parent-bus = <&mdio_ext>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
mdio@0 {
|
||||
reg = <0x0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
phy_port6: phy@0 {
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
phy_port7: phy@1 {
|
||||
reg = <1>;
|
||||
};
|
||||
|
||||
phy_port8: phy@2 {
|
||||
reg = <2>;
|
||||
};
|
||||
|
||||
phy_port9: phy@3 {
|
||||
reg = <3>;
|
||||
};
|
||||
|
||||
phy_port10: phy@4 {
|
||||
reg = <4>;
|
||||
};
|
||||
|
||||
switch@10 {
|
||||
compatible = "qca,qca8337";
|
||||
reg = <0x10>;
|
||||
dsa,member = <1 0>;
|
||||
|
||||
ports {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
ethernet = <&sgmii1>;
|
||||
phy-mode = "sgmii";
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
};
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
label = "lan8";
|
||||
phy-handle = <&phy_port6>;
|
||||
};
|
||||
|
||||
port@2 {
|
||||
reg = <2>;
|
||||
label = "lan9";
|
||||
phy-handle = <&phy_port7>;
|
||||
};
|
||||
|
||||
port@3 {
|
||||
reg = <3>;
|
||||
label = "lan10";
|
||||
phy-handle = <&phy_port8>;
|
||||
};
|
||||
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
label = "lan11";
|
||||
phy-handle = <&phy_port9>;
|
||||
};
|
||||
|
||||
port@5 {
|
||||
reg = <5>;
|
||||
label = "lan12";
|
||||
phy-handle = <&phy_port10>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
mdio-mii@2000 {
|
||||
reg = <0x2000>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
phy_port1: phy@0 {
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
phy_port2: phy@1 {
|
||||
reg = <1>;
|
||||
};
|
||||
|
||||
phy_port3: phy@2 {
|
||||
reg = <2>;
|
||||
};
|
||||
|
||||
phy_port4: phy@3 {
|
||||
reg = <3>;
|
||||
};
|
||||
|
||||
phy_port5: phy@4 {
|
||||
reg = <4>;
|
||||
};
|
||||
|
||||
switch@10 {
|
||||
compatible = "qca,qca8337";
|
||||
reg = <0x10>;
|
||||
dsa,member = <2 0>;
|
||||
|
||||
ports {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
ethernet = <&sgmii0>;
|
||||
phy-mode = "sgmii";
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
};
|
||||
};
|
||||
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
label = "lan3";
|
||||
phy-handle = <&phy_port1>;
|
||||
};
|
||||
|
||||
port@2 {
|
||||
reg = <2>;
|
||||
label = "lan4";
|
||||
phy-handle = <&phy_port2>;
|
||||
};
|
||||
|
||||
port@3 {
|
||||
reg = <3>;
|
||||
label = "lan5";
|
||||
phy-handle = <&phy_port3>;
|
||||
};
|
||||
|
||||
port@4 {
|
||||
reg = <4>;
|
||||
label = "lan6";
|
||||
phy-handle = <&phy_port4>;
|
||||
};
|
||||
|
||||
port@5 {
|
||||
reg = <5>;
|
||||
label = "lan7";
|
||||
phy-handle = <&phy_port5>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&srab {
|
||||
compatible = "brcm,bcm58625-srab", "brcm,nsp-srab";
|
||||
status = "okay";
|
||||
dsa,member = <0 0>;
|
||||
|
||||
ports {
|
||||
port@0 {
|
||||
label = "wan1";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
port@1 {
|
||||
label = "wan2";
|
||||
reg = <1>;
|
||||
};
|
||||
|
||||
sgmii0: port@4 {
|
||||
label = "sw0";
|
||||
reg = <4>;
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
};
|
||||
};
|
||||
|
||||
sgmii1: port@5 {
|
||||
label = "sw1";
|
||||
reg = <5>;
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
};
|
||||
};
|
||||
|
||||
port@8 {
|
||||
ethernet = <&amac2>;
|
||||
reg = <8>;
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
|
@ -0,0 +1,163 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Device Tree Bindings for Cisco Meraki MX64 series (Kingpin).
|
||||
*
|
||||
* Copyright (C) 2020-2021 Matthew Hagan <mnhagan88@gmail.com>
|
||||
*/
|
||||
|
||||
#include "bcm958625-meraki-mx6x-common.dtsi"
|
||||
|
||||
/ {
|
||||
|
||||
keys {
|
||||
compatible = "gpio-keys-polled";
|
||||
autorepeat;
|
||||
poll-interval = <20>;
|
||||
|
||||
reset {
|
||||
label = "reset";
|
||||
linux,code = <KEY_RESTART>;
|
||||
gpios = <&gpioa 6 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
led-0 {
|
||||
/* green:lan1-left */
|
||||
function = LED_FUNCTION_ACTIVITY;
|
||||
function-enumerator = <0>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&gpioa 19 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-1 {
|
||||
/* green:lan1-right */
|
||||
function = LED_FUNCTION_ACTIVITY;
|
||||
function-enumerator = <1>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&gpioa 18 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-2 {
|
||||
/* green:lan2-left */
|
||||
function = LED_FUNCTION_ACTIVITY;
|
||||
function-enumerator = <2>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&gpioa 24 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-3 {
|
||||
/* green:lan2-right */
|
||||
function = LED_FUNCTION_ACTIVITY;
|
||||
function-enumerator = <3>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&gpioa 20 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-4 {
|
||||
/* green:lan3-left */
|
||||
function = LED_FUNCTION_ACTIVITY;
|
||||
function-enumerator = <4>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&gpioa 26 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-5 {
|
||||
/* green:lan3-right */
|
||||
function = LED_FUNCTION_ACTIVITY;
|
||||
function-enumerator = <5>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&gpioa 25 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-6 {
|
||||
/* green:lan4-left */
|
||||
function = LED_FUNCTION_ACTIVITY;
|
||||
function-enumerator = <6>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&gpioa 28 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-7 {
|
||||
/* green:lan4-right */
|
||||
function = LED_FUNCTION_ACTIVITY;
|
||||
function-enumerator = <7>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&gpioa 27 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-8 {
|
||||
/* green:wan-left */
|
||||
function = LED_FUNCTION_ACTIVITY;
|
||||
function-enumerator = <8>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&gpioa 30 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-9 {
|
||||
/* green:wan-right */
|
||||
function = LED_FUNCTION_ACTIVITY;
|
||||
function-enumerator = <9>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&gpioa 29 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
led-a {
|
||||
/* amber:power */
|
||||
function = LED_FUNCTION_POWER;
|
||||
color = <LED_COLOR_ID_AMBER>;
|
||||
gpios = <&gpioa 0 GPIO_ACTIVE_LOW>;
|
||||
default-state = "on";
|
||||
};
|
||||
|
||||
led-b {
|
||||
/* white:status */
|
||||
function = LED_FUNCTION_STATUS;
|
||||
color = <LED_COLOR_ID_WHITE>;
|
||||
gpios = <&gpioa 31 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&srab {
|
||||
compatible = "brcm,bcm58625-srab", "brcm,nsp-srab";
|
||||
status = "okay";
|
||||
|
||||
ports {
|
||||
port@0 {
|
||||
label = "lan1";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
port@1 {
|
||||
label = "lan2";
|
||||
reg = <1>;
|
||||
};
|
||||
|
||||
port@2 {
|
||||
label = "lan3";
|
||||
reg = <2>;
|
||||
};
|
||||
|
||||
port@3 {
|
||||
label = "lan4";
|
||||
reg = <3>;
|
||||
};
|
||||
|
||||
port@4 {
|
||||
label = "wan";
|
||||
reg = <4>;
|
||||
};
|
||||
|
||||
port@8 {
|
||||
ethernet = <&amac2>;
|
||||
reg = <8>;
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
full-duplex;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
|
@ -0,0 +1,25 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Device Tree Bindings for Cisco Meraki MX64 with A0 SoC.
|
||||
*
|
||||
* Copyright (C) 2020-2021 Matthew Hagan <mnhagan88@gmail.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "bcm958625-meraki-kingpin.dtsi"
|
||||
#include "bcm-nsp-ax.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Cisco Meraki MX64(A0)";
|
||||
compatible = "meraki,mx64-a0", "brcm,bcm58625", "brcm,nsp";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
memory@60000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x60000000 0x80000000>;
|
||||
};
|
||||
};
|
|
@ -0,0 +1,24 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Device Tree Bindings for Cisco Meraki MX64 with B0+ SoC.
|
||||
*
|
||||
* Copyright (C) 2020-2021 Matthew Hagan <mnhagan88@gmail.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "bcm958625-meraki-kingpin.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Cisco Meraki MX64";
|
||||
compatible = "meraki,mx64", "brcm,bcm58625", "brcm,nsp";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
memory@60000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x60000000 0x80000000>;
|
||||
};
|
||||
};
|
|
@ -0,0 +1,33 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Device Tree Bindings for Cisco Meraki MX64W with A0 SoC.
|
||||
*
|
||||
* Copyright (C) 2020-2021 Matthew Hagan <mnhagan88@gmail.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "bcm958625-meraki-kingpin.dtsi"
|
||||
#include "bcm-nsp-ax.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Cisco Meraki MX64W(A0)";
|
||||
compatible = "meraki,mx64w-a0", "brcm,bcm58625", "brcm,nsp";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
memory@60000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x60000000 0x80000000>;
|
||||
};
|
||||
};
|
||||
|
||||
&pcie0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pcie1 {
|
||||
status = "okay";
|
||||
};
|
|
@ -0,0 +1,32 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Device Tree Bindings for Cisco Meraki MX64W with B0+ SoC.
|
||||
*
|
||||
* Copyright (C) 2020-2021 Matthew Hagan <mnhagan88@gmail.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "bcm958625-meraki-kingpin.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Cisco Meraki MX64W";
|
||||
compatible = "meraki,mx64w", "brcm,bcm58625", "brcm,nsp";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
memory@60000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x60000000 0x80000000>;
|
||||
};
|
||||
};
|
||||
|
||||
&pcie0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pcie1 {
|
||||
status = "okay";
|
||||
};
|
|
@ -0,0 +1,24 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Device Tree Bindings for Cisco Meraki MX65.
|
||||
*
|
||||
* Copyright (C) 2020-2021 Matthew Hagan <mnhagan88@gmail.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "bcm958625-meraki-alamo.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Cisco Meraki MX65";
|
||||
compatible = "meraki,mx65", "brcm,bcm58625", "brcm,nsp";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
memory@60000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x60000000 0x80000000>;
|
||||
};
|
||||
};
|
|
@ -0,0 +1,32 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Device Tree Bindings for Cisco Meraki MX65W.
|
||||
*
|
||||
* Copyright (C) 2020-2021 Matthew Hagan <mnhagan88@gmail.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "bcm958625-meraki-alamo.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Cisco Meraki MX65W";
|
||||
compatible = "meraki,mx65w", "brcm,bcm58625", "brcm,nsp";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
memory@60000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x60000000 0x80000000>;
|
||||
};
|
||||
};
|
||||
|
||||
&pcie0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pcie1 {
|
||||
status = "okay";
|
||||
};
|
|
@ -0,0 +1,129 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Common Bindings for Cisco Meraki MX64 (Kingpin) and MX65 (Alamo) devices.
|
||||
*
|
||||
* Copyright (C) 2020-2021 Matthew Hagan <mnhagan88@gmail.com>
|
||||
*/
|
||||
|
||||
#include "bcm-nsp.dtsi"
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/leds/common.h>
|
||||
|
||||
/ {
|
||||
pwm-leds {
|
||||
compatible = "pwm-leds";
|
||||
|
||||
led-1 {
|
||||
function = LED_FUNCTION_INDICATOR;
|
||||
color = <LED_COLOR_ID_RED>;
|
||||
pwms = <&pwm 1 50000>;
|
||||
max-brightness = <255>;
|
||||
};
|
||||
|
||||
led-2 {
|
||||
function = LED_FUNCTION_INDICATOR;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
pwms = <&pwm 2 50000>;
|
||||
max-brightness = <255>;
|
||||
};
|
||||
|
||||
led-3 {
|
||||
function = LED_FUNCTION_INDICATOR;
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
pwms = <&pwm 3 50000>;
|
||||
max-brightness = <255>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&amac2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ehci0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
status = "okay";
|
||||
|
||||
eeprom@50 {
|
||||
compatible = "atmel,24c64";
|
||||
reg = <0x50>;
|
||||
pagesize = <32>;
|
||||
read-only;
|
||||
};
|
||||
};
|
||||
|
||||
&nand_controller {
|
||||
nand@0 {
|
||||
compatible = "brcm,nandcs";
|
||||
reg = <0>;
|
||||
nand-on-flash-bbt;
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
nand-ecc-strength = <24>;
|
||||
nand-ecc-step-size = <1024>;
|
||||
|
||||
brcm,nand-oob-sector-size = <27>;
|
||||
|
||||
partition@0 {
|
||||
label = "u-boot";
|
||||
reg = <0x0 0x80000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@80000 {
|
||||
label = "shmoo";
|
||||
reg = <0x80000 0x80000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@100000 {
|
||||
label = "bootkernel1";
|
||||
reg = <0x100000 0x300000>;
|
||||
};
|
||||
|
||||
partition@400000 {
|
||||
label = "nvram";
|
||||
reg = <0x400000 0x100000>;
|
||||
};
|
||||
|
||||
partition@500000 {
|
||||
label = "bootkernel2";
|
||||
reg = <0x500000 0x300000>;
|
||||
};
|
||||
|
||||
partition@800000 {
|
||||
label = "ubi";
|
||||
reg = <0x800000 0x3f700000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&ohci0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pinctrl {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pwm_leds>;
|
||||
|
||||
pwm_leds: pwm_leds {
|
||||
function = "pwm";
|
||||
groups = "pwm1_grp", "pwm2_grp", "pwm3_grp";
|
||||
};
|
||||
};
|
||||
|
||||
&pwm {
|
||||
status = "okay";
|
||||
#pwm-cells = <2>;
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
clock-frequency = <62500000>;
|
||||
status = "okay";
|
||||
};
|
|
@ -37,7 +37,7 @@
|
|||
|
||||
/ {
|
||||
model = "NorthStar Plus SVK (BCM958625HR)";
|
||||
compatible = "brcm,bcm58625", "brcm,nsp";
|
||||
compatible = "brcm,bcm958625hr", "brcm,bcm58625", "brcm,nsp";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
|
@ -149,6 +149,7 @@
|
|||
};
|
||||
|
||||
&qspi {
|
||||
status = "okay";
|
||||
bspi-sel = <0>;
|
||||
flash: m25p80@0 {
|
||||
#address-cells = <1>;
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
/ {
|
||||
model = "NorthStar Plus SVK (BCM958625K)";
|
||||
compatible = "brcm,bcm58625", "brcm,nsp";
|
||||
compatible = "brcm,bcm958625k", "brcm,bcm58625", "brcm,nsp";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
|
@ -153,6 +153,7 @@
|
|||
};
|
||||
|
||||
&qspi {
|
||||
status = "okay";
|
||||
bspi-sel = <0>;
|
||||
flash: m25p80@0 {
|
||||
#address-cells = <1>;
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
|
||||
/ {
|
||||
model = "NorthStar Plus SVK (BCM988312HR)";
|
||||
compatible = "brcm,bcm88312", "brcm,nsp";
|
||||
compatible = "brcm,bcm988312hr", "brcm,bcm88312", "brcm,nsp";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
|
@ -58,6 +58,10 @@
|
|||
|
||||
/* USB 3 support needed to be complete */
|
||||
|
||||
&dma {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&amac0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
@ -134,6 +138,7 @@
|
|||
};
|
||||
|
||||
&qspi {
|
||||
status = "okay";
|
||||
bspi-sel = <0>;
|
||||
flash: m25p80@0 {
|
||||
#address-cells = <1>;
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
# SPDX-License-Identifier: GPL-2.0
|
||||
dtb-$(CONFIG_ARCH_BCM2835) += bcm2711-rpi-400.dtb \
|
||||
bcm2711-rpi-4-b.dtb \
|
||||
bcm2711-rpi-cm4-io.dtb \
|
||||
bcm2837-rpi-3-a-plus.dtb \
|
||||
bcm2837-rpi-3-b.dtb \
|
||||
bcm2837-rpi-3-b-plus.dtb \
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
#include "arm/bcm2711-rpi-cm4-io.dts"
|
Loading…
Reference in New Issue