diff options
| author | Piotr Dymacz | 2024-04-22 09:01:52 +0000 |
|---|---|---|
| committer | Piotr Dymacz | 2024-10-22 10:25:58 +0000 |
| commit | 861a9dac68b9427758ed1771dfb533db2a5bb88e (patch) | |
| tree | 365a9e08385464bd078a3768e8c249f1cc1a2424 | |
| parent | 3098b4bf0725509aee13fe1560ce5a9188ea2fc7 (diff) | |
| download | openwrt-861a9dac68b9427758ed1771dfb533db2a5bb88e.tar.gz | |
ath79: add support for ALFA Network WiFi CampPro Nano Duo
ALFA Network WiFi CampPro Nano Duo is a dual-radio Wi-Fi signal extender
(router) in USB dongle form-factor (Type-A plug is used only for power),
based on combination of two radio chipsets: Qualcomm QCA9531 (main SOC)
and MediaTek MT7610U (connected over USB 2.0 interface).
Specifications:
- SOC: QCA9531 v2 (650 MHz)
- DRAM: DDR2 128 MiB (Nanya NT5TU64M16HG-AC)
- Flash: 16 MiB SPI NOR (Macronix MX25L12835F)
- Ethernet: 1x 10/100 Mbps Ethernet (QCA9531)
- Wi-Fi: 2x2:2 2.4 GHz Wi-Fi 4 (QCA9531)
1x1:1 2.4/5 GHz Wi-Fi 5 (MT7610U)
- Antenna: 3x RP-SMA (female) antenna connectors
- LED: 1x orange (RJ45, power indicator)
2x green (status + RJ45 activity/link)
1x blue (Wi-Fi 2.4 GHz status)
- Button: 1x button (reset)
- UART: 1x 4-pin, 2.00 mm pitch header on PCB
- Other: external h/w watchdog (EM6324QYSP5B, enabled by default)
GPIO-controlled USB power for MT7610U
MAC addresses:
- LAN: 00:c0:ca:xx:xx:6d (art 0x2, -1)
- 2.4 GHz (QCA9531): 00:c0:ca:xx:xx:6e (art 0x2, device's label)
- 2.4/5 GHz (MT7610U): 00:c0:ca:xx:xx:6f (from eeprom)
Flash instructions:
You can use sysupgrade image directly in vendor firmware which is based
on LEDE/OpenWrt. Alternatively, you can use web recovery mode in U-Boot:
1. Configure PC with static IP 192.168.1.2/24.
2. Connect PC with RJ45 port, press the reset button, power up device,
wait for first blink of status LED (indicates network setup), then
keep button for 3 following blinks and release it.
3. Open 192.168.1.1 address in your browser and upload sysupgrade image.
Signed-off-by: Piotr Dymacz <pepe2k@gmail.com>
4 files changed, 73 insertions, 0 deletions
diff --git a/target/linux/ath79/dts/qca9531_alfa-network_wifi-camppro-nano-duo.dts b/target/linux/ath79/dts/qca9531_alfa-network_wifi-camppro-nano-duo.dts new file mode 100644 index 0000000000..e505081f98 --- /dev/null +++ b/target/linux/ath79/dts/qca9531_alfa-network_wifi-camppro-nano-duo.dts @@ -0,0 +1,60 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +#include <dt-bindings/leds/common.h> + +#include "qca9531_alfa-network_r36a.dtsi" + +/ { + model = "ALFA Network WiFi CampPro Nano Duo"; + compatible = "alfa-network,wifi-camppro-nano-duo", "qca,qca9531"; + + aliases { + led-boot = &led_status; + led-failsafe = &led_status; + led-running = &led_status; + led-upgrade = &led_status; + }; + + leds { + compatible = "gpio-leds"; + + pinctrl-names = "default"; + pinctrl-0 = <&enable_gpio4>; + + lan { + function = LED_FUNCTION_LAN; + color = <LED_COLOR_ID_GREEN>; + gpios = <&gpio 4 GPIO_ACTIVE_LOW>; + }; + + led_status: status { + function = LED_FUNCTION_STATUS; + color = <LED_COLOR_ID_GREEN>; + gpios = <&gpio 12 GPIO_ACTIVE_LOW>; + }; + + wlan2g { + function = LED_FUNCTION_WLAN_2GHZ; + color = <LED_COLOR_ID_BLUE>; + gpios = <&gpio 11 GPIO_ACTIVE_LOW>; + linux,default-trigger = "phy1tpt"; + }; + }; +}; + +ð0 { + nvmem-cells = <&macaddr_art_1002 (-1)>; + nvmem-cell-names = "mac-address"; +}; + +ð1 { + compatible = "syscon", "simple-mfd"; +}; + +&gpio_export { + usb-power { + gpio-export,name = "usb-power"; + gpio-export,output = <0>; + gpios = <&gpio 3 GPIO_ACTIVE_LOW>; + }; +}; diff --git a/target/linux/ath79/generic/base-files/etc/board.d/01_leds b/target/linux/ath79/generic/base-files/etc/board.d/01_leds index 143309a8b2..0e5731dd74 100644 --- a/target/linux/ath79/generic/base-files/etc/board.d/01_leds +++ b/target/linux/ath79/generic/base-files/etc/board.d/01_leds @@ -22,6 +22,7 @@ alcatel,hh40v) ;; alfa-network,ap121f|\ alfa-network,ap121fe|\ +alfa-network,wifi-camppro-nano-duo|\ avm,fritz450e|\ glinet,6408|\ glinet,6416|\ diff --git a/target/linux/ath79/generic/base-files/etc/board.d/02_network b/target/linux/ath79/generic/base-files/etc/board.d/02_network index 2ad4c899e0..8474c1c4c2 100644 --- a/target/linux/ath79/generic/base-files/etc/board.d/02_network +++ b/target/linux/ath79/generic/base-files/etc/board.d/02_network @@ -14,6 +14,7 @@ ath79_setup_interfaces() alfa-network,ap121f|\ alfa-network,pi-wifi4|\ alfa-network,tube-2hq|\ + alfa-network,wifi-camppro-nano-duo|\ araknis,an-300-ap-i-n|\ araknis,an-500-ap-i-ac|\ araknis,an-700-ap-i-ac|\ @@ -622,6 +623,7 @@ ath79_setup_macs() alfa-network,pi-wifi4|\ alfa-network,r36a|\ alfa-network,tube-2hq|\ + alfa-network,wifi-camppro-nano-duo|\ engenius,eap300-v2|\ engenius,ens202ext-v1) label_mac=$(mtd_get_mac_binary art 0x1002) diff --git a/target/linux/ath79/image/generic.mk b/target/linux/ath79/image/generic.mk index 06448f2172..c075f050db 100644 --- a/target/linux/ath79/image/generic.mk +++ b/target/linux/ath79/image/generic.mk @@ -346,6 +346,16 @@ define Device/alfa-network_tube-2hq endef TARGET_DEVICES += alfa-network_tube-2hq +define Device/alfa-network_wifi-camppro-nano-duo + SOC := qca9531 + DEVICE_VENDOR := ALFA Network + DEVICE_MODEL := WiFi CampPro Nano Duo + DEVICE_PACKAGES := kmod-usb2 kmod-mt76x0u -swconfig + IMAGE_SIZE := 15872k + SUPPORTED_DEVICES += campnano-duo +endef +TARGET_DEVICES += alfa-network_wifi-camppro-nano-duo + define Device/allnet_all-wap02860ac $(Device/senao_loader_okli) SOC := qca9558 |