mirror of
https://github.com/LiBwrt-op/openwrt-6.x.git
synced 2026-01-08 12:14:47 +00:00
SPECIFICATION:
- Chipset: IPQ8072A +QCN5054+QCN5024+QCA8081*2
- Flash NOR-8MB AND NAND-128MB
- RAM 1Gb DDR
- IEEE 802.11: 802.11ax/ac/b/g/n
- 4*4 2.4G Wi-Fi standard 802.11b/g/n/ax
- 4*4 5.8G Wi-Fi Standard 802.11 a/n/ac/ax
- 2x 1 Gbps Ethernet (QCA8081) with 802.3at PoE input support
- 1x Reset
- 1x Bluetooth(optional)
- 1x DC Port 12V 3A
- 4x Antenna IPEX Connector, 3dBi omni antennas
- Data Rate: 3657Mbps ( 2.4G: 1182Mbps (11ax 4x4); 5.8G: 2475Mbps (11ax 4x4))
- RF Power: 2.4g ≤ 20dBm; 5.8g ≤ 19dBm
- LED light: Sys; 5.8G wifi; 2.4G wifi; WAN; LAN
- Max Power Consumption: ≤ 22W
- Size: 198mm * 198mm * 41.02mm
BACKUP YOUR STOCK FIRMWARE:
```
export device=ax880
mkdir -p /tmp/fw_dump_$device
cd /tmp/fw_dump_$device
dmesg > dmesg_$device.log
dtc -I fs /sys/firmware/devicetree/base > $device.dts
cat /proc/device-tree/model > model
cat /proc/mtd > proc_mtd
while read p; do
mtd_dev=$(echo $p | cut -d: -f1)
echo $mtd_dev
dd if=/dev/$mtd_dev of=$mtd_dev
done < proc_mtd
md5sum * > md5sum.log
tar -cvzf ../$device.tar.gz .
export sum=$(md5sum /tmp/$device.tar.gz | cut -d' ' -f1)
mv ../$device.tar.gz /tmp/${device}_${sum}.tar.gz
echo fw backup saved to: /tmp/${device}_${sum}.tar.gz
```
Upload your backup via tftp to the safe place.
INSTALLATION:
1. stock firmware web ui
Rename factory.bin fw image file to factory.ubin. Flash this image
like ordinary stock fw upgrade.
2. stock firmware telnet method
Enter telnet cli (login: root, password: 476t*_f0%g09y) and upload
factory.bin fw image and rename it to factory.ubin
`cd /tmp && wget <your_web_server_ip>/factory.ubin`
`sysupgrade factory.ubin
3. initramfs method
Put openwrt-ipq807x-generic-yuncore_ax880-initramfs-uImage.itb to your
TFTP server and rename it to ax880.initram
Enable serial console and enter to the u-boot cli.
Exec these commands:
`tftpboot <your_tftp_server_ip>:ax880.initram`
`dhcp`
When downloading is finished:
`bootm`
After booting the device, you need to upload to the device factory.ubi fw image.
```
cd /tmp && wget <your_web_server_ip>/factory.ubi`
export rootfs=$(cat /proc/mtd | grep rootfs | cut -d: -f1)
export rootfs_1=$(cat /proc/mtd | grep rootfs_1 | cut -d: -f1)
ubiformat /dev/${rootfs} -y -f factory.ubi
ubiformat /dev/${rootfs_1} -y -f factory.ubi
reboot
```
4. u-boot factory.ubi image method
Put openwrt-ipq807x-generic-yuncore_ax880-squashfs-factory.ubi to your
TFTP server and rename it to ax880.ubi
Enter u-boot cli and exec these commands:
`tftpboot <your_tftp_server_ip>:ax880.ubi`
`dhcp`
After downloading is finished:
`flash rootfs`
`flash rootfs_1`
`reset`
5. u-boot factory.bin method
Put openwrt-ipq807x-generic-yuncore_ax880-squashfs-factory.bin to your
TFTP server and rename it to ax880.bin
Enter u-boot cli and exec these commands:
`tftpboot <your_tftp_server_ip>:ax880.bin`
`dhcp`
After downloading is finished:
`imgaddr=$fileaddr && nand device 0`
Erase rootfs memory:
`nand erase 0x00000000 0x03400000`
Write rootfs:
`nand write $fileaddr 0x00000000 $filesize`
Erase rootfs_1 memory:
`nand erase 0x3c00000 0x3400000`
Write rootfs_1
`nand write $fileaddr 0x3c00000 $filesize`
`reset`
STOCK FIRMWARE RECOVERY:
Boot initramfs image.
Upload your rootfs mtd partition to the device using scp or download
it from the device using wget.
Enter device ssh cli and exec:
```
cd /tmp && wget <your_web_server_ip>/mtd21`
export rootfs=$(cat /proc/mtd | grep rootfs | cut -d: -f1)
export rootfs_1=$(cat /proc/mtd | grep rootfs_1 | cut -d: -f1)
ubiformat /dev/${rootfs} -y -f /tmp/mtd21
ubiformat /dev/${rootfs_1} -y -f /tmp/mtd21
reboot
```
Signed-off-by: Isaev Ruslan <legale.legale@gmail.com>
Reviewed-by: Robert Marko <robimarko@gmail.com>
272 lines
7.4 KiB
Makefile
272 lines
7.4 KiB
Makefile
define Device/FitImage
|
|
KERNEL_SUFFIX := -uImage.itb
|
|
KERNEL = kernel-bin | libdeflate-gzip | fit gzip $$(KDIR)/image-$$(DEVICE_DTS).dtb
|
|
KERNEL_NAME := Image
|
|
endef
|
|
|
|
define Device/FitImageLzma
|
|
KERNEL_SUFFIX := -uImage.itb
|
|
KERNEL = kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(DEVICE_DTS).dtb
|
|
KERNEL_NAME := Image
|
|
endef
|
|
|
|
define Device/EmmcImage
|
|
IMAGES += factory.bin sysupgrade.bin
|
|
IMAGE/factory.bin := append-rootfs | pad-rootfs | pad-to 64k
|
|
IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-to 64k | sysupgrade-tar rootfs=$$$$@ | append-metadata
|
|
endef
|
|
|
|
define Device/UbiFit
|
|
KERNEL_IN_UBI := 1
|
|
IMAGES := factory.ubi sysupgrade.bin
|
|
IMAGE/factory.ubi := append-ubi
|
|
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
|
|
endef
|
|
|
|
define Build/wax6xx-netgear-tar
|
|
mkdir $@.tmp
|
|
mv $@ $@.tmp/nand-ipq807x-apps.img
|
|
md5sum $@.tmp/nand-ipq807x-apps.img | cut -c 1-32 > $@.tmp/nand-ipq807x-apps.md5sum
|
|
echo $(DEVICE_MODEL) > $@.tmp/metadata.txt
|
|
echo $(DEVICE_MODEL)"_V9.9.9.9" > $@.tmp/version
|
|
tar -C $@.tmp/ -cf $@ .
|
|
rm -rf $@.tmp
|
|
endef
|
|
|
|
define Device/buffalo_wxr-5950ax12
|
|
$(call Device/FitImage)
|
|
DEVICE_VENDOR := Buffalo
|
|
DEVICE_MODEL := WXR-5950AX12
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
DEVICE_DTS_CONFIG := config@hk01
|
|
SOC := ipq8074
|
|
IMAGES := sysupgrade.bin
|
|
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
|
|
DEVICE_PACKAGES := ipq-wifi-buffalo_wxr-5950ax12
|
|
endef
|
|
TARGET_DEVICES += buffalo_wxr-5950ax12
|
|
|
|
define Device/compex_wpq873
|
|
$(call Device/FitImage)
|
|
$(call Device/UbiFit)
|
|
DEVICE_VENDOR := Compex
|
|
DEVICE_MODEL := WPQ873
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
DEVICE_DTS_CONFIG := config@hk09.wpq873
|
|
SOC := ipq8072
|
|
DEVICE_PACKAGES := ipq-wifi-compex_wpq873
|
|
IMAGE/factory.ubi := append-ubi | qsdk-ipq-factory-nand
|
|
endef
|
|
TARGET_DEVICES += compex_wpq873
|
|
|
|
define Device/dynalink_dl-wrx36
|
|
$(call Device/FitImage)
|
|
$(call Device/UbiFit)
|
|
DEVICE_VENDOR := Dynalink
|
|
DEVICE_MODEL := DL-WRX36
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
DEVICE_DTS_CONFIG := config@rt5010w-d350-rev0
|
|
SOC := ipq8072
|
|
DEVICE_PACKAGES := ipq-wifi-dynalink_dl-wrx36
|
|
endef
|
|
TARGET_DEVICES += dynalink_dl-wrx36
|
|
|
|
define Device/edgecore_eap102
|
|
$(call Device/FitImage)
|
|
$(call Device/UbiFit)
|
|
DEVICE_VENDOR := Edgecore
|
|
DEVICE_MODEL := EAP102
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
DEVICE_DTS_CONFIG := config@ac02
|
|
SOC := ipq8071
|
|
DEVICE_PACKAGES := ipq-wifi-edgecore_eap102
|
|
IMAGE/factory.ubi := append-ubi | qsdk-ipq-factory-nand
|
|
endef
|
|
TARGET_DEVICES += edgecore_eap102
|
|
|
|
define Device/edimax_cax1800
|
|
$(call Device/FitImage)
|
|
$(call Device/UbiFit)
|
|
DEVICE_VENDOR := Edimax
|
|
DEVICE_MODEL := CAX1800
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
DEVICE_DTS_CONFIG := config@ac03
|
|
SOC := ipq8070
|
|
DEVICE_PACKAGES := ipq-wifi-edimax_cax1800
|
|
endef
|
|
TARGET_DEVICES += edimax_cax1800
|
|
|
|
define Device/netgear_rax120v2
|
|
$(call Device/FitImage)
|
|
$(call Device/UbiFit)
|
|
DEVICE_VENDOR := Netgear
|
|
DEVICE_MODEL := RAX120v2
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
DEVICE_DTS_CONFIG := config@hk01
|
|
SOC := ipq8074
|
|
KERNEL_SIZE := 29696k
|
|
NETGEAR_BOARD_ID := RAX120
|
|
NETGEAR_HW_ID := 29765589+0+512+1024+4x4+8x8
|
|
DEVICE_PACKAGES := ipq-wifi-netgear_rax120v2 kmod-spi-gpio \
|
|
kmod-spi-bitbang kmod-gpio-nxp-74hc164 kmod-hwmon-g761
|
|
IMAGES = web-ui-factory.img sysupgrade.bin
|
|
IMAGE/web-ui-factory.img := append-image initramfs-uImage.itb | \
|
|
pad-offset $$$$(BLOCKSIZE) 64 | append-uImage-fakehdr filesystem | \
|
|
netgear-dni
|
|
IMAGE/sysupgrade.bin := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | \
|
|
append-uImage-fakehdr filesystem | sysupgrade-tar kernel=$$$$@ | \
|
|
append-metadata
|
|
endef
|
|
TARGET_DEVICES += netgear_rax120v2
|
|
|
|
define Device/netgear_wax218
|
|
$(call Device/FitImage)
|
|
$(call Device/UbiFit)
|
|
DEVICE_VENDOR := Netgear
|
|
DEVICE_MODEL := WAX218
|
|
DEVICE_DTS_CONFIG := config@hk07
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
SOC := ipq8072
|
|
ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
|
|
ARTIFACTS := web-ui-factory.fit
|
|
ARTIFACT/web-ui-factory.fit := append-image initramfs-uImage.itb | \
|
|
ubinize-kernel | qsdk-ipq-factory-nand
|
|
endif
|
|
DEVICE_PACKAGES := kmod-spi-gpio kmod-spi-bitbang kmod-gpio-nxp-74hc164 \
|
|
ipq-wifi-netgear_wax218
|
|
endef
|
|
TARGET_DEVICES += netgear_wax218
|
|
|
|
define Device/netgear_wax620
|
|
$(call Device/FitImage)
|
|
$(call Device/UbiFit)
|
|
DEVICE_VENDOR := Netgear
|
|
DEVICE_MODEL := WAX620
|
|
DEVICE_DTS_CONFIG := config@hk07
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
SOC := ipq8072
|
|
DEVICE_PACKAGES += kmod-spi-gpio kmod-gpio-nxp-74hc164 \
|
|
ipq-wifi-netgear_wax620
|
|
endef
|
|
TARGET_DEVICES += netgear_wax620
|
|
|
|
define Device/netgear_wax630
|
|
$(call Device/FitImage)
|
|
$(call Device/UbiFit)
|
|
DEVICE_VENDOR := Netgear
|
|
DEVICE_MODEL := WAX630
|
|
DEVICE_DTS_CONFIG := config@hk01
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
SOC := ipq8074
|
|
IMAGES := ui-factory.tar factory.ubi sysupgrade.bin
|
|
IMAGE/ui-factory.tar := append-ubi | wax6xx-netgear-tar
|
|
DEVICE_PACKAGES += kmod-spi-gpio ipq-wifi-netgear_wax630
|
|
endef
|
|
TARGET_DEVICES += netgear_wax630
|
|
|
|
define Device/prpl_haze
|
|
$(call Device/FitImage)
|
|
$(call Device/EmmcImage)
|
|
DEVICE_VENDOR := prpl Foundation
|
|
DEVICE_MODEL := Haze
|
|
DEVICE_DTS_CONFIG := config@hk09
|
|
SOC := ipq8072
|
|
DEVICE_PACKAGES += ath11k-firmware-qcn9074 ipq-wifi-prpl_haze kmod-ath11k-pci \
|
|
mkf2fs f2fsck kmod-fs-f2fs
|
|
endef
|
|
TARGET_DEVICES += prpl_haze
|
|
|
|
define Device/qnap_301w
|
|
$(call Device/FitImage)
|
|
$(call Device/EmmcImage)
|
|
DEVICE_VENDOR := QNAP
|
|
DEVICE_MODEL := 301w
|
|
DEVICE_DTS_CONFIG := config@hk01
|
|
KERNEL_SIZE := 16384k
|
|
SOC := ipq8072
|
|
DEVICE_PACKAGES += ipq-wifi-qnap_301w
|
|
endef
|
|
TARGET_DEVICES += qnap_301w
|
|
|
|
define Device/redmi_ax6
|
|
$(call Device/xiaomi_ax3600)
|
|
DEVICE_VENDOR := Redmi
|
|
DEVICE_MODEL := AX6
|
|
DEVICE_PACKAGES := ipq-wifi-redmi_ax6
|
|
endef
|
|
TARGET_DEVICES += redmi_ax6
|
|
|
|
define Device/xiaomi_ax3600
|
|
$(call Device/FitImage)
|
|
$(call Device/UbiFit)
|
|
DEVICE_VENDOR := Xiaomi
|
|
DEVICE_MODEL := AX3600
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
DEVICE_DTS_CONFIG := config@ac04
|
|
SOC := ipq8071
|
|
KERNEL_SIZE := 36608k
|
|
DEVICE_PACKAGES := ipq-wifi-xiaomi_ax3600 kmod-ath10k-ct-smallbuffers ath10k-firmware-qca9887-ct
|
|
ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
|
|
ARTIFACTS := initramfs-factory.ubi
|
|
ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-uImage.itb | ubinize-kernel
|
|
endif
|
|
endef
|
|
TARGET_DEVICES += xiaomi_ax3600
|
|
|
|
define Device/xiaomi_ax9000
|
|
$(call Device/FitImage)
|
|
$(call Device/UbiFit)
|
|
DEVICE_VENDOR := Xiaomi
|
|
DEVICE_MODEL := AX9000
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
DEVICE_DTS_CONFIG := config@hk14
|
|
SOC := ipq8072
|
|
KERNEL_SIZE := 57344k
|
|
DEVICE_PACKAGES := ipq-wifi-xiaomi_ax9000 kmod-ath11k-pci ath11k-firmware-qcn9074 \
|
|
kmod-ath10k-ct ath10k-firmware-qca9887-ct
|
|
ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),)
|
|
ARTIFACTS := initramfs-factory.ubi
|
|
ARTIFACT/initramfs-factory.ubi := append-image-stage initramfs-uImage.itb | ubinize-kernel
|
|
endif
|
|
endef
|
|
TARGET_DEVICES += xiaomi_ax9000
|
|
|
|
define Device/zyxel_nbg7815
|
|
$(call Device/FitImage)
|
|
$(call Device/EmmcImage)
|
|
DEVICE_VENDOR := ZYXEL
|
|
DEVICE_MODEL := NBG7815
|
|
DEVICE_DTS_CONFIG := config@nbg7815
|
|
SOC := ipq8074
|
|
DEVICE_PACKAGES += ipq-wifi-zyxel_nbg7815 kmod-ath11k-pci kmod-hwmon-tmp103 \
|
|
kmod-bluetooth
|
|
endef
|
|
TARGET_DEVICES += zyxel_nbg7815
|
|
|
|
define Device/yuncore_ax880
|
|
$(call Device/FitImage)
|
|
$(call Device/UbiFit)
|
|
DEVICE_VENDOR := Yuncore
|
|
DEVICE_MODEL := AX880
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
DEVICE_DTS_CONFIG := config@hk09
|
|
SOC := ipq8072
|
|
DEVICE_PACKAGES := ipq-wifi-yuncore_ax880
|
|
IMAGES += factory.bin
|
|
IMAGE/factory.bin := append-ubi | qsdk-ipq-factory-nand
|
|
endef
|
|
TARGET_DEVICES += yuncore_ax880
|
|
|