From 6a76ea359b14cf833e1670707ff43fdb5f394eab Mon Sep 17 00:00:00 2001 From: David Bauer Date: Sun, 17 Nov 2019 15:51:48 +0100 Subject: [PATCH] ramips: reorganize NETGEAR sercomm boards This re-organizes the device-tree files for the Sercomm-manufactured NETGEAR routers. They are now split into two different base-boards, from which the respective model is extended. This partially reverts commit c7842ceaaa27 ("ramips: reorganize DTSI files for Netgear R devices"), which introduced inheritance between two completely unrelated base-boards. Signed-off-by: David Bauer --- .../linux/ramips/dts/mt7621_netgear_r6220.dts | 35 ++------ .../linux/ramips/dts/mt7621_netgear_r6850.dts | 3 - ...m.dtsi => mt7621_netgear_sercomm_ayx.dtsi} | 28 +++++- .../dts/mt7621_netgear_sercomm_chj.dtsi | 90 ++++++++++++++++++- .../ramips/dts/mt7621_netgear_wndr3700-v5.dts | 35 ++------ 5 files changed, 126 insertions(+), 65 deletions(-) rename target/linux/ramips/dts/{mt7621_netgear_sercomm.dtsi => mt7621_netgear_sercomm_ayx.dtsi} (79%) diff --git a/target/linux/ramips/dts/mt7621_netgear_r6220.dts b/target/linux/ramips/dts/mt7621_netgear_r6220.dts index f23e12b852..4779b71c1d 100644 --- a/target/linux/ramips/dts/mt7621_netgear_r6220.dts +++ b/target/linux/ramips/dts/mt7621_netgear_r6220.dts @@ -1,40 +1,11 @@ // SPDX-License-Identifier: GPL-2.0 /dts-v1/; -#include "mt7621_netgear_sercomm.dtsi" +#include "mt7621_netgear_sercomm_ayx.dtsi" / { compatible = "netgear,r6220", "mediatek,mt7621-soc"; model = "Netgear R6220"; - - keys { - compatible = "gpio-keys"; - - wps { - label = "wps"; - gpios = <&gpio0 7 GPIO_ACTIVE_LOW>; - linux,code = ; - }; - - wifi { - label = "wifi"; - gpios = <&gpio0 8 GPIO_ACTIVE_LOW>; - linux,code = ; - }; - - reset { - label = "reset"; - gpios = <&gpio0 14 GPIO_ACTIVE_LOW>; - linux,code = ; - }; - }; -}; - -&leds { - wps { - gpios = <&gpio0 12 GPIO_ACTIVE_LOW>; - label = "r6220:green:wps"; - }; }; &led_power { @@ -53,6 +24,10 @@ label = "r6220:green:wifi"; }; +&led_wps { + label = "r6220:green:wps"; +}; + &nand { status = "okay"; diff --git a/target/linux/ramips/dts/mt7621_netgear_r6850.dts b/target/linux/ramips/dts/mt7621_netgear_r6850.dts index ec3657b947..5accbbdbd8 100644 --- a/target/linux/ramips/dts/mt7621_netgear_r6850.dts +++ b/target/linux/ramips/dts/mt7621_netgear_r6850.dts @@ -3,9 +3,6 @@ #include "mt7621_netgear_sercomm_chj.dtsi" -#include -#include - / { compatible = "netgear,r6850", "mediatek,mt7621-soc"; model = "Netgear R6850"; diff --git a/target/linux/ramips/dts/mt7621_netgear_sercomm.dtsi b/target/linux/ramips/dts/mt7621_netgear_sercomm_ayx.dtsi similarity index 79% rename from target/linux/ramips/dts/mt7621_netgear_sercomm.dtsi rename to target/linux/ramips/dts/mt7621_netgear_sercomm_ayx.dtsi index 7cff51a090..5d304441c0 100644 --- a/target/linux/ramips/dts/mt7621_netgear_sercomm.dtsi +++ b/target/linux/ramips/dts/mt7621_netgear_sercomm_ayx.dtsi @@ -21,7 +21,29 @@ bootargs = "console=ttyS0,57600"; }; - leds: leds { + keys { + compatible = "gpio-keys"; + + wps { + label = "wps"; + gpios = <&gpio0 7 GPIO_ACTIVE_LOW>; + linux,code = ; + }; + + wifi { + label = "wifi"; + gpios = <&gpio0 8 GPIO_ACTIVE_LOW>; + linux,code = ; + }; + + reset { + label = "reset"; + gpios = <&gpio0 14 GPIO_ACTIVE_LOW>; + linux,code = ; + }; + }; + + leds { compatible = "gpio-leds"; led_power: power { @@ -42,6 +64,10 @@ gpios = <&gpio0 16 GPIO_ACTIVE_LOW>; linux,default-trigger = "phy0tpt"; }; + + led_wps: wps { + gpios = <&gpio0 12 GPIO_ACTIVE_LOW>; + }; }; reg_usb_vbus: regulator { diff --git a/target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi b/target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi index d09585a753..f234caaf25 100644 --- a/target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi +++ b/target/linux/ramips/dts/mt7621_netgear_sercomm_chj.dtsi @@ -1,9 +1,49 @@ // SPDX-License-Identifier: GPL-2.0 /dts-v1/; -#include "mt7621_netgear_sercomm.dtsi" +#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"; @@ -19,6 +59,54 @@ 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; + }; +}; + +&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"; + }; + }; }; &nand { diff --git a/target/linux/ramips/dts/mt7621_netgear_wndr3700-v5.dts b/target/linux/ramips/dts/mt7621_netgear_wndr3700-v5.dts index 5cf09ac7c4..a5c8b21d53 100644 --- a/target/linux/ramips/dts/mt7621_netgear_wndr3700-v5.dts +++ b/target/linux/ramips/dts/mt7621_netgear_wndr3700-v5.dts @@ -1,40 +1,11 @@ // SPDX-License-Identifier: GPL-2.0 /dts-v1/; -#include "mt7621_netgear_sercomm.dtsi" +#include "mt7621_netgear_sercomm_ayx.dtsi" / { compatible = "netgear,wndr3700-v5", "mediatek,mt7621-soc"; model = "Netgear WNDR3700 v5"; - - keys { - compatible = "gpio-keys"; - - wps { - label = "wps"; - gpios = <&gpio0 7 GPIO_ACTIVE_LOW>; - linux,code = ; - }; - - wifi { - label = "wifi"; - gpios = <&gpio0 8 GPIO_ACTIVE_LOW>; - linux,code = ; - }; - - reset { - label = "reset"; - gpios = <&gpio0 14 GPIO_ACTIVE_LOW>; - linux,code = ; - }; - }; -}; - -&leds { - wps { - gpios = <&gpio0 12 GPIO_ACTIVE_LOW>; - label = "wndr3700-v5:green:wps"; - }; }; &led_power { @@ -53,6 +24,10 @@ label = "wndr3700-v5:green:wifi"; }; +&led_wps { + label = "wndr3700-v5:green:wps"; +}; + &spi0 { status = "okay"; -- 2.25.1