From 2742705fa531cdccadafe2a9088bb3b33e568f97 Mon Sep 17 00:00:00 2001 From: Michael Pratt Date: Sat, 21 Jan 2023 13:45:26 -0500 Subject: [PATCH] ath79: split Engenius EPG5000 DTS to common DTSI Split the DTS to be used with similar boards made by Senao, dual-band routers with Atheros / Qualcomm ethernet switch. Set initvals for the switch in each device's DTS. Set some common calibration nvmem-cells in DTSI. While at it, fix MTD partition node names. Signed-off-by: Michael Pratt --- .../ath79/dts/qca9558_engenius_epg5000.dts | 114 +--------------- .../ath79/dts/qca955x_senao_router-dual.dtsi | 122 ++++++++++++++++++ 2 files changed, 128 insertions(+), 108 deletions(-) create mode 100644 target/linux/ath79/dts/qca955x_senao_router-dual.dtsi diff --git a/target/linux/ath79/dts/qca9558_engenius_epg5000.dts b/target/linux/ath79/dts/qca9558_engenius_epg5000.dts index 35716152add..37ad32f330e 100644 --- a/target/linux/ath79/dts/qca9558_engenius_epg5000.dts +++ b/target/linux/ath79/dts/qca9558_engenius_epg5000.dts @@ -1,9 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-or-later OR MIT -#include "qca955x.dtsi" - -#include -#include +#include "qca955x_senao_router-dual.dtsi" / { model = "EnGenius EPG5000"; @@ -47,110 +44,13 @@ gpios = <&gpio 19 GPIO_ACTIVE_LOW>; }; }; - - keys { - compatible = "gpio-keys"; - - reset { - label = "reset"; - linux,code = ; - gpios = <&gpio 17 GPIO_ACTIVE_LOW>; - debounce-interval = <60>; - }; - - wps { - label = "wps"; - linux,code = ; - gpios = <&gpio 16 GPIO_ACTIVE_LOW>; - debounce-interval = <60>; - }; - }; -}; - -ð0 { - status = "okay"; - - phy-handle = <&phy0>; - pll-data = <0xa6000000 0x00000101 0x00001616>; -}; - -&mdio0 { - status = "okay"; - - phy0: ethernet-phy@0 { - reg = <0>; - - qca,ar8327-initvals = < - 0x04 0x87600000 /* PORT0 PAD MODE CTRL */ - 0x7c 0x0000007e /* PORT0_STATUS */ - >; - }; -}; - -&pcie0 { - status = "okay"; - - wifi@0,0 { - compatible = "pci168c,003c"; - reg = <0x0000 0 0 0 0>; - }; }; -&spi { - status = "okay"; - - flash@0 { - compatible = "jedec,spi-nor"; - reg = <0>; - spi-max-frequency = <25000000>; - - partitions { - compatible = "fixed-partitions"; - #address-cells = <1>; - #size-cells = <1>; - - partition@0 { - label = "u-boot"; - reg = <0x000000 0x030000>; - read-only; - }; - - partition@30000 { - label = "u-boot-env"; - reg = <0x030000 0x010000>; - }; - - partition@40000 { - compatible = "denx,uimage"; - label = "firmware"; - reg = <0x040000 0xe50000>; - }; - - partition@790000 { - label = "manufacture"; - reg = <0xe90000 0x100000>; - read-only; - }; - - partition@ed0000 { - label = "backup"; - reg = <0xf90000 0x010000>; - read-only; - }; - - partition@fe0000 { - label = "storage"; - reg = <0xfa0000 0x050000>; - read-only; - }; - - partition@ff0000 { - label = "art"; - reg = <0xff0000 0x010000>; - read-only; - }; - }; - }; +&phy0 { + qca,ar8327-initvals = < + 0x04 0x87600000 /* PORT0 PAD MODE CTRL */ + 0x7c 0x0000007e /* PORT0_STATUS */ + >; }; &usb_phy1 { @@ -162,7 +62,5 @@ }; &wmac { - status = "okay"; - qca,no-eeprom; }; diff --git a/target/linux/ath79/dts/qca955x_senao_router-dual.dtsi b/target/linux/ath79/dts/qca955x_senao_router-dual.dtsi new file mode 100644 index 00000000000..20bea91e8de --- /dev/null +++ b/target/linux/ath79/dts/qca955x_senao_router-dual.dtsi @@ -0,0 +1,122 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include "qca955x.dtsi" + +#include +#include + +/ { + keys { + compatible = "gpio-keys"; + + reset { + label = "reset"; + linux,code = ; + gpios = <&gpio 17 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; + }; + + wps { + label = "wps"; + linux,code = ; + gpios = <&gpio 16 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; + }; + }; +}; + +ð0 { + status = "okay"; + + phy-handle = <&phy0>; + pll-data = <0xa6000000 0x00000101 0x00001616>; +}; + +&mdio0 { + status = "okay"; + + phy0: ethernet-phy@0 { + reg = <0>; + }; +}; + +&pcie0 { + status = "okay"; + + ath10k_0: wifi@0,0,0 { + compatible = "qcom,ath10k"; + reg = <0x0000 0 0 0 0>; + }; +}; + +&spi { + status = "okay"; + + flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <25000000>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "u-boot"; + reg = <0x000000 0x030000>; + read-only; + }; + + partition@30000 { + label = "u-boot-env"; + reg = <0x030000 0x010000>; + read-only; + }; + + partition@40000 { + compatible = "denx,uimage"; + label = "firmware"; + reg = <0x040000 0xe50000>; + }; + + partition@e90000 { + label = "manufacture"; + reg = <0xe90000 0x100000>; + read-only; + }; + + partition@f90000 { + label = "backup"; + reg = <0xf90000 0x010000>; + read-only; + }; + + partition@fa0000 { + label = "storage"; + reg = <0xfa0000 0x050000>; + read-only; + }; + + art: partition@ff0000 { + label = "art"; + reg = <0xff0000 0x010000>; + read-only; + + compatible = "nvmem-cells"; + + calibration_art_1000: calibration@1000 { + reg = <0x1000 0x440>; + }; + + calibration_art_5000: calibration@5000 { + reg = <0x5000 0x844>; + }; + }; + }; + }; +}; + +&wmac { + status = "okay"; +}; -- 2.30.2