ath79: add support for COMFAST CF-E560AC
This commit adds support for the COMFAST CF-E560AC, an ap143 based
in-wall access point.
Specifications:
- SoC: Qualcomm Atheros QCA9531
- RAM: 128 MB DDR2 (Winbond W971GG6SB-25)
- Storage: 16 MB NOR (Winbond 25Q128JVSO)
- WAN: 1x 10/100 PoE ethernet (48v)
- LAN: 4x 10/100 ethernet
- WLAN1: QCA9531 - 802.11b/g/n - 2x SKY85303-21 FEM
- WLAN2: QCA9886 - 802.11ac/n/a - 2x SKY85735-11 FEM
- USB: one external USB2.0 port
- UART: 3.3v, 2.54mm headers already populated on board
- LED: 7x external
- Button: 1x external
- Boot: U-Boot 1.1.4 (pepe2k/u-boot_mod)
MAC addressing:
- stock
LAN *:40 (label)
WAN *:41
5G *:42
2.4G *:4a
- flash (art partition)
0x0 *:40 (label)
0x6 *:42
0x1002 *:41
0x5006 *:43
This device contains valid MAC addresses in art 0x0, 0x6, 0x1002 and
0x5006, however the vendor firmware only reads from art:0x0 for the LAN
interface and then increments in 02_network. They also jump 8 addresses
for the second wifi interface (2.4 GHz). This behavior has been duplicated
in the DTS and ath10k hotplug to align addresses with the vendor firmware
v2.6.0.
Recovery instructions:
This device contains built-in u-boot tftp recovery.
1. Configure PC with static IP 192.168.1.10/24 and tftp server.
2. Place desired image at /firmware_auto.bin at tftp root.
3. Connect device to PC, and power on.
4. Device will fetch flash from tftp, flash and reboot into new image.
Signed-off-by: August Huber <auh@google.com>
[move jtag_disable_pins, remove unnecessary statuses in DTS, remove
duplicate entry in 11-ath10k-caldata, remove hub_port0 label in DTS]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-01-26 16:55:11 +00:00
|
|
|
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
2020-09-25 19:52:57 +00:00
|
|
|
|
|
|
|
#include "qca953x.dtsi"
|
ath79: add support for COMFAST CF-E560AC
This commit adds support for the COMFAST CF-E560AC, an ap143 based
in-wall access point.
Specifications:
- SoC: Qualcomm Atheros QCA9531
- RAM: 128 MB DDR2 (Winbond W971GG6SB-25)
- Storage: 16 MB NOR (Winbond 25Q128JVSO)
- WAN: 1x 10/100 PoE ethernet (48v)
- LAN: 4x 10/100 ethernet
- WLAN1: QCA9531 - 802.11b/g/n - 2x SKY85303-21 FEM
- WLAN2: QCA9886 - 802.11ac/n/a - 2x SKY85735-11 FEM
- USB: one external USB2.0 port
- UART: 3.3v, 2.54mm headers already populated on board
- LED: 7x external
- Button: 1x external
- Boot: U-Boot 1.1.4 (pepe2k/u-boot_mod)
MAC addressing:
- stock
LAN *:40 (label)
WAN *:41
5G *:42
2.4G *:4a
- flash (art partition)
0x0 *:40 (label)
0x6 *:42
0x1002 *:41
0x5006 *:43
This device contains valid MAC addresses in art 0x0, 0x6, 0x1002 and
0x5006, however the vendor firmware only reads from art:0x0 for the LAN
interface and then increments in 02_network. They also jump 8 addresses
for the second wifi interface (2.4 GHz). This behavior has been duplicated
in the DTS and ath10k hotplug to align addresses with the vendor firmware
v2.6.0.
Recovery instructions:
This device contains built-in u-boot tftp recovery.
1. Configure PC with static IP 192.168.1.10/24 and tftp server.
2. Place desired image at /firmware_auto.bin at tftp root.
3. Connect device to PC, and power on.
4. Device will fetch flash from tftp, flash and reboot into new image.
Signed-off-by: August Huber <auh@google.com>
[move jtag_disable_pins, remove unnecessary statuses in DTS, remove
duplicate entry in 11-ath10k-caldata, remove hub_port0 label in DTS]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-01-26 16:55:11 +00:00
|
|
|
|
|
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
|
|
#include <dt-bindings/input/input.h>
|
|
|
|
|
|
|
|
/ {
|
|
|
|
compatible = "comfast,cf-e560ac", "qca,qca9531";
|
|
|
|
model = "COMFAST CF-E560AC";
|
|
|
|
|
|
|
|
aliases {
|
|
|
|
serial0 = &uart;
|
|
|
|
label-mac-device = ð1;
|
|
|
|
led-boot = &led_system;
|
|
|
|
led-failsafe = &led_system;
|
|
|
|
led-upgrade = &led_system;
|
|
|
|
};
|
|
|
|
|
|
|
|
keys {
|
|
|
|
compatible = "gpio-keys";
|
|
|
|
|
|
|
|
reset {
|
|
|
|
label = "reset";
|
|
|
|
linux,code = <KEY_RESTART>;
|
|
|
|
gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
|
|
|
|
debounce-interval = <60>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
leds {
|
|
|
|
compatible = "gpio-leds";
|
|
|
|
|
|
|
|
pinctrl-names = "default";
|
|
|
|
pinctrl-0 = <&jtag_disable_pins>;
|
|
|
|
|
|
|
|
lan1 {
|
|
|
|
label = "cf-e560ac:blue:lan1";
|
|
|
|
gpios = <&gpio 16 GPIO_ACTIVE_LOW>;
|
|
|
|
};
|
|
|
|
|
|
|
|
lan2 {
|
|
|
|
label = "cf-e560ac:blue:lan2";
|
|
|
|
gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
|
|
|
|
};
|
|
|
|
|
|
|
|
lan3 {
|
|
|
|
label = "cf-e560ac:blue:lan3";
|
|
|
|
gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
|
|
|
|
};
|
|
|
|
|
|
|
|
lan4 {
|
|
|
|
label = "cf-e560ac:blue:lan4";
|
|
|
|
gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
|
|
|
|
};
|
|
|
|
|
|
|
|
led_system: system {
|
|
|
|
label = "cf-e560ac:blue:system";
|
|
|
|
gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
|
|
|
|
};
|
|
|
|
|
|
|
|
wan {
|
|
|
|
label = "cf-e560ac:blue:wan";
|
|
|
|
gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
|
|
|
|
};
|
|
|
|
|
|
|
|
wlan {
|
|
|
|
label = "cf-e560ac:blue:wlan";
|
|
|
|
gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
|
|
|
|
linux,default-trigger = "phy0tpt";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
watchdog {
|
|
|
|
compatible = "linux,wdt-gpio";
|
|
|
|
gpios = <&gpio 13 GPIO_ACTIVE_LOW>;
|
|
|
|
hw_algo = "toggle";
|
|
|
|
hw_margin_ms = <1200>;
|
|
|
|
always-running;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
&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 = "u-boot";
|
|
|
|
reg = <0x000000 0x010000>;
|
|
|
|
read-only;
|
|
|
|
};
|
|
|
|
|
|
|
|
art: partition@10000 {
|
|
|
|
label = "art";
|
|
|
|
reg = <0x010000 0x010000>;
|
|
|
|
read-only;
|
|
|
|
};
|
|
|
|
|
|
|
|
partition@20000 {
|
|
|
|
compatible = "denx,uimage";
|
|
|
|
label = "firmware";
|
|
|
|
reg = <0x020000 0xfc0000>;
|
|
|
|
};
|
|
|
|
|
|
|
|
partition@fe0000 {
|
|
|
|
label = "configs";
|
|
|
|
reg = <0xfe0000 0x010000>;
|
|
|
|
read-only;
|
|
|
|
};
|
|
|
|
|
|
|
|
partition@ff0000 {
|
|
|
|
label = "nvram";
|
|
|
|
reg = <0xff0000 0x010000>;
|
|
|
|
read-only;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
&pcie0 {
|
|
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
|
|
|
|
&uart {
|
|
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
|
|
|
|
&usb_phy {
|
|
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
|
|
|
|
&usb0 {
|
|
|
|
#address-cells = <1>;
|
|
|
|
#size-cells = <0>;
|
|
|
|
status = "okay";
|
|
|
|
|
|
|
|
port@1 {
|
|
|
|
reg = <1>;
|
|
|
|
#trigger-source-cells = <0>;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
ð0 {
|
|
|
|
status = "okay";
|
|
|
|
|
|
|
|
phy-handle = <&swphy4>;
|
|
|
|
|
|
|
|
mtd-mac-address = <&art 0x0>;
|
|
|
|
mtd-mac-address-increment = <1>;
|
|
|
|
};
|
|
|
|
|
|
|
|
ð1 {
|
|
|
|
mtd-mac-address = <&art 0x0>;
|
|
|
|
};
|
|
|
|
|
|
|
|
&wmac {
|
|
|
|
status = "okay";
|
|
|
|
|
|
|
|
mtd-cal-data = <&art 0x1000>;
|
|
|
|
mtd-mac-address = <&art 0x0>;
|
|
|
|
mtd-mac-address-increment = <10>;
|
|
|
|
};
|