mirror_ubuntu-kernels/arch/arm/boot/dts/broadcom/bcm47094-dlink-dir-890l.dts
Rob Herring 724ba67515 ARM: dts: Move .dts files to vendor sub-directories
The arm dts directory has grown to 1559 boards which makes it a bit
unwieldy to maintain and use. Past attempts stalled out due to plans to
move .dts files out of the kernel tree. Doing that is no longer planned
(any time soon at least), so let's go ahead and group .dts files by
vendors. This move aligns arm with arm64 .dts file structure.

There's no change to dtbs_install as the flat structure is maintained on
install.

The naming of vendor directories is roughly in this order of preference:
- Matching original and current SoC vendor prefix/name (e.g. ti, qcom)
- Current vendor prefix/name if still actively sold (SoCs which have
  been aquired) (e.g. nxp/imx)
- Existing platform name for older platforms not sold/maintained by any
  company (e.g. gemini, nspire)

The whole move was scripted with the exception of MAINTAINERS and a few
makefile fixups.

Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Acked-by: Michal Simek <michal.simek@amd.com> #Xilinx
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Neil Armstrong <neil.armstrong@linaro.org>
Acked-by: Paul Barker <paul.barker@sancloud.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Acked-by: Gregory CLEMENT <gregory.clement@bootlin.com>
Acked-by: Heiko Stuebner <heiko@sntech.de>
Acked-by: Wei Xu <xuwei5@hisilicon.com> #hisilicon
Acked-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Nick Hawkins <nick.hawkins@hpe.com>
Acked-by: Baruch Siach <baruch@tkos.co.il>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Acked-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Claudiu Beznea <claudiu.beznea@microchip.com>
Acked-by: Peter Rosin <peda@axentia.se>
Acked-by: Jesper Nilsson <jesper.nilsson@axis.com>
Acked-by: Sudeep Holla <sudeep.holla@arm.com>
Acked-by: Florian Fainelli <f.fainelli@gmail.com> #broadcom
Acked-by: Manivannan Sadhasivam <mani@kernel.org>
Reviewed-by: Jisheng Zhang <jszhang@kernel.org>
Acked-by: Patrice Chotard <patrice.chotard@foss.st.com>
Acked-by: Romain Perier <romain.perier@gmail.com>
Acked-by: Alexandre TORGUE <alexandre.torgue@st.com>
Acked-by: Shawn Guo <shawnguo@kernel.org>
Acked-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
Acked-by: Enric Balletbo i Serra <eballetbo@gmail.com>
Signed-off-by: Rob Herring <robh@kernel.org>
2023-06-21 11:39:50 -06:00

200 lines
4.0 KiB
Plaintext

// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
/*
* Device tree for D-Link DIR-890L
* D-Link calls this board "WRGAC36"
* this router has the same looks and form factor as D-Link DIR-885L.
*
* Some differences from DIR-885L include a separate USB2 port, separate LEDs
* for USB2 and USB3, a separate VCC supply for the USB2 slot and no
* router/extender switch is mounted (there is an empty mount point on the
* PCB) so this device is a pure router. Also the LAN ports are in the right
* order.
*
* Based on the device tree for DIR-885L
* Copyright (C) 2016 Rafał Miłecki <zajec5@gmail.com>
* Copyright (C) 2022 Linus Walleij
*/
/dts-v1/;
#include "bcm47094.dtsi"
#include "bcm5301x-nand-cs0-bch1.dtsi"
/ {
compatible = "dlink,dir-890l", "brcm,bcm47094", "brcm,bcm4708";
model = "D-Link DIR-890L";
chosen {
bootargs = "console=ttyS0,115200 earlycon";
};
memory@0 {
device_type = "memory";
reg = <0x00000000 0x08000000>,
<0x88000000 0x08000000>;
};
leds {
/*
* LED information is derived from the boot log which
* conveniently lists all the LEDs.
*/
compatible = "gpio-leds";
led-power-white {
label = "bcm53xx:white:power";
gpios = <&chipcommon 0 GPIO_ACTIVE_LOW>;
linux,default-trigger = "default-on";
};
led-wan-white {
label = "bcm53xx:white:wan";
gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>;
};
led-power-amber {
label = "bcm53xx:amber:power";
gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>;
};
led-wan-amber {
label = "bcm53xx:amber:wan";
gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>;
};
led-usb3-white {
label = "bcm53xx:white:usb3";
gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>;
trigger-sources = <&xhci_port1>;
linux,default-trigger = "usbport";
};
led-usb2-white {
label = "bcm53xx:white:usb2";
gpios = <&chipcommon 15 GPIO_ACTIVE_LOW>;
trigger-sources = <&ohci_port1>, <&ehci_port1>;
linux,default-trigger = "usbport";
};
led-2ghz {
label = "bcm53xx:white:2ghz";
gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>;
};
led-5ghz {
label = "bcm53xx:white:5ghz";
gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>;
};
};
gpio-keys {
compatible = "gpio-keys";
button-wps {
label = "WPS";
linux,code = <KEY_WPS_BUTTON>;
gpios = <&chipcommon 7 GPIO_ACTIVE_LOW>;
};
/* Called "factory reset" in the vendor dmesg */
button-restart {
label = "Reset";
linux,code = <KEY_RESTART>;
gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>;
};
};
/*
* The flash memory is memory mapped at 0x1e000000-0x1fffffff
* 64KB blocks; total size 2MB, same that can be
* found attached to the spi_nor SPI controller.
*/
nvram@1e1f0000 {
compatible = "brcm,nvram";
reg = <0x1e1f0000 0x00010000>;
et0macaddr: et0macaddr {
};
};
};
&gmac2 {
/*
* The NVRAM curiously does not contain a MAC address
* for et2 so since that is the only ethernet interface
* actually in use on the platform, we use this et0 MAC
* address for et2.
*/
nvmem-cells = <&et0macaddr>;
nvmem-cell-names = "mac-address";
};
&spi_nor {
status = "okay";
};
&nandcs {
/* Spansion S34ML01G2, 128MB with 128KB erase blocks */
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
/*
* This is called "nflash" in the vendor kernel with
* "upgrade" and "rootfs" (probably using OpenWrt
* splitpart). We call it "firmware" like standard tools
* assume. The CFE loader contains incorrect information
* about TRX partitions, ignore this, there are no TRX
* partitions: this device uses SEAMA.
*/
firmware@0 {
label = "firmware";
reg = <0x00000000 0x08000000>;
};
};
};
&usb2 {
vcc-gpios = <&chipcommon 21 GPIO_ACTIVE_HIGH>;
};
&usb3 {
vcc-gpios = <&chipcommon 18 GPIO_ACTIVE_HIGH>;
};
&usb3_phy {
status = "okay";
};
&srab {
status = "okay";
ports {
port@0 {
label = "lan1";
};
port@1 {
label = "lan2";
};
port@2 {
label = "lan3";
};
port@3 {
label = "lan4";
};
port@4 {
label = "wan";
};
port@8 {
label = "cpu";
phy-mode = "rgmii";
};
};
};