From c7842ceaaa27a72146303362e24e10fbb1bcb213 Mon Sep 17 00:00:00 2001 From: Adrian Schmutzler Date: Thu, 24 Oct 2019 13:36:47 +0200 Subject: [PATCH] ramips: reorganize DTSI files for Netgear R devices This reorganizes DTSI files for the Netgear R devices in mt7621 (and the WNDR3700 v5). It creates a common DTSI for all R (sercomm) devices and distributes the remaining code in r6220.dtsi to R6220 and WNDR3700 v5. Signed-off-by: Adrian Schmutzler --- .../linux/ramips/dts/mt7621_netgear_r6220.dts | 38 ++++- .../linux/ramips/dts/mt7621_netgear_r6260.dts | 5 +- .../dts/mt7621_netgear_r6260_r6350_r6850.dtsi | 160 ------------------ .../linux/ramips/dts/mt7621_netgear_r6350.dts | 5 +- .../linux/ramips/dts/mt7621_netgear_r6850.dts | 2 +- ...r6220.dtsi => mt7621_netgear_sercomm.dtsi} | 38 +---- .../dts/mt7621_netgear_sercomm_chj.dtsi | 72 ++++++++ .../ramips/dts/mt7621_netgear_wndr3700-v5.dts | 38 ++++- 8 files changed, 141 insertions(+), 217 deletions(-) delete mode 100644 target/linux/ramips/dts/mt7621_netgear_r6260_r6350_r6850.dtsi rename target/linux/ramips/dts/{mt7621_netgear_r6220.dtsi => mt7621_netgear_sercomm.dtsi} (72%) create mode 100644 target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi diff --git a/target/linux/ramips/dts/mt7621_netgear_r6220.dts b/target/linux/ramips/dts/mt7621_netgear_r6220.dts index 8fdbf912eb..281c0d5331 100644 --- a/target/linux/ramips/dts/mt7621_netgear_r6220.dts +++ b/target/linux/ramips/dts/mt7621_netgear_r6220.dts @@ -1,14 +1,40 @@ // SPDX-License-Identifier: GPL-2.0 /dts-v1/; -#include "mt7621_netgear_r6220.dtsi" - -#include -#include +#include "mt7621_netgear_sercomm.dtsi" / { compatible = "netgear,r6220", "mediatek,mt7621-soc"; model = "Netgear R6220"; + + keys { + compatible = "gpio-keys"; + + wps { + label = "wps"; + gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>; + linux,code = ; + }; + + wifi { + label = "wifi"; + gpios = <&gpio0 8 GPIO_ACTIVE_HIGH>; + linux,code = ; + }; + + reset { + label = "reset"; + gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>; + linux,code = ; + }; + }; +}; + +&leds { + wps { + gpios = <&gpio0 12 GPIO_ACTIVE_LOW>; + label = "r6220:green:wps"; + }; }; &led_power { @@ -27,10 +53,6 @@ label = "r6220:green:wifi"; }; -&led_wps { - label = "r6220:green:wps"; -}; - &nand { status = "okay"; diff --git a/target/linux/ramips/dts/mt7621_netgear_r6260.dts b/target/linux/ramips/dts/mt7621_netgear_r6260.dts index 9c6acadd67..8251fe595c 100644 --- a/target/linux/ramips/dts/mt7621_netgear_r6260.dts +++ b/target/linux/ramips/dts/mt7621_netgear_r6260.dts @@ -1,10 +1,7 @@ // SPDX-License-Identifier: GPL-2.0 /dts-v1/; -#include "mt7621_netgear_r6260_r6350_r6850.dtsi" - -#include -#include +#include "mt7621_netgear_sercomm_chj.dtsi" / { compatible = "netgear,r6260", "mediatek,mt7621-soc"; diff --git a/target/linux/ramips/dts/mt7621_netgear_r6260_r6350_r6850.dtsi b/target/linux/ramips/dts/mt7621_netgear_r6260_r6350_r6850.dtsi deleted file mode 100644 index c09fb947c1..0000000000 --- a/target/linux/ramips/dts/mt7621_netgear_r6260_r6350_r6850.dtsi +++ /dev/null @@ -1,160 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0 -/dts-v1/; - -#include "mt7621.dtsi" - -#include -#include - -/ { - compatible = "mediatek,mt7621-soc"; - - aliases { - led-boot = &led_power; - led-failsafe = &led_power; - led-running = &led_power; - led-upgrade = &led_power; - label-mac-device = ðernet; - }; - - chosen { - bootargs = "console=ttyS0,57600"; - }; - - leds { - compatible = "gpio-leds"; - - led_power: power { - gpios = <&gpio0 18 GPIO_ACTIVE_LOW>; - }; - - led_usb: usb { - gpios = <&gpio0 15 GPIO_ACTIVE_LOW>; - trigger-sources = <&xhci_ehci_port1>, <&ehci_port2>; - linux,default-trigger = "usbport"; - }; - - led_internet: internet { - gpios = <&gpio0 13 GPIO_ACTIVE_LOW>; - }; - - led_wifi: wifi { - gpios = <&gpio0 16 GPIO_ACTIVE_LOW>; - linux,default-trigger = "phy0tpt"; - }; - }; - - keys { - compatible = "gpio-keys"; - - wps { - label = "wps"; - gpios = <&gpio0 7 GPIO_ACTIVE_LOW>; - linux,code = ; - }; - - reset { - label = "reset"; - gpios = <&gpio0 14 GPIO_ACTIVE_LOW>; - linux,code = ; - }; - }; - - reg_usb_vbus: regulator { - compatible = "regulator-fixed"; - regulator-name = "usb_vbus"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - gpio = <&gpio0 10 GPIO_ACTIVE_HIGH>; - enable-active-high; - }; -}; - -&nand { - status = "okay"; - - partitions { - compatible = "fixed-partitions"; - #address-cells = <1>; - #size-cells = <1>; - - partition@0 { - label = "u-boot"; - reg = <0x0 0x100000>; - read-only; - }; - - partition@100000 { - label = "SC PART_MAP"; - reg = <0x100000 0x100000>; - read-only; - }; - - partition@200000 { - label = "kernel"; - reg = <0x200000 0x400000>; - }; - - partition@600000 { - label = "ubi"; - reg = <0x600000 0x2800000>; - }; - - partition@2e00000 { - label = "reserved0"; - reg = <0x2e00000 0x1800000>; - read-only; - }; - - factory: partition@4600000 { - label = "factory"; - reg = <0x4600000 0x200000>; - read-only; - }; - - partition@4800000 { - label = "reserved1"; - reg = <0x4800000 0x3800000>; - read-only; - }; - }; -}; - -&xhci { - vbus-supply = <®_usb_vbus>; -}; - -&pcie { - status = "okay"; -}; - -&pcie0 { - wifi@0,0 { - compatible = "mediatek,mt76"; - reg = <0x0 0 0 0 0>; - mediatek,mtd-eeprom = <&factory 0x8000>; - ieee80211-freq-limit = <5000000 6000000>; - }; -}; - -&pcie1 { - wifi@0,0 { - compatible = "mediatek,mt76"; - reg = <0x0 0 0 0 0>; - mediatek,mtd-eeprom = <&factory 0x0>; - ieee80211-freq-limit = <2400000 2500000>; - }; -}; - -ðernet { - mtd-mac-address = <&factory 0x4>; -}; - -&pinctrl { - state_default: pinctrl0 { - gpio { - ralink,group = "uart3", "uart2", "jtag", "wdt"; - ralink,function = "gpio"; - }; - }; -}; diff --git a/target/linux/ramips/dts/mt7621_netgear_r6350.dts b/target/linux/ramips/dts/mt7621_netgear_r6350.dts index 3b8d4de102..c1e3a08897 100644 --- a/target/linux/ramips/dts/mt7621_netgear_r6350.dts +++ b/target/linux/ramips/dts/mt7621_netgear_r6350.dts @@ -1,10 +1,7 @@ // SPDX-License-Identifier: GPL-2.0 /dts-v1/; -#include "mt7621_netgear_r6260_r6350_r6850.dtsi" - -#include -#include +#include "mt7621_netgear_sercomm_chj.dtsi" / { compatible = "netgear,r6350", "mediatek,mt7621-soc"; diff --git a/target/linux/ramips/dts/mt7621_netgear_r6850.dts b/target/linux/ramips/dts/mt7621_netgear_r6850.dts index 6a24e97017..ec3657b947 100644 --- a/target/linux/ramips/dts/mt7621_netgear_r6850.dts +++ b/target/linux/ramips/dts/mt7621_netgear_r6850.dts @@ -1,7 +1,7 @@ // SPDX-License-Identifier: GPL-2.0 /dts-v1/; -#include "mt7621_netgear_r6260_r6350_r6850.dtsi" +#include "mt7621_netgear_sercomm_chj.dtsi" #include #include diff --git a/target/linux/ramips/dts/mt7621_netgear_r6220.dtsi b/target/linux/ramips/dts/mt7621_netgear_sercomm.dtsi similarity index 72% rename from target/linux/ramips/dts/mt7621_netgear_r6220.dtsi rename to target/linux/ramips/dts/mt7621_netgear_sercomm.dtsi index 1d64c6741e..7cff51a090 100644 --- a/target/linux/ramips/dts/mt7621_netgear_r6220.dtsi +++ b/target/linux/ramips/dts/mt7621_netgear_sercomm.dtsi @@ -21,7 +21,7 @@ bootargs = "console=ttyS0,57600"; }; - leds { + leds: leds { compatible = "gpio-leds"; led_power: power { @@ -42,32 +42,6 @@ gpios = <&gpio0 16 GPIO_ACTIVE_LOW>; linux,default-trigger = "phy0tpt"; }; - - led_wps: wps { - gpios = <&gpio0 12 GPIO_ACTIVE_LOW>; - }; - }; - - keys { - compatible = "gpio-keys"; - - wps { - label = "wps"; - gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>; - linux,code = ; - }; - - wifi { - label = "wifi"; - gpios = <&gpio0 8 GPIO_ACTIVE_HIGH>; - linux,code = ; - }; - - reset { - label = "reset"; - gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>; - linux,code = ; - }; }; reg_usb_vbus: regulator { @@ -90,8 +64,8 @@ &pcie0 { wifi@0,0 { - compatible = "pci14c3,7662"; - reg = <0x0000 0 0 0 0>; + compatible = "mediatek,mt76"; + reg = <0x0 0 0 0 0>; mediatek,mtd-eeprom = <&factory 0x8000>; ieee80211-freq-limit = <5000000 6000000>; }; @@ -99,9 +73,9 @@ &pcie1 { wifi@0,0 { - compatible = "pci14c3,7603"; - reg = <0x0000 0 0 0 0>; - mediatek,mtd-eeprom = <&factory 0x0000>; + compatible = "mediatek,mt76"; + reg = <0x0 0 0 0 0>; + mediatek,mtd-eeprom = <&factory 0x0>; ieee80211-freq-limit = <2400000 2500000>; }; }; diff --git a/target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi b/target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi new file mode 100644 index 0000000000..d09585a753 --- /dev/null +++ b/target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi @@ -0,0 +1,72 @@ +// SPDX-License-Identifier: GPL-2.0 +/dts-v1/; + +#include "mt7621_netgear_sercomm.dtsi" + +/ { + keys { + compatible = "gpio-keys"; + + wps { + label = "wps"; + gpios = <&gpio0 7 GPIO_ACTIVE_LOW>; + linux,code = ; + }; + + reset { + label = "reset"; + gpios = <&gpio0 14 GPIO_ACTIVE_LOW>; + linux,code = ; + }; + }; +}; + +&nand { + status = "okay"; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x100000>; + read-only; + }; + + partition@100000 { + label = "SC PART_MAP"; + reg = <0x100000 0x100000>; + read-only; + }; + + partition@200000 { + label = "kernel"; + reg = <0x200000 0x400000>; + }; + + partition@600000 { + label = "ubi"; + reg = <0x600000 0x2800000>; + }; + + partition@2e00000 { + label = "reserved0"; + reg = <0x2e00000 0x1800000>; + read-only; + }; + + factory: partition@4600000 { + label = "factory"; + reg = <0x4600000 0x200000>; + read-only; + }; + + partition@4800000 { + label = "reserved1"; + reg = <0x4800000 0x3800000>; + read-only; + }; + }; +}; diff --git a/target/linux/ramips/dts/mt7621_netgear_wndr3700-v5.dts b/target/linux/ramips/dts/mt7621_netgear_wndr3700-v5.dts index 090020d5e0..a8e4b5c632 100644 --- a/target/linux/ramips/dts/mt7621_netgear_wndr3700-v5.dts +++ b/target/linux/ramips/dts/mt7621_netgear_wndr3700-v5.dts @@ -1,14 +1,40 @@ // SPDX-License-Identifier: GPL-2.0 /dts-v1/; -#include "mt7621_netgear_r6220.dtsi" - -#include -#include +#include "mt7621_netgear_sercomm.dtsi" / { compatible = "netgear,wndr3700-v5", "mediatek,mt7621-soc"; model = "Netgear WNDR3700 v5"; + + keys { + compatible = "gpio-keys"; + + wps { + label = "wps"; + gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>; + linux,code = ; + }; + + wifi { + label = "wifi"; + gpios = <&gpio0 8 GPIO_ACTIVE_HIGH>; + linux,code = ; + }; + + reset { + label = "reset"; + gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>; + linux,code = ; + }; + }; +}; + +&leds { + wps { + gpios = <&gpio0 12 GPIO_ACTIVE_LOW>; + label = "wndr3700-v5:green:wps"; + }; }; &led_power { @@ -27,10 +53,6 @@ label = "wndr3700-v5:green:wifi"; }; -&led_wps { - label = "wndr3700-v5:green:wps"; -}; - &spi0 { status = "okay";