aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ath79/dts
diff options
context:
space:
mode:
authorDavid Bauer <mail@david-bauer.net>2020-04-14 03:58:37 +0200
committerDavid Bauer <mail@david-bauer.net>2020-04-19 16:45:40 +0200
commit8d9c1087e4d07d625a9fef61d5dce71d850732ae (patch)
tree78f125291c0085a570dd288decce08bd2927a7f7 /target/linux/ath79/dts
parent45e2b7763f2a846bf1a40f5fa79b4cfe4678557a (diff)
downloadupstream-8d9c1087e4d07d625a9fef61d5dce71d850732ae.tar.gz
upstream-8d9c1087e4d07d625a9fef61d5dce71d850732ae.tar.bz2
upstream-8d9c1087e4d07d625a9fef61d5dce71d850732ae.zip
ath79: add support for AVM FRITZ!WLAN Repeater 450E
SOC: Qualcomm QCA9556 (Scorpion) 560MHz MIPS74Kc RAM: 64MB Zentel A3R12E40CBF DDR2 FLASH: 16MiB Winbond W25Q128 SPI NOR WLAN1: QCA9556 2.4 GHz 802.11b/g/n 3x3 INPUT: WPS button LED: Power, WiFi, LAN, RSSI indicator Serial: Header Next to Black metal shield Pinout is 3.3V - RX - TX - GND (Square Pad is 3.3V) The Serial setting is 115200-8-N-1. Installation via EVA: In the first seconds after Power is connected, the bootloader will listen for FTP connections on 192.168.178.1. Firmware can be uploaded like following: ftp> quote USER adam2 ftp> quote PASS adam2 ftp> binary ftp> debug ftp> passive ftp> quote MEDIA FLSH ftp> put openwrt-sysupgrade.bin mtd1 Note that this procedure might take up to two minutes. You need to powercycle the device afterwards to boot OpenWRT. Tested-by: Andreas Ziegler <dev@andreas-ziegler.de> Signed-off-by: David Bauer <mail@david-bauer.net>
Diffstat (limited to 'target/linux/ath79/dts')
-rw-r--r--target/linux/ath79/dts/qca9556_avm_fritz-repeater.dtsi93
-rw-r--r--target/linux/ath79/dts/qca9556_avm_fritz1750e.dts89
-rw-r--r--target/linux/ath79/dts/qca9556_avm_fritz450e.dts76
3 files changed, 172 insertions, 86 deletions
diff --git a/target/linux/ath79/dts/qca9556_avm_fritz-repeater.dtsi b/target/linux/ath79/dts/qca9556_avm_fritz-repeater.dtsi
new file mode 100644
index 0000000000..b1f5f1bdb3
--- /dev/null
+++ b/target/linux/ath79/dts/qca9556_avm_fritz-repeater.dtsi
@@ -0,0 +1,93 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/dts-v1/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+
+#include "qca9557.dtsi"
+
+/ {
+ chosen {
+ bootargs = "console=ttyS0,115200n8";
+ };
+
+ keys {
+ compatible = "gpio-keys";
+
+ wps {
+ label = "wps";
+ linux,code = <KEY_WPS_BUTTON>;
+ gpios = <&gpio 4 GPIO_ACTIVE_HIGH>;
+ };
+ };
+};
+
+&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>;
+
+ partition@0 {
+ label = "urlader";
+ reg = <0x0 0x20000>;
+ read-only;
+ };
+
+ partition@20000 {
+ compatible = "avm,eva-firmware";
+ label = "firmware";
+ reg = <0x20000 0xee0000>;
+ };
+
+ partition@f00000 {
+ label = "tffs (1)";
+ reg = <0xf00000 0x80000>;
+ read-only;
+ };
+
+ partition@f80000 {
+ label = "tffs (2)";
+ reg = <0xf80000 0x80000>;
+ read-only;
+ };
+ };
+ };
+};
+
+&wmac {
+ status = "okay";
+ qca,no-eeprom;
+};
+
+&eth1 {
+ status = "okay";
+
+ phy-handle = <&phy0>;
+ pll-data = <0x3000000 0x101 0x1313>;
+
+ gmac-config {
+ device = <&gmac>;
+ ge0-sgmii = <0>;
+ };
+};
+
+&mdio1 {
+ status = "okay";
+
+ phy0: ethernet-phy@0 {
+ reg = <0>;
+ };
+};
diff --git a/target/linux/ath79/dts/qca9556_avm_fritz1750e.dts b/target/linux/ath79/dts/qca9556_avm_fritz1750e.dts
index f50af5b228..25d3ae8da4 100644
--- a/target/linux/ath79/dts/qca9556_avm_fritz1750e.dts
+++ b/target/linux/ath79/dts/qca9556_avm_fritz1750e.dts
@@ -1,19 +1,13 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
-/dts-v1/;
#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-#include "qca9557.dtsi"
+#include "qca9556_avm_fritz-repeater.dtsi"
/ {
compatible = "avm,fritz1750e", "qca,qca9557";
model = "AVM FRITZ!WLAN Repeater 1750E";
- chosen {
- bootargs = "console=ttyS0,115200n8";
- };
-
aliases {
led-boot = &led_power;
led-failsafe = &led_power;
@@ -91,65 +85,14 @@
gpios = <&spi_gpio 4 GPIO_ACTIVE_HIGH>;
};
};
-
- keys {
- compatible = "gpio-keys";
-
- wps {
- label = "wps";
- linux,code = <KEY_WPS_BUTTON>;
- gpios = <&gpio 4 GPIO_ACTIVE_HIGH>;
- };
- };
};
&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>;
-
- partition@0 {
- label = "urlader";
- reg = <0x0 0x20000>;
- read-only;
- };
-
- partition@20000 {
- compatible = "avm,eva-firmware";
- label = "firmware";
- reg = <0x20000 0xee0000>;
- };
-
- partition@f00000 {
- label = "tffs (1)";
- reg = <0xf00000 0x80000>;
- read-only;
- };
-
- partition@f80000 {
- label = "tffs (2)";
- reg = <0xf80000 0x80000>;
- read-only;
- };
- };
- };
+&phy0 {
+ reset-gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
};
&gpio {
@@ -167,29 +110,3 @@
line-name = "PCIE Bus reset";
};
};
-
-&wmac {
- status = "okay";
- qca,no-eeprom;
-};
-
-&eth1 {
- status = "okay";
-
- phy-handle = <&phy0>;
- pll-data = <0x3000000 0x101 0x1313>;
-
- gmac-config {
- device = <&gmac>;
- ge0-sgmii = <0>;
- };
-};
-
-&mdio1 {
- status = "okay";
-
- phy0: ethernet-phy@0 {
- reg = <0>;
- reset-gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
- };
-};
diff --git a/target/linux/ath79/dts/qca9556_avm_fritz450e.dts b/target/linux/ath79/dts/qca9556_avm_fritz450e.dts
new file mode 100644
index 0000000000..60685bd3f1
--- /dev/null
+++ b/target/linux/ath79/dts/qca9556_avm_fritz450e.dts
@@ -0,0 +1,76 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include <dt-bindings/gpio/gpio.h>
+
+#include "qca9556_avm_fritz-repeater.dtsi"
+
+/ {
+ compatible = "avm,fritz450e", "qca,qca9557";
+ model = "AVM FRITZ!WLAN Repeater 450E";
+
+ aliases {
+ led-boot = &led_power;
+ led-failsafe = &led_power;
+ led-running = &led_power;
+ led-upgrade = &led_power;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led_power: power {
+ label = "fritz450e:green:power";
+ gpios = <&gpio 14 GPIO_ACTIVE_HIGH>;
+ };
+
+ wlan {
+ label = "fritz450e:green:wlan";
+ gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
+ linux,default-trigger = "phy0tpt";
+ };
+
+ lan {
+ label = "fritz450e:green:lan";
+ gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
+ };
+
+ rssi2 {
+ label = "fritz450e:green:rssi2";
+ gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
+ };
+
+ rssi3 {
+ label = "fritz450e:green:rssi3";
+ gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
+ };
+
+ rssi4 {
+ label = "fritz450e:green:rssi4";
+ gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
+ };
+ };
+};
+
+&gpio {
+ /*
+ * Wondered why rssi0 and rssi1 are missing?
+ *
+ * AVM seems to have run low on usable GPIO pins, so
+ * instead of adding a shift register like they did for
+ * the 1750E they figured out "Why not use the LEDs on
+ * the AR8033?".
+ *
+ * EVA configures the PHY in a way it does not display
+ * the link-state using it's LEDs. When we reset the PHY
+ * using the reset-mechanism of the PHY subsystem, this
+ * setting is cleared.
+ *
+ * We avoid this by keeping the reset line high.
+ */
+ phy-reset {
+ gpio-hog;
+ gpios = <11 GPIO_ACTIVE_HIGH>;
+ output-high;
+ line-name = "phy-reset";
+ };
+};