From 8bc4aaf45cee578f6e527b1582d0dcf065dc81c8 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Andreas=20B=C3=B6hler?= Date: Mon, 10 Apr 2023 23:31:34 +0200 Subject: [PATCH] ath79: refactor ZTE MF28x dts files MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Move common dts entries of ZTE MF281 and ZTE MF286 to a common .dtsi file to reduce redundancies. Signed-off-by: Andreas Böhler --- target/linux/ath79/dts/qca9563_zte_mf281.dts | 299 ++++++------------ target/linux/ath79/dts/qca9563_zte_mf286.dtsi | 127 +------- target/linux/ath79/dts/qca9563_zte_mf28x.dtsi | 136 ++++++++ 3 files changed, 233 insertions(+), 329 deletions(-) create mode 100644 target/linux/ath79/dts/qca9563_zte_mf28x.dtsi diff --git a/target/linux/ath79/dts/qca9563_zte_mf281.dts b/target/linux/ath79/dts/qca9563_zte_mf281.dts index 2f4b7316bf..9205061e24 100644 --- a/target/linux/ath79/dts/qca9563_zte_mf281.dts +++ b/target/linux/ath79/dts/qca9563_zte_mf281.dts @@ -3,246 +3,157 @@ // Copyright (c) 2021, 2022 Lech Perczak // Copyright (c) 2022 David Bauer -#include "qca956x.dtsi" - -#include -#include -#include +#include "qca9563_zte_mf28x.dtsi" / { model = "ZTE MF281"; compatible = "zte,mf281", "qca,qca9563"; - aliases { - led-boot = &led_debug; - led-failsafe = &led_debug; - led-running = &led_debug; - led-upgrade = &led_debug; - label-mac-device = ð0; - }; - leds { - compatible = "gpio-leds"; pinctrl-names = "default"; pinctrl-0 = <&enable_wlan_led_gpio>; - - /* Hidden SMD LED below signal strength LEDs. - * Visible through slits underside of the case. - */ - led_debug: debug { - label = "green:debug"; - gpios = <&gpio 7 GPIO_ACTIVE_LOW>; - default-state = "on"; - }; }; +}; - keys { - compatible = "gpio-keys"; +&led_debug { + label = "green:debug"; + color = ; +}; - reset { - label = "reset"; - linux,code = ; - gpios = <&gpio 2 GPIO_ACTIVE_LOW>; - debounce-interval = <60>; +&boot_flash { + partitions { + partition@0 { + label = "u-boot"; + reg = <0x0 0xa0000>; + read-only; }; - wps { - label = "wps"; - linux,code = ; - gpios = <&gpio 1 GPIO_ACTIVE_LOW>; - debounce-interval = <60>; + partition@80000 { + label = "u-boot-env"; + reg = <0xa0000 0x20000>; + read-only; }; }; - - /* This GPIO is used to reset whole board _including_ the modem */ - gpio-restart { - compatible = "gpio-restart"; - gpios = <&gpio 5 GPIO_ACTIVE_HIGH>; - active-delay = <3000>; - inactive-delay = <1000>; - }; }; -&spi { - status = "okay"; +&system_flash { + partitions { + partition@0 { + label = "fota-flag"; + reg = <0x000000 0xa0000>; + read-only; + }; - flash@0 { - compatible = "jedec,spi-nor"; - reg = <0>; - spi-max-frequency = <25000000>; + partition@a0000 { + label = "art"; + reg = <0xa0000 0x80000>; + read-only; - partitions { - compatible = "fixed-partitions"; + compatible = "nvmem-cells"; #address-cells = <1>; #size-cells = <1>; - partition@0 { - label = "u-boot"; - reg = <0x0 0xa0000>; - read-only; + cal_caldata_1000: cal@1000 { + reg = <0x1000 0x440>; }; - partition@80000 { - label = "u-boot-env"; - reg = <0xa0000 0x20000>; - read-only; + cal_caldata_5000: cal@5000 { + reg = <0x5000 0x2f20>; }; }; - }; - flash@1 { - compatible = "spi-nand"; - reg = <1>; - spi-max-frequency = <25000000>; + partition@120000 { + label = "mac"; + reg = <0x120000 0x80000>; + read-only; - partitions { - compatible = "fixed-partitions"; + compatible = "nvmem-cells"; #address-cells = <1>; #size-cells = <1>; - partition@0 { - label = "fota-flag"; - reg = <0x000000 0xa0000>; - read-only; - }; - - partition@a0000 { - label = "art"; - reg = <0xa0000 0x80000>; - read-only; - - compatible = "nvmem-cells"; - #address-cells = <1>; - #size-cells = <1>; - - cal_caldata_1000: cal@1000 { - reg = <0x1000 0x440>; - }; - - cal_caldata_5000: cal@5000 { - reg = <0x5000 0x2f20>; - }; - }; - - partition@120000 { - label = "mac"; - reg = <0x120000 0x80000>; - read-only; - - compatible = "nvmem-cells"; - #address-cells = <1>; - #size-cells = <1>; - - macaddr_mac_0: macaddr@0 { - reg = <0x0 0x6>; - }; - }; - - partition@1a0000 { - label = "reserved2"; - reg = <0x1a0000 0xc0000>; - read-only; - }; - - partition@260000 { - label = "cfg-param"; - reg = <0x260000 0x400000>; - read-only; + macaddr_mac_0: macaddr@0 { + reg = <0x0 0x6>; }; + }; - partition@660000 { - label = "log"; - reg = <0x660000 0x400000>; - read-only; - }; + partition@1a0000 { + label = "reserved2"; + reg = <0x1a0000 0xc0000>; + read-only; + }; - partition@a60000 { - label = "oops"; - reg = <0xa60000 0xa0000>; - read-only; - }; + partition@260000 { + label = "cfg-param"; + reg = <0x260000 0x400000>; + read-only; + }; - partition@b00000 { - label = "reserved3"; - reg = <0xb00000 0x500000>; - read-only; - }; + partition@660000 { + label = "log"; + reg = <0x660000 0x400000>; + read-only; + }; - partition@1000000 { - label = "web"; - reg = <0x1000000 0x800000>; - read-only; - }; + partition@a60000 { + label = "oops"; + reg = <0xa60000 0xa0000>; + read-only; + }; - partition@1800000 { - label = "firmware"; - reg = <0x1800000 0x1d00000>; + partition@b00000 { + label = "reserved3"; + reg = <0xb00000 0x500000>; + read-only; + }; - compatible = "fixed-partitions"; - #address-cells = <1>; - #size-cells = <1>; + partition@1000000 { + label = "web"; + reg = <0x1000000 0x800000>; + read-only; + }; - partition@0 { - label = "kernel"; - reg = <0x0 0x600000>; - }; + partition@1800000 { + label = "firmware"; + reg = <0x1800000 0x1d00000>; - partition@600000 { - label = "ubi"; - reg = <0x600000 0x1700000>; - }; - }; + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; - partition@3500000 { - label = "data"; - reg = <0x3500000 0x1900000>; - read-only; + partition@0 { + label = "kernel"; + reg = <0x0 0x600000>; }; - partition@4e00000 { - label = "fota"; - reg = <0x4e00000 0x3200000>; - read-only; + partition@600000 { + label = "ubi"; + reg = <0x600000 0x1700000>; }; }; - }; -}; -&mdio0 { - status = "okay"; - - phy0: ethernet-phy@0 { - reg = <0>; - phy-mode = "sgmii"; + partition@3500000 { + label = "data"; + reg = <0x3500000 0x1900000>; + read-only; + }; - qca,ar8327-initvals = < - 0x04 0x00080080 /* PORT0 PAD MODE CTRL */ - 0x7c 0x0000007e /* PORT0_STATUS */ - >; + partition@4e00000 { + label = "fota"; + reg = <0x4e00000 0x3200000>; + read-only; + }; }; }; ð0 { - status = "okay"; - - phy-mode = "sgmii"; - phy-handle = <&phy0>; - nvmem-cells = <&macaddr_mac_0>; nvmem-cell-names = "mac-address"; }; -&pcie { - status = "okay"; - - wifi@0,0 { - compatible = "qcom,ath10k"; - reg = <0x0 0 0 0 0>; - - nvmem-cells = <&macaddr_mac_0>, <&cal_caldata_5000>; - nvmem-cell-names = "mac-address", "pre-calibration"; - mac-address-increment = <1>; - }; +&wifi_ath10k { + nvmem-cells = <&macaddr_mac_0>, <&cal_caldata_5000>; + nvmem-cell-names = "mac-address", "pre-calibration"; + mac-address-increment = <1>; }; &pinmux { @@ -252,24 +163,6 @@ }; &wmac { - status = "okay"; - nvmem-cells = <&macaddr_mac_0>, <&cal_caldata_1000>; nvmem-cell-names = "mac-address", "calibration"; }; - -&usb_phy0 { - status = "okay"; -}; - -&usb0 { - status = "okay"; -}; - -&usb_phy1 { - status = "okay"; -}; - -&usb1 { - status = "okay"; -}; diff --git a/target/linux/ath79/dts/qca9563_zte_mf286.dtsi b/target/linux/ath79/dts/qca9563_zte_mf286.dtsi index f794195c3f..df9a9d3f69 100644 --- a/target/linux/ath79/dts/qca9563_zte_mf286.dtsi +++ b/target/linux/ath79/dts/qca9563_zte_mf286.dtsi @@ -1,36 +1,13 @@ // SPDX-License-Identifier: GPL-2.0-or-later OR MIT // Copyright (c) 2021 Cezary Jackiewicz // Copyright (c) 2021, 2022 Lech Perczak -#include "qca956x.dtsi" - -#include -#include -#include +#include "qca9563_zte_mf28x.dtsi" / { - aliases { - led-boot = &led_debug; - led-failsafe = &led_debug; - led-running = &led_debug; - led-upgrade = &led_debug; - label-mac-device = ð0; - }; - leds { - compatible = "gpio-leds"; pinctrl-names = "default"; pinctrl-0 = <&enable_wlan_led_gpio>; - /* Hidden SMD LED below signal strength LEDs. - * Visible through slits underside of the case, - * and slightly through the case below signal state LEDs - */ - led_debug: led-0 { - function = LED_FUNCTION_DEBUG; - gpios = <&gpio 7 GPIO_ACTIVE_LOW>; - default-state = "on"; - }; - led-1 { function = LED_FUNCTION_WLAN; color = ; @@ -40,22 +17,6 @@ }; keys { - compatible = "gpio-keys"; - - reset { - label = "reset"; - linux,code = ; - gpios = <&gpio 2 GPIO_ACTIVE_LOW>; - debounce-interval = <60>; - }; - - wps { - label = "wps"; - linux,code = ; - gpios = <&gpio 1 GPIO_ACTIVE_LOW>; - debounce-interval = <60>; - }; - wifi { label = "wifi"; linux,code = ; @@ -63,72 +24,6 @@ debounce-interval = <60>; }; }; - - /* This GPIO is used to reset whole board _including_ the modem */ - gpio-restart { - compatible = "gpio-restart"; - gpios = <&gpio 5 GPIO_ACTIVE_HIGH>; - active-delay = <3000>; - inactive-delay = <1000>; - }; -}; - -&spi { - status = "okay"; - - boot_flash: flash@0 { - compatible = "jedec,spi-nor"; - reg = <0>; - spi-max-frequency = <25000000>; - - partitions { - compatible = "fixed-partitions"; - #address-cells = <1>; - #size-cells = <1>; - }; - }; - - system_flash: flash@1 { - compatible = "spi-nand"; - reg = <1>; - spi-max-frequency = <25000000>; - - partitions { - compatible = "fixed-partitions"; - #address-cells = <1>; - #size-cells = <1>; - }; - }; -}; - -&mdio0 { - status = "okay"; - - phy0: ethernet-phy@0 { - reg = <0>; - phy-mode = "sgmii"; - - qca,ar8327-initvals = < - 0x04 0x00080080 /* PORT0 PAD MODE CTRL */ - 0x7c 0x0000007e /* PORT0_STATUS */ - >; - }; -}; - -ð0 { - status = "okay"; - - phy-mode = "sgmii"; - phy-handle = <&phy0>; -}; - -&pcie { - status = "okay"; - - wifi_ath10k: wifi@0,0 { - compatible = "qcom,ath10k"; - reg = <0x0 0 0 0 0>; - }; }; &pinmux { @@ -136,23 +31,3 @@ pinctrl-single,bits = <0x10 0x0 0xff000000>; }; }; - -&wmac { - status = "okay"; -}; - -&usb_phy0 { - status = "okay"; -}; - -&usb0 { - status = "okay"; -}; - -&usb_phy1 { - status = "okay"; -}; - -&usb1 { - status = "okay"; -}; diff --git a/target/linux/ath79/dts/qca9563_zte_mf28x.dtsi b/target/linux/ath79/dts/qca9563_zte_mf28x.dtsi new file mode 100644 index 0000000000..1edcd7e5ea --- /dev/null +++ b/target/linux/ath79/dts/qca9563_zte_mf28x.dtsi @@ -0,0 +1,136 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +// Copyright (c) 2021 Cezary Jackiewicz +// Copyright (c) 2021, 2022 Lech Perczak +#include "qca956x.dtsi" + +#include +#include +#include + +/ { + aliases { + led-boot = &led_debug; + led-failsafe = &led_debug; + led-running = &led_debug; + led-upgrade = &led_debug; + label-mac-device = ð0; + }; + + leds { + compatible = "gpio-leds"; + + /* Hidden SMD LED below signal strength LEDs. + * Visible through slits underside of the case, + * and slightly through the case below signal state LEDs + */ + led_debug: led-0 { + function = LED_FUNCTION_DEBUG; + gpios = <&gpio 7 GPIO_ACTIVE_LOW>; + default-state = "on"; + }; + }; + + keys { + compatible = "gpio-keys"; + + reset { + label = "reset"; + linux,code = ; + gpios = <&gpio 2 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; + }; + + wps { + label = "wps"; + linux,code = ; + gpios = <&gpio 1 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; + }; + }; + + /* This GPIO is used to reset whole board _including_ the modem */ + gpio-restart { + compatible = "gpio-restart"; + gpios = <&gpio 5 GPIO_ACTIVE_HIGH>; + active-delay = <3000>; + inactive-delay = <1000>; + }; +}; + +&spi { + status = "okay"; + + boot_flash: flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <25000000>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + }; + }; + + system_flash: flash@1 { + compatible = "spi-nand"; + reg = <1>; + spi-max-frequency = <25000000>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + }; + }; +}; + +&mdio0 { + status = "okay"; + + phy0: ethernet-phy@0 { + reg = <0>; + phy-mode = "sgmii"; + + qca,ar8327-initvals = < + 0x04 0x00080080 /* PORT0 PAD MODE CTRL */ + 0x7c 0x0000007e /* PORT0_STATUS */ + >; + }; +}; + +ð0 { + status = "okay"; + + phy-mode = "sgmii"; + phy-handle = <&phy0>; +}; + +&pcie { + status = "okay"; + + wifi_ath10k: wifi@0,0 { + compatible = "qcom,ath10k"; + reg = <0x0 0 0 0 0>; + }; +}; + +&wmac { + status = "okay"; +}; + +&usb_phy0 { + status = "okay"; +}; + +&usb0 { + status = "okay"; +}; + +&usb_phy1 { + status = "okay"; +}; + +&usb1 { + status = "okay"; +}; -- 2.30.2