diff options
author | Christian Lamparter <chunkeey@gmail.com> | 2020-08-12 01:21:13 +0200 |
---|---|---|
committer | Christian Lamparter <chunkeey@gmail.com> | 2020-08-29 17:14:27 +0200 |
commit | 2c3f16d70e32d7b5eb62096097c4343c5409afe3 (patch) | |
tree | 47c8e42364eef32d22d15081234f805f04ae303e /target/linux/apm821xx/dts/netgear-wndr4700.dts | |
parent | d75e75306301852a848824cf268d8b58eda28a8a (diff) | |
download | upstream-2c3f16d70e32d7b5eb62096097c4343c5409afe3.tar.gz upstream-2c3f16d70e32d7b5eb62096097c4343c5409afe3.tar.bz2 upstream-2c3f16d70e32d7b5eb62096097c4343c5409afe3.zip |
apm821xx: WNDR4700: enumerate PCIe in device-tree
This patch adds the pcie-switch and bridge configuration of the
WNDR4700.
This allows to get rid of the legacy firmware monikers and drop
the usbport LED declaration.
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Diffstat (limited to 'target/linux/apm821xx/dts/netgear-wndr4700.dts')
-rw-r--r-- | target/linux/apm821xx/dts/netgear-wndr4700.dts | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/target/linux/apm821xx/dts/netgear-wndr4700.dts b/target/linux/apm821xx/dts/netgear-wndr4700.dts index 8972d2b030..a1c23896a1 100644 --- a/target/linux/apm821xx/dts/netgear-wndr4700.dts +++ b/target/linux/apm821xx/dts/netgear-wndr4700.dts @@ -381,6 +381,9 @@ usb-blue { label = "wndr4700:blue:usb"; gpios = <&GPIO0 10 GPIO_ACTIVE_HIGH>; + trigger-sources = <&usb2_port 1>, <&usb2_port 2>, + <&usb3_port 1>, <&usb3_port 2>; + linux,default-trigger = "usbport"; }; logo-white { @@ -412,12 +415,103 @@ wlan-blue { label = "wndr4700:blue:wlan"; gpios = <&GPIO0 18 GPIO_ACTIVE_HIGH>; + linux,default-trigger = "phy0tpt"; }; }; }; &PCIE0 { status = "okay"; + + /* + * relevant lspci topology: + * + * -+-[0000:40]---00.0-[41-7f]----00.0-[42-45]--+-02.0-[43]----00.0 + * +-03.0-[44]----00.0 + * \-04.0-[45]----00.0 + * + */ + + bridge@64,0 { + reg = <0x00400000 0 0 0 0>; + #address-cells = <3>; + #size-cells = <2>; + ranges; + + bridge@65,0 { + /* IDT PES4T4 PCI Express Switch */ + compatible = "pci111d,803a"; + reg = <0x00410000 0 0 0 0>; + #address-cells = <3>; + #size-cells = <2>; + ranges; + + bridge@66,2 { + compatible = "pci111d,803a"; + reg = <0x00421000 0 0 0 0>; + #address-cells = <3>; + #size-cells = <2>; + ranges; + + wifi0: wifi@67,0 { + /* Atheros AR9380 5GHz */ + compatible = "pci168c,0030"; + reg = <0x00430000 0 0 0 0>; + qca,no-eeprom; + /* wifi CAL & MAC is stored in nvram */ + + /* + * Because this was such a pain. + * Here's the full device path: + * pci0000:40/0000:40:00.0/0000:41:00.0/0000:42:02.0/0000:43:00.0 + */ + }; + }; + + bridge@66,3 { + compatible = "pci111d,803a"; + reg = <0x00421800 0 0 0 0>; + #address-cells = <3>; + #size-cells = <2>; + ranges; + + wifi1: wifi@68,0 { + /* Atheros AR9381 2.4GHz */ + compatible = "pci168c,0033"; + reg = <0x00440000 0 0 0 0>; + qca,no-eeprom; + /* wifi CAL & MAC is stored in nvram */ + }; + }; + + bridge@66,4 { + compatible = "pci111d,803a"; + reg = <0x00422000 0 0 0 0>; + #address-cells = <3>; + #size-cells = <2>; + ranges; + + usb1: usb@69,0 { + /* Renesas uPD720202 */ + compatible = "pci1912,0015"; + reg = <0x00450000 0 0 0 0>; + + #address-cells = <1>; + #size-cells = <0>; + + usb2_port: port@1 { + reg = <1>; + #trigger-source-cells = <1>; + }; + + usb3_port: port@2 { + reg = <2>; + #trigger-source-cells = <1>; + }; + }; + }; + }; + }; }; &MSI { |