mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-21 22:47:56 +00:00
9bdaebaff3
Hardware specification: ======== SoC: Qualcomm IPQ8072A Flash: 512MB (Fidelix FMND4G08S3J-ID) RAM: 1GB (2x Kingston DDR3L D2516ECMDXGJD) Ethernet: 1x 10/100/1000/2500/5000Mbps (Marvell AQR114C) Ethernet: 4x 10/100/1000Mbps (Qualcomm QCA8075) WiFi1: 6GHz ax 4x4 (Qualcomm QCN9024 + Skyworks SKY85784-11) - channels 33-229 WiFi2: 5GHz ax 4x4 (Qualcomm QCN5054 + Skyworks SKY85755-11) - channels 36-177 WiFi3: 2.4GHz ax 4x4 (Qualcomm QCN5024 + Skyworks SKY8340-11) IoT: Bluetooth 5, Zigbee and Thread (NXP K32W041) LED: 1x RGB status (NXP PCA9633) USB: 1x USB 3.0 Button: WPS, Reset Flash instructions: ======== 1. Manually upgrade firmware using openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin image. More details can be found here: https://www.linksys.com/support-article?articleNum=47547 After first boot check actual partition: - fw_printenv -n boot_part and install firmware on second partition using command in case of 2: - mtd -r -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin kernel and in case of 1: - mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin alt_kernel 2. Installation using serial connection from OEM firmware (default login: root, password: admin): - fw_printenv -n boot_part In case of 2: - flash_erase /dev/mtd21 0 0 - nandwrite -p /dev/mtd21 openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin or in case of 1: - flash_erase /dev/mtd23 0 0 - nandwrite -p /dev/mtd23 openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin After first boot install firmware on second partition: - mtd -r -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin kernel or: - mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin alt_kernel 3. Installation from initramfs image using USB drive: Put the initramfs image on the USB drive: - dd bs=1M if=openwrt-qualcommax-ipq807x-linksys_mx8500-initramfs-uImage.itb of=/dev/sda Stop u-boot and run: - usb start && usbboot $loadaddr 0 && bootm $loadaddr Write firmware to the flash from initramfs: - mtd -e kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin kernel and: - mtd -r -e alt_kernel -n write openwrt-qualcommax-ipq807x-linksys_mx8500-squashfs-factory.bin alt_kernel 4. Back to the OEM firmware: - mtd -e kernel -n write FW_MX8500_1.0.11.208937_prod.img kernel and: - mtd -r -e alt_kernel -n write FW_MX8500_1.0.11.208937_prod.img alt_kernel 5. USB recovery: Put the initramfs image on the USB: - dd bs=1M if=openwrt-qualcommax-ipq807x-linksys_mx8500-initramfs-uImage.itb of=/dev/sda Set u-boot env: - fw_setenv bootusb 'usb start && usbboot $loadaddr 0 && bootm $loadaddr' - fw_setenv bootcmd 'run bootusb; if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi' AQR firmware: ======== 1. Firmware loading: To properly load the firmware and initialize AQR PHY, we must use the u-boot aq_load_fw function. To do this, you need to modify u-boot env: With USB recovery: - fw_setenv bootcmd 'aq_load_fw; run bootusb; if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi' and without: - fw_setenv bootcmd 'aq_load_fw; if test $auto_recovery = no; then bootipq; elif test $boot_part = 1; then run bootpart1; else run bootpart2; fi' 2. Firmware updating: Newer firmware (AQR-G4_v5.6.5-AQR_WNC_SAQA-L2_GT_ID45287_VER24005.cld) is available in the latest OEM firmware. To load this firmware via u-boot, we need to add the MBN header and update 0:ethphyfw partition. For MBN header we can use script from this repository: https://github.com/testuser7/aqr_mbn_tool - python aqr_mbn_tool.py AQR-G4_v5.6.5-AQR_WNC_SAQA-L2_GT_ID45287_VER24005.cld To update partition we need to install kmod-mtd-rw package first: - insmod mtd-rw.ko i_want_a_brick=1 - mtd -e /dev/mtd26 -n write aqr_fw.mbn /dev/mtd26 Signed-off-by: Paweł Owoc <frut3k7@gmail.com> Link: https://github.com/openwrt/openwrt/pull/14883 Signed-off-by: Robert Marko <robimarko@gmail.com>
359 lines
9.4 KiB
Makefile
359 lines
9.4 KiB
Makefile
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/arcadyan_aw1000
|
|
$(call Device/FitImage)
|
|
$(call Device/UbiFit)
|
|
DEVICE_VENDOR := Arcadyan
|
|
DEVICE_MODEL := AW1000
|
|
BLOCKSIZE := 256k
|
|
PAGESIZE := 4096
|
|
DEVICE_DTS_CONFIG := config@hk09
|
|
SOC := ipq8072
|
|
DEVICE_PACKAGES := ipq-wifi-arcadyan_aw1000 kmod-spi-gpio \
|
|
kmod-gpio-nxp-74hc164 kmod-usb-serial-option uqmi
|
|
endef
|
|
TARGET_DEVICES += arcadyan_aw1000
|
|
|
|
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
|
|
DEVICE_PACKAGES := ipq-wifi-buffalo_wxr-5950ax12
|
|
endef
|
|
TARGET_DEVICES += buffalo_wxr-5950ax12
|
|
|
|
define Device/cmcc_rm2-6
|
|
$(call Device/FitImage)
|
|
$(call Device/UbiFit)
|
|
DEVICE_VENDOR := CMCC
|
|
DEVICE_MODEL := RM2-6
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
DEVICE_DTS_CONFIG := config@ac02
|
|
SOC := ipq8070
|
|
IMAGES += factory.bin
|
|
IMAGE/factory.bin := append-ubi | qsdk-ipq-factory-nand
|
|
DEVICE_PACKAGES := ipq-wifi-cmcc_rm2-6 kmod-hwmon-gpiofan
|
|
endef
|
|
TARGET_DEVICES += cmcc_rm2-6
|
|
|
|
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/linksys_mx
|
|
$(call Device/FitImage)
|
|
DEVICE_VENDOR := Linksys
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
KERNEL_SIZE := 6144k
|
|
IMAGE_SIZE := 147456k
|
|
NAND_SIZE := 512m
|
|
SOC := ipq8072
|
|
IMAGES += factory.bin
|
|
IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | linksys-image type=$$$$(DEVICE_MODEL)
|
|
DEVICE_PACKAGES := kmod-leds-pca963x
|
|
endef
|
|
|
|
define Device/linksys_mx4200v1
|
|
$(call Device/linksys_mx)
|
|
DEVICE_MODEL := MX4200
|
|
DEVICE_VARIANT := v1
|
|
SOC := ipq8174
|
|
DEVICE_PACKAGES += ipq-wifi-linksys_mx4200 kmod-bluetooth
|
|
endef
|
|
TARGET_DEVICES += linksys_mx4200v1
|
|
|
|
define Device/linksys_mx4200v2
|
|
$(call Device/linksys_mx4200v1)
|
|
DEVICE_VARIANT := v2
|
|
endef
|
|
TARGET_DEVICES += linksys_mx4200v2
|
|
|
|
define Device/linksys_mx5300
|
|
$(call Device/linksys_mx)
|
|
DEVICE_MODEL := MX5300
|
|
DEVICE_PACKAGES += kmod-rtc-ds1307 ipq-wifi-linksys_mx5300 \
|
|
kmod-ath10k-ct ath10k-firmware-qca9984-ct
|
|
endef
|
|
TARGET_DEVICES += linksys_mx5300
|
|
|
|
define Device/linksys_mx8500
|
|
$(call Device/linksys_mx)
|
|
DEVICE_MODEL := MX8500
|
|
DEVICE_PACKAGES += ipq-wifi-linksys_mx8500 kmod-ath11k-pci \
|
|
ath11k-firmware-qcn9074 kmod-bluetooth
|
|
endef
|
|
TARGET_DEVICES += linksys_mx8500
|
|
|
|
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
|
|
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
|
|
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 kmod-leds-lp5562
|
|
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/spectrum_sax1v1k
|
|
$(call Device/FitImage)
|
|
$(call Device/EmmcImage)
|
|
DEVICE_VENDOR := Spectrum
|
|
DEVICE_MODEL := SAX1V1K
|
|
DEVICE_DTS_CONFIG := config@rt5010w-d187-rev6
|
|
SOC := ipq8072
|
|
IMAGES := sysupgrade.bin
|
|
DEVICE_PACKAGES := ipq-wifi-spectrum_sax1v1k
|
|
endef
|
|
TARGET_DEVICES += spectrum_sax1v1k
|
|
|
|
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/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
|
|
|
|
define Device/zbtlink_zbt-z800ax
|
|
$(call Device/FitImage)
|
|
$(call Device/UbiFit)
|
|
DEVICE_VENDOR := Zbtlink
|
|
DEVICE_MODEL := ZBT-Z800AX
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
DEVICE_DTS_CONFIG := config@hk09
|
|
SOC := ipq8072
|
|
DEVICE_PACKAGES := ipq-wifi-zbtlink_zbt-z800ax
|
|
IMAGES += factory.bin
|
|
IMAGE/factory.bin := append-ubi | qsdk-ipq-factory-nand
|
|
endef
|
|
TARGET_DEVICES += zbtlink_zbt-z800ax
|
|
|
|
define Device/zte_mf269
|
|
$(call Device/FitImage)
|
|
$(call Device/UbiFit)
|
|
DEVICE_VENDOR := ZTE
|
|
DEVICE_MODEL := MF269
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
DEVICE_DTS_CONFIG := config@ac04
|
|
SOC := ipq8071
|
|
KERNEL_SIZE := 53248k
|
|
DEVICE_PACKAGES := ipq-wifi-zte_mf269
|
|
endef
|
|
TARGET_DEVICES += zte_mf269
|
|
|
|
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-bluetooth kmod-hwmon-tmp103
|
|
endef
|
|
TARGET_DEVICES += zyxel_nbg7815
|