From 30dcbc741d84e36ea5408d99593ccb35f900cb5e Mon Sep 17 00:00:00 2001 From: sven friedmann Date: Tue, 26 Mar 2019 22:35:05 +0100 Subject: ath79: add support for EnGenius ECB1750 Specification: - Qualcomm Atheros SoC QCA9558 - 720/600/200 MHz (CPU/DDR/AHB) - 128 MB of RAM (DDR2) - 16 MB of FLASH (SPI NOR) - 1x 10/100/1000 Mbps Ethernet - 3T3R 2.4 GHz (QCA9558 WMAC) - 3T3R 5.8 Ghz (QCA9880-BR4A, Senao PCE4553AH) https://fccid.io/A8J-ECB1750 Tested and working: - lan, wireless, leds, sysupgrade (tftp) Flash instructions: 1.) tftp recovery - use a 1GbE switch or direct attached 1GbE link - setup client ip address 192.168.1.10 and start tftpd - save "openwrt-ath79-generic-engenius_ecb1750-initramfs-kernel.bin" as "ap.bin" in tfpd root directory - plugin powercord and hold reset button 10secs.. "ap.bin" will be downloaded and executed - afterwards login via ssh and do a sysuprade 2.) oem webinterface factory install (not tested) Use normal webinterface upgrade page und select "openwrt-ath79-generic-engenius_ecb1750-squashfs-factory.bin". 3.) oem webinterface command injection OEM Firmware already running OpenWrt (Attitude Adjustment 12.09). Use OEM webinterface and command injection. See wiki for details. https://openwrt.org/toh/engenius/engenius_ecb1750_1 Signed-off-by: sven friedmann Signed-off-by: Christian Lamparter [use interrupt-driven "gpio-keys" binding] --- .../linux/ath79/dts/qca9558_engenius_ecb1750.dts | 144 +++++++++++++++++++++ 1 file changed, 144 insertions(+) create mode 100644 target/linux/ath79/dts/qca9558_engenius_ecb1750.dts (limited to 'target/linux/ath79/dts/qca9558_engenius_ecb1750.dts') diff --git a/target/linux/ath79/dts/qca9558_engenius_ecb1750.dts b/target/linux/ath79/dts/qca9558_engenius_ecb1750.dts new file mode 100644 index 0000000000..69bd244b7b --- /dev/null +++ b/target/linux/ath79/dts/qca9558_engenius_ecb1750.dts @@ -0,0 +1,144 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include +#include + +#include "qca9557.dtsi" + +/ { + compatible = "engenius,ecb1750", "qca,qca9557"; + model = "EnGenius ECB1750"; + + chosen { + bootargs = "console=ttyS0,115200n8"; + }; + + aliases { + led-boot = &power_orange; + led-failsafe = &power_orange; + led-running = &power_orange; + led-upgrade = &power_orange; + }; + + leds { + compatible = "gpio-leds"; + + power_orange: power_orange { + label = "ecb1750:orange:power"; + gpios = <&gpio 22 GPIO_ACTIVE_LOW>; + default-state = "on"; + }; + + wlan2g { + label = "ecb1750:blue:wlan2g"; + gpios = <&gpio 13 GPIO_ACTIVE_LOW>; + linux,default-trigger = "phy1tpt"; + }; + + wlan5g { + label = "ecb1750:blue:wlan5g"; + gpios = <&gpio 23 GPIO_ACTIVE_LOW>; + linux,default-trigger = "phy0tpt"; + }; + + lan { + label = "ecb1750:blue:lan"; + gpios = <&gpio 12 GPIO_ACTIVE_LOW>; + }; + }; + + keys { + compatible = "gpio-keys"; + + reset { + label = "reset"; + linux,code = ; + gpios = <&gpio 17 GPIO_ACTIVE_LOW>; + }; + }; +}; + +&pcie0 { + status = "okay"; +}; + +&uart { + status = "okay"; +}; + +&spi { + status = "okay"; + num-cs = <1>; + + flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <25000000>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + uboot: partition@0 { + label = "u-boot"; + reg = <0x000000 0x040000>; + read-only; + }; + + partition@40000 { + label = "u-boot-env"; + reg = <0x040000 0x010000>; + }; + + partition@50000 { + label = "firmware"; + reg = <0x050000 0xf50000>; + }; + + partition@fa0000 { + label = "userconfig"; + reg = <0xfa0000 0x050000>; + }; + + art: partition@ff0000 { + label = "art"; + reg = <0xff0000 0x010000>; + read-only; + }; + + }; + }; +}; + +&wmac { + status = "okay"; + + qca,no-eeprom; +}; + +&mdio0 { + status = "okay"; + + phy5: ethernet-phy@5 { + reg = <5>; + at803x-disable-smarteee; + }; +}; + +ð0 { + status = "okay"; + + pll-data = <0x9a000000 0x80000101 0x80001313>; + + phy-handle = <&phy5>; + phy-mode = "rgmii"; + + gmac-config { + device = <&gmac>; + rgmii-gmac0 = <1>; + rxd-delay = <3>; + rxdv-delay = <3>; + }; +}; -- cgit v1.2.3