From 1e1695f959e678868bb7911d059b847f38fc9cf4 Mon Sep 17 00:00:00 2001 From: David Bauer Date: Mon, 5 Sep 2022 19:23:16 +0200 Subject: ath79: add support for ZTE MF281 Add support for the ZTE MF281 battery-powered WiFi router. Hardware -------- SoC: Qualcomm Atheros QCA9563 RAM: 128M DDR2 FLASH: 2M SPI-NOR (GigaDevice GD25Q16) 128M SPI-NAND (GigaDevice) WLAN: QCA9563 2T2R 802.11 abgn QCA9886 2T2R 802.11 nac WWAN: ASRMicro ASR1826 ETH: Qualcomm Atheros QCA8337 UART: 115200 8n1 Unpopulated connector next to SIM slot (SIM) GND - RX - TX - 3V3 Don't connect 3V3 BUTTON: Reset - WPS LED: 1x debug-LED (internal) LEDs on front of the device are controlled using the modem CPU and can not be controlled by OpenWrt Installation ------------ 1. Connect to the serial console. Power up the device and interrupt autoboot when prompted 2. Connect a TFTP server reachable at 192.168.1.66 to the ethernet port. Serve the OpenWrt initramfs image as "speedbox-2.bin" 3. Boot the initramfs image using U-Boot $ setenv serverip 192.168.1.66 $ setenv ipaddr 192.168.1.154 $ tftpboot 0x84000000 speedbox-2.bin $ bootm 4. Copy the OpenWrt factory image to the device using scp and write to the NAND flash $ mtd write /path/to/openwrt/factory.bin firmware WWAN ---- The WWAN card can be used with OpenWrt. Example configuration for connection with a unauthenticated dual-stack APN: network.lte=interface network.lte.proto='ncm' network.lte.device='/dev/ttyACM0' network.lte.pdptype='IPV4V6' network.lte.apn='internet.telekom' network.lte.ipv6='auto' network.lte.delay='10' The WWAN card is running a modified version of OpenWrt and handles power-management as well as the LED controller (AW9523). A root shell can be acquired by installing adb using opkg and executing "adb shell". Signed-off-by: David Bauer --- target/linux/ath79/image/nand.mk | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) (limited to 'target/linux/ath79/image/nand.mk') diff --git a/target/linux/ath79/image/nand.mk b/target/linux/ath79/image/nand.mk index 4e1ac216a5..117f6e99cd 100644 --- a/target/linux/ath79/image/nand.mk +++ b/target/linux/ath79/image/nand.mk @@ -322,7 +322,7 @@ define Device/netgear_wndr4500-v3 endef TARGET_DEVICES += netgear_wndr4500-v3 -define Device/zte_mf286_common +define Device/zte_mf28x_common SOC := qca9563 DEVICE_VENDOR := ZTE DEVICE_PACKAGES := kmod-usb2 kmod-ath10k-ct @@ -332,8 +332,21 @@ define Device/zte_mf286_common IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata endef +define Device/zte_mf281 + $(Device/zte_mf28x_common) + DEVICE_MODEL := MF281 + KERNEL_SIZE := 6144k + IMAGE_SIZE := 29696k + IMAGES += factory.bin + IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | \ + check-size + DEVICE_PACKAGES += ath10k-firmware-qca9888-ct kmod-usb-net-rndis \ + kmod-usb-acm comgt-ncm +endef +TARGET_DEVICES += zte_mf281 + define Device/zte_mf286 - $(Device/zte_mf286_common) + $(Device/zte_mf28x_common) DEVICE_MODEL := MF286 DEVICE_PACKAGES += ath10k-firmware-qca988x-ct kmod-usb-net-qmi-wwan \ kmod-usb-serial-option uqmi @@ -341,7 +354,7 @@ endef TARGET_DEVICES += zte_mf286 define Device/zte_mf286a - $(Device/zte_mf286_common) + $(Device/zte_mf28x_common) DEVICE_MODEL := MF286A DEVICE_PACKAGES += ath10k-firmware-qca9888-ct kmod-usb-net-qmi-wwan \ kmod-usb-serial-option uqmi @@ -349,7 +362,7 @@ endef TARGET_DEVICES += zte_mf286a define Device/zte_mf286r - $(Device/zte_mf286_common) + $(Device/zte_mf28x_common) DEVICE_MODEL := MF286R DEVICE_PACKAGES += ath10k-firmware-qca9888-ct kmod-usb-net-rndis kmod-usb-acm \ comgt-ncm -- cgit v1.2.3