2021-01-17 05:54:04 +00:00
|
|
|
|
|
|
|
DEVICE_VARS += NETGEAR_BOARD_ID NETGEAR_HW_ID
|
|
|
|
DEVICE_VARS += RAS_BOARD RAS_ROOTFS_SIZE RAS_VERSION
|
|
|
|
DEVICE_VARS += WRGG_DEVNAME WRGG_SIGNATURE
|
|
|
|
|
|
|
|
define Device/FitImage
|
|
|
|
KERNEL_SUFFIX := -fit-uImage.itb
|
2022-08-25 18:26:11 +00:00
|
|
|
KERNEL = kernel-bin | gzip | fit gzip $$(KDIR)/image-$$(DEVICE_DTS).dtb
|
2021-01-17 05:54:04 +00:00
|
|
|
KERNEL_NAME := Image
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Device/FitImageLzma
|
|
|
|
KERNEL_SUFFIX := -fit-uImage.itb
|
2022-08-25 18:26:11 +00:00
|
|
|
KERNEL = kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(DEVICE_DTS).dtb
|
2021-01-17 05:54:04 +00:00
|
|
|
KERNEL_NAME := Image
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Device/FitzImage
|
|
|
|
KERNEL_SUFFIX := -fit-zImage.itb
|
2022-08-25 18:26:11 +00:00
|
|
|
KERNEL = kernel-bin | fit none $$(KDIR)/image-$$(DEVICE_DTS).dtb
|
2021-01-17 05:54:04 +00:00
|
|
|
KERNEL_NAME := zImage
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Device/UbiFit
|
|
|
|
KERNEL_IN_UBI := 1
|
|
|
|
IMAGES := nand-factory.ubi nand-sysupgrade.bin
|
|
|
|
IMAGE/nand-factory.ubi := append-ubi
|
|
|
|
IMAGE/nand-sysupgrade.bin := sysupgrade-tar | append-metadata
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Device/DniImage
|
|
|
|
$(call Device/FitzImage)
|
|
|
|
NETGEAR_BOARD_ID :=
|
|
|
|
NETGEAR_HW_ID :=
|
|
|
|
IMAGES += factory.img
|
|
|
|
IMAGE/factory.img := append-kernel | pad-offset 64k 64 | append-uImage-fakehdr filesystem | append-rootfs | pad-rootfs | netgear-dni
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | pad-offset 64k 64 | append-uImage-fakehdr filesystem | \
|
2021-06-20 16:54:36 +00:00
|
|
|
append-rootfs | pad-rootfs | check-size | append-metadata
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
|
|
|
|
define Build/append-rootfshdr
|
|
|
|
mkimage -A $(LINUX_KARCH) \
|
|
|
|
-O linux -T filesystem \
|
|
|
|
-C lzma -a $(KERNEL_LOADADDR) -e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
|
|
|
|
-n root.squashfs -d $(IMAGE_ROOTFS) $@.new
|
2022-09-02 08:02:19 +00:00
|
|
|
cat $(IMAGE_KERNEL) > $@.$1
|
|
|
|
dd if=$@.new bs=64 count=1 >> $@.$1
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
|
2021-07-15 19:48:11 +00:00
|
|
|
define Build/append-rutx-metadata
|
|
|
|
echo \
|
|
|
|
'{ \
|
|
|
|
"device_code": [".*"], \
|
|
|
|
"hwver": [".*"], \
|
|
|
|
"batch": [".*"], \
|
|
|
|
"serial": [".*"], \
|
|
|
|
"supported_devices":["teltonika,rutx"] \
|
|
|
|
}' | fwtool -I - $@
|
|
|
|
endef
|
|
|
|
|
2021-12-30 20:25:03 +00:00
|
|
|
define Build/copy-file
|
|
|
|
cat "$(1)" > "$@"
|
|
|
|
endef
|
|
|
|
|
2021-01-17 05:54:04 +00:00
|
|
|
define Build/mkmylofw_32m
|
|
|
|
$(eval device_id=$(word 1,$(1)))
|
|
|
|
$(eval revision=$(word 2,$(1)))
|
|
|
|
|
|
|
|
let \
|
|
|
|
size="$$(stat -c%s $@)" \
|
|
|
|
pad="$(subst k,* 1024,$(BLOCKSIZE))" \
|
|
|
|
pad="(pad - (size % pad)) % pad" \
|
|
|
|
newsize='size + pad'; \
|
|
|
|
$(STAGING_DIR_HOST)/bin/mkmylofw \
|
|
|
|
-B WPE72 -i 0x11f6:$(device_id):0x11f6:$(device_id) -r $(revision) \
|
|
|
|
-s 0x2000000 -p0x180000:$$newsize:al:0x80208000:"OpenWrt":$@ \
|
|
|
|
$@.new
|
|
|
|
@mv $@.new $@
|
|
|
|
endef
|
|
|
|
|
ipq40xx: add netgear wac510 support
This adds support for the Netgear WAC510 Insight Managed Smart Cloud
Wireless Access Point, an indoor dual-band, dual-radio 802.11ac
business-class wireless AP with integrated omnidirectional antennae
and two 10/100/1000 Mbps Ethernet ports.
For more information see:
<https://www.netgear.com/business/wifi/access-points/wac510>
Specifications:
SoC: Qualcomm IPQ4018 (DAKOTA) ARM Quad-Core
RAM: 256 MiB
Flash1: 2 MiB Winbond W25Q16JV SPI-NOR
Flash2: 128 MiB Winbond W25N01GVZEIG SPI-NAND
Ethernet: Built-in IPQ4018 (SoC, QCA8072 PHY), 2x 1000/100/10 port,
WAN port active IEEE 802.3af/at PoE in
Wireless1: Built-in IPQ4018 (SoC) 802.11b/g/n 2x2:2, 3 dBi antennae
Wireless2: Built-in IPQ4018 (SoC) 802.11a/n/ac 2x2:2, 4 dBi antennae
Input: (Optional) Barrel 12 V 2.5 A Power, Reset button SW1
LEDs: Power, Insight, WAN PoE, LAN, 2.4G WLAN, 5G WLAN
Serial: Header J2
1 - 3.3 Volt (Do NOT connect!)
2 - TX
3 - RX
4 - Ground
WARNING: The serial port needs a TTL/RS-232 3.3 volt level converter!
The Serial settings are 115200-8-N-1.
Installation via Stock Web Interface:
BTW: The default factory console/web interface login user/password are
admin/password.
In the web interface navigating to Management - Maintenance - Upgrade -
'Firmware Upgrade' will show you what is currently installed e.g.:
Manage Firmware
Current Firmware Version: V5.0.10.2
Backup Firmware Version: V1.2.5.11
Under 'Upgrade Options' choose Local (alternatively SFTP would be
available) then click/select 'Browse File' on the right side, choose
openwrt-ipq40xx-generic-netgear_wac510-squashfs-nand-factory.tar
and hit the Upgrade button below. After a minute or two your browser
should indicate completion printing 'Firmware update complete.' and
'Rebooting AP...'.
Note that OpenWrt will use the WAN PoE port as actual WAN port
defaulting to DHCP client but NOT allowing LuCI access, use LAN port
defaulting to 192.168.1.1/24 to access LuCI.
Installation via TFTP Requiring Serial U-Boot Access:
Connect to the device's serial port and hit any key to stop autoboot.
Upload and boot the initramfs based OpenWrt image as follows:
(IPQ40xx) # setenv serverip 192.168.1.1
(IPQ40xx) # setenv ipaddr 192.168.1.2
(IPQ40xx) # tftpboot openwrt-ipq40xx-generic-netgear_wac510-initramfs-fit-uImage.itb
(IPQ40xx) # bootm
Note: This only runs OpenWrt from RAM and has not installed anything
to flash as of yet. One may permanently install OpenWrt as follows:
Check the MTD device number of the active partition:
root@OpenWrt:/# dmesg | grep 'set to be root filesystem'
[ 1.010084] mtd: device 9 (rootfs) set to be root filesystem
Upload the factory image ending with .ubi to /tmp (e.g. using scp or
tftp). Then flash the image as follows (substituting the 9 in mtd9
below with whatever number reported above):
root@OpenWrt:/# ubiformat /dev/mtd9 -f /tmp/openwrt-ipq40xx-generic-netgear_wac510-squashfs-nand-factory.ubi
And reboot.
Dual Image Configuration:
The default U-Boot boot command bootipq uses the U-Boot environment
variables primary/secondary to decide which image to boot. E.g.
primary=0, secondary=3800000 uses rootfs while primary=3800000,
secondary=0 uses rootfs_1.
Switching their values changes the active partition. E.g. from within
U-Boot:
(IPQ40xx) # setenv primary 0
(IPQ40xx) # setenv secondary 3800000
(IPQ40xx) # saveenv
Or from a OpenWrt userspace serial/SSH console:
fw_setenv primary 0
fw_setenv secondary 3800000
Note that if you install two copies of OpenWrt then each will have its
independent configuration not like when switching partitions on the
stock firmware.
BTW: The kernel log shows which boot partition is active:
[ 2.439050] ubi0: attached mtd9 (name "rootfs", size 56 MiB)
vs.
[ 2.978785] ubi0: attached mtd10 (name "rootfs_1", size 56 MiB)
Note: After 3 failed boot attempts it automatically switches partition.
Signed-off-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Marcel Ziswiler <marcel@ziswiler.com>
[squashed netgear-tar commit into main and rename netgear-tar for
now, until it is made generic.]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2020-11-25 13:23:58 +00:00
|
|
|
define Build/wac5xx-netgear-tar
|
|
|
|
mkdir $@.tmp
|
|
|
|
mv $@ $@.tmp/wac5xx-ubifs-root.img
|
|
|
|
md5sum $@.tmp/wac5xx-ubifs-root.img > $@.tmp/wac5xx-ubifs-root.md5sum
|
|
|
|
echo "WAC505 WAC510" > $@.tmp/metadata.txt
|
|
|
|
echo "WAC505_V9.9.9.9" > $@.tmp/version
|
|
|
|
tar -C $@.tmp/ -cf $@ .
|
|
|
|
rm -rf $@.tmp
|
|
|
|
endef
|
|
|
|
|
2021-01-17 05:54:04 +00:00
|
|
|
define Build/qsdk-ipq-factory-nand-askey
|
|
|
|
$(TOPDIR)/scripts/mkits-qsdk-ipq-image.sh $@.its\
|
2022-09-02 08:02:19 +00:00
|
|
|
askey_kernel $@.$1 \
|
2021-01-17 05:54:04 +00:00
|
|
|
askey_fs $(IMAGE_ROOTFS) \
|
|
|
|
ubifs $@
|
|
|
|
PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f $@.its $@.new
|
|
|
|
@mv $@.new $@
|
|
|
|
endef
|
|
|
|
|
ipq40xx: add support for GL.iNet GL-B2200
This patch adds supports for the GL-B2200 router.
Specifications:
- SOC: Qualcomm IPQ4019 ARM Quad-Core
- RAM: 512 MiB
- Flash: 16 MiB NOR - SPI0
- EMMC: 8GB EMMC
- ETH: Qualcomm QCA8075
- WLAN1: Qualcomm Atheros QCA4019 2.4GHz 802.11b/g/n 2x2
- WLAN2: Qualcomm Atheros QCA4019 5GHz 802.11n/ac W2 2x2
- WLAN3: Qualcomm Atheros QCA9886 5GHz 802.11n/ac W2 2x2
- INPUT: Reset, WPS
- LED: Power, Internet
- UART1: On board pin header near to LED (3.3V, TX, RX, GND), 3.3V without pin - 115200 8N1
- UART2: On board with BLE module
- SPI1: On board socket for Zigbee module
Update firmware instructions:
Please update the firmware via U-Boot web UI (by default at 192.168.1.1, following instructions found at
https://docs.gl-inet.com/en/3/troubleshooting/debrick/).
Normal sysupgrade, either via CLI or LuCI, is not possible from stock firmware.
Please do use the *gl-b2200-squashfs-emmc.img file, gunzipping the produced *gl-b2200-squashfs-emmc.img.gz one first.
What's working:
- WiFi 2G, 5G
- WPA2/WPA3
Not tested:
- Bluetooth LE/Zigbee
Credits goes to the original authors of this patch.
V1->V2:
- updates *arm-boot-add-dts-files.patch correctly (sorry, my mistake)
- add uboot-envtools support
V2->V3:
- Li Zhang updated official patch to fix wrong MAC address on wlan0 (PCI) interface
V3->V4:
- wire up sysupgrade
Signed-off-by: Li Zhang <li.zhang@gl-inet.com>
[fix tab and trailing space, document what's working and what's not]
Signed-off-by: TruongSinh Tran-Nguyen <i@truongsinh.pro>
[rebase on top of master, address remaining comments]
Signed-off-by: Enrico Mioso <mrkiko.rs@gmail.com>
[remove redundant check in platform.sh]
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-12-01 15:18:17 +00:00
|
|
|
define Build/qsdk-ipq-app-gpt
|
|
|
|
cp $@ $@.tmp 2>/dev/null || true
|
|
|
|
ptgen -g -o $@.tmp -a 1 -l 1024 \
|
|
|
|
-t 0x2e -N 0:HLOS -r -p 32M \
|
|
|
|
-t 0x83 -N rootfs -r -p 128M \
|
|
|
|
-N rootfs_data -p 512M
|
|
|
|
cat $@.tmp >> $@
|
|
|
|
rm $@.tmp
|
|
|
|
endef
|
|
|
|
|
2021-01-17 05:54:04 +00:00
|
|
|
define Build/SenaoFW
|
|
|
|
-$(STAGING_DIR_HOST)/bin/mksenaofw \
|
|
|
|
-n $(BOARD_NAME) -r $(VENDOR_ID) -p $(1) \
|
|
|
|
-c $(DATECODE) -w $(2) -x $(CW_VER) -t 0 \
|
|
|
|
-e $@ \
|
|
|
|
-o $@.new
|
|
|
|
@cp $@.new $@
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Build/wrgg-image
|
|
|
|
mkwrggimg -i $@ \
|
|
|
|
-o $@.new \
|
|
|
|
-d "$(WRGG_DEVNAME)" \
|
|
|
|
-s "$(WRGG_SIGNATURE)" \
|
|
|
|
-v "" -m "" -B ""
|
|
|
|
mv $@.new $@
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Device/8dev_habanero-dvk
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := 8devices
|
|
|
|
DEVICE_MODEL := Habanero DVK
|
|
|
|
IMAGE_SIZE := 30976k
|
|
|
|
SOC := qcom-ipq4019
|
2021-06-20 16:54:36 +00:00
|
|
|
IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | append-rootfs | pad-rootfs | check-size | append-metadata
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += 8dev_habanero-dvk
|
|
|
|
|
|
|
|
define Device/8dev_jalapeno-common
|
|
|
|
$(call Device/FitImage)
|
|
|
|
$(call Device/UbiFit)
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Device/8dev_jalapeno
|
|
|
|
$(call Device/8dev_jalapeno-common)
|
|
|
|
DEVICE_VENDOR := 8devices
|
|
|
|
DEVICE_MODEL := Jalapeno
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += 8dev_jalapeno
|
|
|
|
|
|
|
|
define Device/alfa-network_ap120c-ac
|
|
|
|
$(call Device/FitImage)
|
|
|
|
$(call Device/UbiFit)
|
|
|
|
DEVICE_VENDOR := ALFA Network
|
|
|
|
DEVICE_MODEL := AP120C-AC
|
|
|
|
SOC := qcom-ipq4018
|
2021-05-25 13:26:06 +00:00
|
|
|
DEVICE_PACKAGES := kmod-usb-acm kmod-tpm-i2c-atmel
|
2021-01-17 05:54:04 +00:00
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
IMAGE_SIZE := 65536k
|
|
|
|
IMAGES := nand-factory.bin nand-sysupgrade.bin
|
|
|
|
IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += alfa-network_ap120c-ac
|
|
|
|
|
|
|
|
define Device/aruba_glenmorangie
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := Aruba
|
|
|
|
SOC := qcom-ipq4029
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Device/aruba_ap-303
|
|
|
|
$(call Device/aruba_glenmorangie)
|
|
|
|
DEVICE_MODEL := AP-303
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += aruba_ap-303
|
|
|
|
|
|
|
|
define Device/aruba_ap-303h
|
|
|
|
$(call Device/aruba_glenmorangie)
|
|
|
|
DEVICE_MODEL := AP-303H
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += aruba_ap-303h
|
|
|
|
|
|
|
|
define Device/aruba_ap-365
|
|
|
|
$(call Device/aruba_glenmorangie)
|
|
|
|
DEVICE_MODEL := AP-365
|
2022-05-25 20:07:10 +00:00
|
|
|
DEVICE_PACKAGES := kmod-hwmon-ad7418 ipq-wifi-aruba_ap-365
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += aruba_ap-365
|
|
|
|
|
|
|
|
define Device/asus_map-ac2200
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := ASUS
|
|
|
|
DEVICE_MODEL := Lyra (MAP-AC2200)
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
DEVICE_PACKAGES := ath10k-firmware-qca9888-ct kmod-ath3k
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += asus_map-ac2200
|
|
|
|
|
2021-12-30 20:25:03 +00:00
|
|
|
# WARNING: this is an initramfs image that gets you half of the way there
|
|
|
|
# you need to delete the jffs2 ubi volume and sysupgrade to the final image
|
|
|
|
# to get a "trx" you can flash via web UI for ac42u/ac58u:
|
|
|
|
# - change call Device/FitImageLzma to Device/FitImage
|
|
|
|
# - add the following below UIMAGE_NAME
|
|
|
|
# UIMAGE_MAGIC := 0x27051956
|
|
|
|
# IMAGES += factory.trx
|
|
|
|
# IMAGE/factory.trx := copy-file $(KDIR)/tmp/$$(KERNEL_INITRAMFS_IMAGE) | uImage none
|
|
|
|
define Device/asus_rt-ac42u
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := ASUS
|
|
|
|
DEVICE_MODEL := RT-AC42U
|
|
|
|
DEVICE_ALT0_VENDOR := ASUS
|
|
|
|
DEVICE_ALT0_MODEL := RT-ACRH17
|
2022-04-04 02:29:18 +00:00
|
|
|
DEVICE_ALT1_VENDOR := ASUS
|
|
|
|
DEVICE_ALT1_MODEL := RT-AC2200
|
2021-12-30 20:25:03 +00:00
|
|
|
SOC := qcom-ipq4019
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
IMAGE_SIZE := 20439364
|
|
|
|
FILESYSTEMS := squashfs
|
|
|
|
# RT-AC82U is nowhere to be found online
|
|
|
|
# Rather, this device is a/k/a RT-AC42U
|
|
|
|
# But we'll go with what the vendor firmware has...
|
|
|
|
UIMAGE_NAME:=$(shell echo -e '\03\01\01\01RT-AC82U')
|
2022-05-13 20:25:36 +00:00
|
|
|
DEVICE_PACKAGES := ath10k-firmware-qca9984-ct kmod-usb-ledtrig-usbport
|
2021-12-30 20:25:03 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += asus_rt-ac42u
|
|
|
|
|
2021-01-17 05:54:04 +00:00
|
|
|
define Device/asus_rt-ac58u
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := ASUS
|
|
|
|
DEVICE_MODEL := RT-AC58U
|
2022-01-15 16:23:49 +00:00
|
|
|
DEVICE_ALT0_VENDOR := ASUS
|
|
|
|
DEVICE_ALT0_MODEL := RT-ACRH13
|
2021-01-17 05:54:04 +00:00
|
|
|
SOC := qcom-ipq4018
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
IMAGE_SIZE := 20439364
|
|
|
|
FILESYSTEMS := squashfs
|
|
|
|
# Someone - in their infinite wisdom - decided to put the firmware
|
|
|
|
# version in front of the image name \03\00\00\04 => Version 3.0.0.4
|
|
|
|
# Since u-boot works with strings we either need another fixup step
|
|
|
|
# to add a version... or we are very careful not to add '\0' into that
|
|
|
|
# string and call it a day.... Yeah, we do the latter!
|
|
|
|
UIMAGE_NAME:=$(shell echo -e '\03\01\01\01RT-AC58U')
|
|
|
|
DEVICE_PACKAGES := -kmod-ath10k-ct kmod-ath10k-ct-smallbuffers \
|
|
|
|
kmod-usb-ledtrig-usbport
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += asus_rt-ac58u
|
|
|
|
|
|
|
|
define Device/avm_fritzbox-4040
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := AVM
|
|
|
|
DEVICE_MODEL := FRITZ!Box 4040
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
BOARD_NAME := fritz4040
|
|
|
|
IMAGE_SIZE := 29056k
|
|
|
|
UBOOT_PATH := $(STAGING_DIR_IMAGE)/uboot-fritz4040.bin
|
|
|
|
UBOOT_PARTITION_SIZE := 524288
|
|
|
|
IMAGES += eva.bin
|
|
|
|
IMAGE/eva.bin := append-uboot | pad-to $$$$(UBOOT_PARTITION_SIZE) | append-kernel | append-rootfs | pad-rootfs
|
2021-06-20 16:54:36 +00:00
|
|
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | check-size | append-metadata
|
2021-01-17 05:54:04 +00:00
|
|
|
DEVICE_PACKAGES := fritz-tffs fritz-caldata
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += avm_fritzbox-4040
|
|
|
|
|
|
|
|
define Device/avm_fritzbox-7530
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := AVM
|
|
|
|
DEVICE_MODEL := FRITZ!Box 7530
|
2021-12-05 11:14:45 +00:00
|
|
|
DEVICE_ALT0_VENDOR := AVM
|
|
|
|
DEVICE_ALT0_MODEL := FRITZ!Box 7520
|
2021-01-17 05:54:04 +00:00
|
|
|
SOC := qcom-ipq4019
|
|
|
|
DEVICE_PACKAGES := fritz-caldata fritz-tffs-nand
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += avm_fritzbox-7530
|
|
|
|
|
|
|
|
define Device/avm_fritzrepeater-1200
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := AVM
|
|
|
|
DEVICE_MODEL := FRITZ!Repeater 1200
|
|
|
|
SOC := qcom-ipq4019
|
2022-05-13 20:25:36 +00:00
|
|
|
DEVICE_PACKAGES := fritz-caldata fritz-tffs-nand
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += avm_fritzrepeater-1200
|
|
|
|
|
|
|
|
define Device/avm_fritzrepeater-3000
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := AVM
|
|
|
|
DEVICE_MODEL := FRITZ!Repeater 3000
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
DEVICE_PACKAGES := ath10k-firmware-qca9984-ct fritz-caldata fritz-tffs-nand
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += avm_fritzrepeater-3000
|
|
|
|
|
|
|
|
define Device/buffalo_wtr-m2133hp
|
|
|
|
$(call Device/FitImage)
|
|
|
|
$(call Device/UbiFit)
|
|
|
|
DEVICE_VENDOR := Buffalo
|
|
|
|
DEVICE_MODEL := WTR-M2133HP
|
|
|
|
SOC := qcom-ipq4019
|
2022-05-13 20:25:36 +00:00
|
|
|
DEVICE_PACKAGES := ath10k-firmware-qca9984-ct
|
2021-01-17 05:54:04 +00:00
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += buffalo_wtr-m2133hp
|
|
|
|
|
|
|
|
define Device/cellc_rtl30vw
|
2021-11-05 15:01:54 +00:00
|
|
|
KERNEL_SUFFIX := -fit-zImage.itb
|
2022-08-25 18:26:11 +00:00
|
|
|
KERNEL_INITRAMFS = kernel-bin | gzip | fit gzip $$(KDIR)/image-$$(DEVICE_DTS).dtb
|
|
|
|
KERNEL = kernel-bin | fit none $$(KDIR)/image-$$(DEVICE_DTS).dtb | uImage lzma | pad-to 2048
|
2021-11-05 15:01:54 +00:00
|
|
|
KERNEL_NAME := zImage
|
2021-01-17 05:54:04 +00:00
|
|
|
KERNEL_IN_UBI :=
|
|
|
|
IMAGES := nand-factory.bin nand-sysupgrade.bin
|
2022-09-02 08:02:19 +00:00
|
|
|
IMAGE/nand-factory.bin := append-rootfshdr kernel | append-ubi | qsdk-ipq-factory-nand-askey kernel
|
|
|
|
IMAGE/nand-sysupgrade.bin := append-rootfshdr kernel | sysupgrade-tar kernel=$$$$@.kernel | append-metadata
|
2021-01-17 05:54:04 +00:00
|
|
|
DEVICE_VENDOR := Cell C
|
|
|
|
DEVICE_MODEL := RTL30VW
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
DEVICE_DTS_CONFIG := config@5
|
|
|
|
KERNEL_INSTALL := 1
|
|
|
|
KERNEL_SIZE := 4096k
|
|
|
|
IMAGE_SIZE := 57344k
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
2022-05-13 20:25:36 +00:00
|
|
|
DEVICE_PACKAGES := kmod-usb-net-qmi-wwan kmod-usb-serial-option uqmi
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += cellc_rtl30vw
|
|
|
|
|
|
|
|
define Device/cilab_meshpoint-one
|
|
|
|
$(call Device/8dev_jalapeno-common)
|
|
|
|
DEVICE_VENDOR := Crisis Innovation Lab
|
|
|
|
DEVICE_MODEL := MeshPoint.One
|
|
|
|
DEVICE_PACKAGES := kmod-i2c-gpio kmod-iio-bmp280-i2c kmod-hwmon-ina2xx kmod-rtc-pcf2127
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += cilab_meshpoint-one
|
|
|
|
|
|
|
|
define Device/compex_wpj419
|
|
|
|
$(call Device/FitImage)
|
|
|
|
$(call Device/UbiFit)
|
|
|
|
DEVICE_VENDOR := Compex
|
|
|
|
DEVICE_MODEL := WPJ419
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
DEVICE_DTS_CONFIG := config@12
|
|
|
|
KERNEL_INSTALL := 1
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
FILESYSTEMS := squashfs
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += compex_wpj419
|
|
|
|
|
|
|
|
define Device/compex_wpj428
|
|
|
|
$(call Device/FitImage)
|
|
|
|
DEVICE_VENDOR := Compex
|
|
|
|
DEVICE_MODEL := WPJ428
|
|
|
|
SOC := qcom-ipq4028
|
|
|
|
DEVICE_DTS_CONFIG := config@4
|
|
|
|
BLOCKSIZE := 64k
|
|
|
|
IMAGE_SIZE := 31232k
|
|
|
|
KERNEL_SIZE := 4096k
|
|
|
|
IMAGES += cpximg-6a04.bin
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
|
|
|
|
IMAGE/cpximg-6a04.bin := append-kernel | append-rootfs | pad-rootfs | mkmylofw_32m 0x8A2 3
|
|
|
|
DEVICE_PACKAGES := kmod-gpio-beeper
|
2021-11-03 15:45:38 +00:00
|
|
|
DEFAULT := n
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += compex_wpj428
|
|
|
|
|
|
|
|
define Device/devolo_magic-2-wifi-next
|
|
|
|
$(call Device/FitImage)
|
|
|
|
DEVICE_VENDOR := devolo
|
|
|
|
DEVICE_MODEL := Magic 2 WiFi next
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
KERNEL_SIZE := 4096k
|
|
|
|
|
|
|
|
# If the bootloader sees 0xDEADC0DE and this trailer at the 64k boundary of a TFTP image
|
|
|
|
# it will bootm it, just like we want for the initramfs.
|
2022-08-25 18:26:11 +00:00
|
|
|
KERNEL_INITRAMFS := kernel-bin | gzip | fit gzip $$(KDIR)/image-$$(DEVICE_DTS).dtb | pad-to 64k |\
|
2021-01-17 05:54:04 +00:00
|
|
|
append-string -e '\xDE\xAD\xC0\xDE{"fl_initramfs":""}\x00'
|
|
|
|
|
|
|
|
IMAGE_SIZE := 26624k
|
|
|
|
IMAGES := sysupgrade.bin
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
|
2021-05-25 13:26:06 +00:00
|
|
|
DEVICE_PACKAGES := ipq-wifi-devolo_magic-2-wifi-next
|
2021-11-03 15:45:38 +00:00
|
|
|
DEFAULT := n
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += devolo_magic-2-wifi-next
|
|
|
|
|
|
|
|
define Device/dlink_dap-2610
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := D-Link
|
|
|
|
DEVICE_MODEL := DAP-2610
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
DEVICE_DTS_CONFIG := config@ap.dk01.1-c1
|
|
|
|
BLOCKSIZE := 64k
|
|
|
|
WRGG_DEVNAME := /dev/mtdblock/8
|
|
|
|
WRGG_SIGNATURE := wapac30_dkbs_dap2610
|
|
|
|
IMAGE_SIZE := 14080k
|
|
|
|
IMAGES += factory.bin
|
|
|
|
# Bootloader expects a special 160 byte header which is added by
|
|
|
|
# wrgg-image.
|
|
|
|
# Factory image size must be larger than 6MB, and size in wrgg header must
|
|
|
|
# match actual factory image size to be flashable from D-Link http server.
|
|
|
|
# Bootloader verifies checksum of wrgg image before booting, thus jffs2
|
|
|
|
# cannot be part of the wrgg image. This is solved in the factory image by
|
|
|
|
# having the rootfs at the end of the image (without pad-rootfs). And in
|
|
|
|
# the sysupgrade image only the kernel is included in the wrgg checksum,
|
|
|
|
# but this is not flashable from the D-link http server.
|
|
|
|
# append-rootfs must start on an erase block boundary.
|
|
|
|
IMAGE/factory.bin := append-kernel | pad-offset 6144k 160 | append-rootfs | wrgg-image | check-size
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | wrgg-image | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size | append-metadata
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += dlink_dap-2610
|
|
|
|
|
|
|
|
define Device/edgecore_ecw5211
|
|
|
|
$(call Device/FitImage)
|
|
|
|
$(call Device/UbiFit)
|
|
|
|
DEVICE_VENDOR := Edgecore
|
|
|
|
DEVICE_MODEL := ECW5211
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
2021-08-18 13:11:11 +00:00
|
|
|
DEVICE_DTS_CONFIG := config@ap.dk01.1-c2
|
2021-05-25 13:26:06 +00:00
|
|
|
DEVICE_PACKAGES := kmod-tpm-i2c-atmel kmod-usb-acm
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += edgecore_ecw5211
|
|
|
|
|
|
|
|
define Device/edgecore_oap100
|
|
|
|
$(call Device/FitImage)
|
|
|
|
$(call Device/UbiFit)
|
|
|
|
DEVICE_VENDOR := Edgecore
|
|
|
|
DEVICE_MODEL := OAP100
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
IMAGES := nand-sysupgrade.bin
|
|
|
|
DEVICE_DTS_CONFIG := config@ap.dk07.1-c1
|
|
|
|
DEVICE_PACKAGES := ipq-wifi-edgecore_oap100 kmod-usb-acm kmod-usb-net kmod-usb-net-cdc-qmi uqmi
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += edgecore_oap100
|
|
|
|
|
|
|
|
define Device/engenius_eap1300
|
|
|
|
$(call Device/FitImage)
|
|
|
|
DEVICE_VENDOR := EnGenius
|
|
|
|
DEVICE_MODEL := EAP1300
|
|
|
|
DEVICE_DTS_CONFIG := config@4
|
|
|
|
BOARD_NAME := eap1300
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
KERNEL_SIZE := 5120k
|
|
|
|
IMAGE_SIZE := 25344k
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += engenius_eap1300
|
|
|
|
|
|
|
|
define Device/engenius_eap2200
|
|
|
|
$(call Device/FitImage)
|
|
|
|
$(call Device/UbiFit)
|
|
|
|
DEVICE_VENDOR := EnGenius
|
|
|
|
DEVICE_MODEL := EAP2200
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
2022-05-13 20:25:36 +00:00
|
|
|
DEVICE_PACKAGES := ath10k-firmware-qca9888-ct -kmod-ath10k-ct kmod-ath10k-ct-smallbuffers
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += engenius_eap2200
|
|
|
|
|
|
|
|
define Device/engenius_emd1
|
|
|
|
$(call Device/FitImage)
|
|
|
|
DEVICE_VENDOR := EnGenius
|
|
|
|
DEVICE_MODEL := EMD1
|
|
|
|
DEVICE_DTS_CONFIG := config@4
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
IMAGE_SIZE := 30720k
|
|
|
|
IMAGES += factory.bin
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
|
|
|
|
IMAGE/factory.bin := qsdk-ipq-factory-nor | check-size
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += engenius_emd1
|
|
|
|
|
|
|
|
define Device/engenius_emr3500
|
|
|
|
$(call Device/FitImage)
|
|
|
|
DEVICE_VENDOR := EnGenius
|
|
|
|
DEVICE_MODEL := EMR3500
|
|
|
|
DEVICE_DTS_CONFIG := config@4
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
KERNEL_SIZE := 4096k
|
|
|
|
IMAGE_SIZE := 30720k
|
|
|
|
IMAGES += factory.bin
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
|
|
|
|
IMAGE/factory.bin := qsdk-ipq-factory-nor | check-size
|
2021-11-03 15:45:38 +00:00
|
|
|
DEFAULT := n
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += engenius_emr3500
|
|
|
|
|
|
|
|
define Device/engenius_ens620ext
|
|
|
|
$(call Device/FitImage)
|
|
|
|
DEVICE_VENDOR := EnGenius
|
|
|
|
DEVICE_MODEL := ENS620EXT
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
DEVICE_DTS_CONFIG := config@4
|
|
|
|
BLOCKSIZE := 64k
|
|
|
|
PAGESIZE := 256
|
|
|
|
BOARD_NAME := ENS620EXT
|
|
|
|
VENDOR_ID := 0x0101
|
|
|
|
PRODUCT_ID := 0x79
|
|
|
|
PRODUCT_ID_NEW := 0xA4
|
|
|
|
DATECODE := 190507
|
|
|
|
FW_VER := 3.1.2
|
|
|
|
FW_VER_NEW := 3.5.6
|
|
|
|
CW_VER := 1.8.99
|
|
|
|
IMAGE_SIZE := 21312k
|
|
|
|
KERNEL_SIZE := 5120k
|
|
|
|
FILESYSTEMS := squashfs
|
|
|
|
IMAGES += factory_30.bin factory_35.bin
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | check-size | append-metadata
|
|
|
|
IMAGE/factory_30.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | check-size | SenaoFW $$$$(PRODUCT_ID) $$$$(FW_VER)
|
|
|
|
IMAGE/factory_35.bin := qsdk-ipq-factory-nor | check-size | SenaoFW $$$$(PRODUCT_ID_NEW) $$$$(FW_VER_NEW)
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += engenius_ens620ext
|
|
|
|
|
2022-08-29 12:30:01 +00:00
|
|
|
define Device/extreme-networks_ws-ap3915i
|
|
|
|
$(call Device/FitImage)
|
|
|
|
DEVICE_VENDOR := Extreme Networks
|
|
|
|
DEVICE_MODEL := WS-AP3915i
|
|
|
|
IMAGE_SIZE := 30080k
|
|
|
|
SOC := qcom-ipq4029
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | check-size | append-metadata
|
|
|
|
DEVICE_PACKAGES := ipq-wifi-extreme-networks_ws-ap3915i
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += extreme-networks_ws-ap3915i
|
|
|
|
|
2021-01-17 05:54:04 +00:00
|
|
|
define Device/ezviz_cs-w3-wd1200g-eup
|
|
|
|
$(call Device/FitImage)
|
|
|
|
DEVICE_VENDOR := EZVIZ
|
|
|
|
DEVICE_MODEL := CS-W3-WD1200G
|
|
|
|
DEVICE_VARIANT := EUP
|
|
|
|
IMAGE_SIZE := 14848k
|
2021-11-28 14:26:18 +00:00
|
|
|
KERNEL_SIZE = 6m
|
2021-01-17 05:54:04 +00:00
|
|
|
SOC := qcom-ipq4018
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | \
|
|
|
|
append-metadata
|
2022-05-13 20:25:36 +00:00
|
|
|
DEVICE_PACKAGES := -kmod-ath10k-ct kmod-ath10k-ct-smallbuffers
|
2021-11-28 14:26:18 +00:00
|
|
|
DEVICE_COMPAT_VERSION := 2.0
|
|
|
|
DEVICE_COMPAT_MESSAGE := uboot's bootcmd has to be updated (see wiki). \
|
|
|
|
Upgrade via sysupgrade mechanism is not possible.
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += ezviz_cs-w3-wd1200g-eup
|
|
|
|
|
|
|
|
define Device/glinet_gl-ap1300
|
|
|
|
$(call Device/FitImage)
|
|
|
|
$(call Device/UbiFit)
|
|
|
|
DEVICE_VENDOR := GL.iNet
|
|
|
|
DEVICE_MODEL := GL-AP1300
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
DEVICE_DTS_CONFIG := config@ap.dk01.1-c2
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
IMAGE_SIZE := 131072k
|
|
|
|
KERNEL_INSTALL := 1
|
2022-09-09 16:14:08 +00:00
|
|
|
DEVICE_PACKAGES := ipq-wifi-glinet_gl-ap1300 kmod-usb-net-qmi-wwan kmod-usb-serial-option uqmi
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += glinet_gl-ap1300
|
|
|
|
|
|
|
|
define Device/glinet_gl-b1300
|
2021-10-09 23:32:30 +00:00
|
|
|
$(call Device/FitzImage)
|
2021-01-17 05:54:04 +00:00
|
|
|
DEVICE_VENDOR := GL.iNet
|
|
|
|
DEVICE_MODEL := GL-B1300
|
|
|
|
BOARD_NAME := gl-b1300
|
|
|
|
SOC := qcom-ipq4029
|
|
|
|
KERNEL_SIZE := 4096k
|
|
|
|
IMAGE_SIZE := 26624k
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel |append-rootfs | pad-rootfs | append-metadata
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += glinet_gl-b1300
|
|
|
|
|
ipq40xx: add support for GL.iNet GL-B2200
This patch adds supports for the GL-B2200 router.
Specifications:
- SOC: Qualcomm IPQ4019 ARM Quad-Core
- RAM: 512 MiB
- Flash: 16 MiB NOR - SPI0
- EMMC: 8GB EMMC
- ETH: Qualcomm QCA8075
- WLAN1: Qualcomm Atheros QCA4019 2.4GHz 802.11b/g/n 2x2
- WLAN2: Qualcomm Atheros QCA4019 5GHz 802.11n/ac W2 2x2
- WLAN3: Qualcomm Atheros QCA9886 5GHz 802.11n/ac W2 2x2
- INPUT: Reset, WPS
- LED: Power, Internet
- UART1: On board pin header near to LED (3.3V, TX, RX, GND), 3.3V without pin - 115200 8N1
- UART2: On board with BLE module
- SPI1: On board socket for Zigbee module
Update firmware instructions:
Please update the firmware via U-Boot web UI (by default at 192.168.1.1, following instructions found at
https://docs.gl-inet.com/en/3/troubleshooting/debrick/).
Normal sysupgrade, either via CLI or LuCI, is not possible from stock firmware.
Please do use the *gl-b2200-squashfs-emmc.img file, gunzipping the produced *gl-b2200-squashfs-emmc.img.gz one first.
What's working:
- WiFi 2G, 5G
- WPA2/WPA3
Not tested:
- Bluetooth LE/Zigbee
Credits goes to the original authors of this patch.
V1->V2:
- updates *arm-boot-add-dts-files.patch correctly (sorry, my mistake)
- add uboot-envtools support
V2->V3:
- Li Zhang updated official patch to fix wrong MAC address on wlan0 (PCI) interface
V3->V4:
- wire up sysupgrade
Signed-off-by: Li Zhang <li.zhang@gl-inet.com>
[fix tab and trailing space, document what's working and what's not]
Signed-off-by: TruongSinh Tran-Nguyen <i@truongsinh.pro>
[rebase on top of master, address remaining comments]
Signed-off-by: Enrico Mioso <mrkiko.rs@gmail.com>
[remove redundant check in platform.sh]
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-12-01 15:18:17 +00:00
|
|
|
define Device/glinet_gl-b2200
|
|
|
|
$(call Device/FitzImage)
|
|
|
|
DEVICE_VENDOR := GL.iNet
|
|
|
|
DEVICE_MODEL := GL-B2200
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
DEVICE_DTS_CONFIG := config@ap.dk04.1-c3
|
|
|
|
KERNEL_INITRAMFS_SUFFIX := -recovery.itb
|
|
|
|
IMAGES := emmc.img.gz sysupgrade.bin
|
|
|
|
IMAGE/emmc.img.gz := qsdk-ipq-app-gpt |\
|
|
|
|
pad-to 1024k | append-kernel |\
|
|
|
|
pad-to 33792k | append-rootfs |\
|
|
|
|
append-metadata | gzip
|
|
|
|
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
|
2022-06-26 13:05:27 +00:00
|
|
|
DEVICE_PACKAGES := ath10k-firmware-qca9888-ct \
|
ipq40xx: add support for GL.iNet GL-B2200
This patch adds supports for the GL-B2200 router.
Specifications:
- SOC: Qualcomm IPQ4019 ARM Quad-Core
- RAM: 512 MiB
- Flash: 16 MiB NOR - SPI0
- EMMC: 8GB EMMC
- ETH: Qualcomm QCA8075
- WLAN1: Qualcomm Atheros QCA4019 2.4GHz 802.11b/g/n 2x2
- WLAN2: Qualcomm Atheros QCA4019 5GHz 802.11n/ac W2 2x2
- WLAN3: Qualcomm Atheros QCA9886 5GHz 802.11n/ac W2 2x2
- INPUT: Reset, WPS
- LED: Power, Internet
- UART1: On board pin header near to LED (3.3V, TX, RX, GND), 3.3V without pin - 115200 8N1
- UART2: On board with BLE module
- SPI1: On board socket for Zigbee module
Update firmware instructions:
Please update the firmware via U-Boot web UI (by default at 192.168.1.1, following instructions found at
https://docs.gl-inet.com/en/3/troubleshooting/debrick/).
Normal sysupgrade, either via CLI or LuCI, is not possible from stock firmware.
Please do use the *gl-b2200-squashfs-emmc.img file, gunzipping the produced *gl-b2200-squashfs-emmc.img.gz one first.
What's working:
- WiFi 2G, 5G
- WPA2/WPA3
Not tested:
- Bluetooth LE/Zigbee
Credits goes to the original authors of this patch.
V1->V2:
- updates *arm-boot-add-dts-files.patch correctly (sorry, my mistake)
- add uboot-envtools support
V2->V3:
- Li Zhang updated official patch to fix wrong MAC address on wlan0 (PCI) interface
V3->V4:
- wire up sysupgrade
Signed-off-by: Li Zhang <li.zhang@gl-inet.com>
[fix tab and trailing space, document what's working and what's not]
Signed-off-by: TruongSinh Tran-Nguyen <i@truongsinh.pro>
[rebase on top of master, address remaining comments]
Signed-off-by: Enrico Mioso <mrkiko.rs@gmail.com>
[remove redundant check in platform.sh]
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2021-12-01 15:18:17 +00:00
|
|
|
kmod-fs-ext4 kmod-mmc kmod-spi-dev mkf2fs e2fsprogs kmod-fs-f2fs
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += glinet_gl-b2200
|
|
|
|
|
2021-01-17 05:54:04 +00:00
|
|
|
define Device/glinet_gl-s1300
|
2021-10-09 23:32:30 +00:00
|
|
|
$(call Device/FitzImage)
|
2021-01-17 05:54:04 +00:00
|
|
|
DEVICE_VENDOR := GL.iNet
|
|
|
|
DEVICE_MODEL := GL-S1300
|
|
|
|
SOC := qcom-ipq4029
|
|
|
|
KERNEL_SIZE := 4096k
|
|
|
|
IMAGE_SIZE := 26624k
|
|
|
|
IMAGES := sysupgrade.bin
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
|
|
|
|
DEVICE_PACKAGES := ipq-wifi-glinet_gl-s1300 kmod-fs-ext4 kmod-mmc kmod-spi-dev
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += glinet_gl-s1300
|
|
|
|
|
|
|
|
define Device/linksys_ea6350v3
|
|
|
|
# The Linksys EA6350v3 has a uboot bootloader that does not
|
|
|
|
# support either booting lzma kernel images nor booting UBI
|
|
|
|
# partitions. This uboot, however, supports raw kernel images and
|
|
|
|
# gzipped images.
|
|
|
|
#
|
|
|
|
# As for the time of writing this, the device will boot the kernel
|
|
|
|
# from a fixed address with a fixed length of 3MiB. Also, the
|
|
|
|
# device has a hard-coded kernel command line that requieres the
|
|
|
|
# rootfs and alt_rootfs to be in mtd11 and mtd13 respectively.
|
|
|
|
# Oh... and the kernel partition overlaps with the rootfs
|
|
|
|
# partition (the same for alt_kernel and alt_rootfs).
|
|
|
|
#
|
|
|
|
# If you are planing re-partitioning the device, you may want to
|
|
|
|
# keep those details in mind:
|
|
|
|
# 1. The kernel adresses you should honor are 0x00000000 and
|
|
|
|
# 0x02800000 respectively.
|
|
|
|
# 2. The kernel size (plus the dtb) cannot exceed 3.00MiB in size.
|
|
|
|
# 3. You can use 'zImage', but not a raw 'Image' packed with lzma.
|
|
|
|
# 4. The kernel command line from uboot is harcoded to boot with
|
|
|
|
# rootfs either in mtd11 or mtd13.
|
|
|
|
$(call Device/FitzImage)
|
|
|
|
DEVICE_VENDOR := Linksys
|
|
|
|
DEVICE_MODEL := EA6350
|
|
|
|
DEVICE_VARIANT := v3
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
KERNEL_SIZE := 3072k
|
|
|
|
IMAGE_SIZE := 37888k
|
|
|
|
UBINIZE_OPTS := -E 5
|
|
|
|
IMAGES += factory.bin
|
|
|
|
IMAGE/factory.bin := append-kernel | append-uImage-fakehdr filesystem | pad-to $$$$(KERNEL_SIZE) | append-ubi | linksys-image type=EA6350v3
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += linksys_ea6350v3
|
|
|
|
|
|
|
|
define Device/linksys_ea8300
|
|
|
|
$(call Device/FitzImage)
|
|
|
|
DEVICE_VENDOR := Linksys
|
|
|
|
DEVICE_MODEL := EA8300
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
KERNEL_SIZE := 3072k
|
|
|
|
IMAGE_SIZE := 87040k
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
UBINIZE_OPTS := -E 5 # EOD marks to "hide" factory sig at EOF
|
|
|
|
IMAGES += factory.bin
|
|
|
|
IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | linksys-image type=EA8300
|
2021-05-25 13:26:06 +00:00
|
|
|
DEVICE_PACKAGES := ath10k-firmware-qca9888-ct ipq-wifi-linksys_ea8300 kmod-usb-ledtrig-usbport
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += linksys_ea8300
|
|
|
|
|
|
|
|
define Device/linksys_mr8300
|
|
|
|
$(call Device/FitzImage)
|
|
|
|
DEVICE_VENDOR := Linksys
|
|
|
|
DEVICE_MODEL := MR8300
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
KERNEL_SIZE := 3072k
|
|
|
|
IMAGE_SIZE := 87040k
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
UBINIZE_OPTS := -E 5 # EOD marks to "hide" factory sig at EOF
|
|
|
|
IMAGES += factory.bin
|
|
|
|
IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | linksys-image type=MR8300
|
2022-05-13 20:25:36 +00:00
|
|
|
DEVICE_PACKAGES := ath10k-firmware-qca9888-ct kmod-usb-ledtrig-usbport
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += linksys_mr8300
|
|
|
|
|
2021-06-09 20:35:46 +00:00
|
|
|
define Device/linksys_whw01-v1
|
|
|
|
$(call Device/FitzImage)
|
|
|
|
DEVICE_VENDOR := Linksys
|
|
|
|
DEVICE_MODEL := WHW01
|
|
|
|
DEVICE_VARIANT := v1
|
|
|
|
KERNEL_SIZE := 6144k
|
|
|
|
IMAGE_SIZE := 28704512 # 28032k minus linksys signature (256-bytes).
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
UBINIZE_OPTS := -E 5 # EOD marks to "hide" factory sig at EOF
|
|
|
|
IMAGES += factory.bin
|
|
|
|
IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | \
|
|
|
|
append-ubi | linksys-image type=WHW01 | pad-to $$$$(PAGESIZE) | \
|
|
|
|
check-size
|
|
|
|
DEVICE_PACKAGES := uboot-envtools kmod-leds-pca963x
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += linksys_whw01-v1
|
|
|
|
|
2021-01-17 05:54:04 +00:00
|
|
|
define Device/luma_wrtq-329acn
|
|
|
|
$(call Device/FitImage)
|
|
|
|
DEVICE_VENDOR := Luma Home
|
|
|
|
DEVICE_MODEL := WRTQ-329ACN
|
|
|
|
SOC := qcom-ipq4018
|
2022-05-13 20:25:36 +00:00
|
|
|
DEVICE_PACKAGES := kmod-ath3k kmod-eeprom-at24 kmod-i2c-gpio
|
2021-01-17 05:54:04 +00:00
|
|
|
IMAGE_SIZE := 76632k
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += luma_wrtq-329acn
|
|
|
|
|
|
|
|
define Device/meraki_mr33
|
|
|
|
$(call Device/FitImage)
|
|
|
|
DEVICE_VENDOR := Cisco Meraki
|
|
|
|
DEVICE_MODEL := MR33
|
|
|
|
SOC := qcom-ipq4029
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
DEVICE_PACKAGES := -swconfig ath10k-firmware-qca9887-ct
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += meraki_mr33
|
|
|
|
|
2022-06-14 09:08:22 +00:00
|
|
|
define Device/meraki_mr74
|
|
|
|
$(call Device/FitImage)
|
|
|
|
DEVICE_VENDOR := Cisco Meraki
|
|
|
|
DEVICE_MODEL := MR74
|
|
|
|
SOC := qcom-ipq4029
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
DEVICE_PACKAGES := -swconfig ath10k-firmware-qca9887-ct
|
|
|
|
DEVICE_DTS_CONFIG := config@3
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += meraki_mr74
|
|
|
|
|
2021-01-17 05:54:04 +00:00
|
|
|
define Device/mobipromo_cm520-79f
|
|
|
|
$(call Device/FitzImage)
|
|
|
|
$(call Device/UbiFit)
|
|
|
|
DEVICE_VENDOR := MobiPromo
|
|
|
|
DEVICE_MODEL := CM520-79F
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
2022-05-13 20:25:36 +00:00
|
|
|
DEVICE_PACKAGES := kmod-usb-ledtrig-usbport
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += mobipromo_cm520-79f
|
|
|
|
|
|
|
|
define Device/netgear_ex61x0v2
|
|
|
|
$(call Device/DniImage)
|
|
|
|
DEVICE_VENDOR := NETGEAR
|
|
|
|
DEVICE_DTS_CONFIG := config@4
|
|
|
|
NETGEAR_BOARD_ID := EX6150v2series
|
|
|
|
NETGEAR_HW_ID := 29765285+16+0+128+2x2
|
|
|
|
IMAGE_SIZE := 14400k
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Device/netgear_ex6100v2
|
|
|
|
$(call Device/netgear_ex61x0v2)
|
|
|
|
DEVICE_MODEL := EX6100
|
|
|
|
DEVICE_VARIANT := v2
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += netgear_ex6100v2
|
|
|
|
|
|
|
|
define Device/netgear_ex6150v2
|
|
|
|
$(call Device/netgear_ex61x0v2)
|
|
|
|
DEVICE_MODEL := EX6150
|
|
|
|
DEVICE_VARIANT := v2
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += netgear_ex6150v2
|
|
|
|
|
2020-09-02 00:10:16 +00:00
|
|
|
define Device/netgear_orbi
|
|
|
|
$(call Device/DniImage)
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
DEVICE_VENDOR := NETGEAR
|
|
|
|
IMAGE/factory.img := append-kernel | pad-offset 128k 64 | \
|
|
|
|
append-uImage-fakehdr filesystem | pad-to $$$$(KERNEL_SIZE) | \
|
|
|
|
append-rootfs | pad-rootfs | netgear-dni
|
|
|
|
IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-to 64k | \
|
|
|
|
sysupgrade-tar rootfs=$$$$@ | append-metadata
|
|
|
|
DEVICE_PACKAGES := ath10k-firmware-qca9984-ct e2fsprogs kmod-fs-ext4 losetup
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Device/netgear_rbx50
|
|
|
|
$(call Device/netgear_orbi)
|
|
|
|
NETGEAR_HW_ID := 29765352+0+4000+512+2x2+2x2+4x4
|
|
|
|
KERNEL_SIZE := 3932160
|
|
|
|
ROOTFS_SIZE := 32243712
|
|
|
|
IMAGE_SIZE := 36175872
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Device/netgear_rbr50
|
|
|
|
$(call Device/netgear_rbx50)
|
|
|
|
DEVICE_MODEL := RBR50
|
|
|
|
DEVICE_VARIANT := v1
|
|
|
|
NETGEAR_BOARD_ID := RBR50
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += netgear_rbr50
|
|
|
|
|
|
|
|
define Device/netgear_rbs50
|
|
|
|
$(call Device/netgear_rbx50)
|
|
|
|
DEVICE_MODEL := RBS50
|
|
|
|
DEVICE_VARIANT := v1
|
|
|
|
NETGEAR_BOARD_ID := RBS50
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += netgear_rbs50
|
|
|
|
|
|
|
|
define Device/netgear_srx60
|
|
|
|
$(call Device/netgear_orbi)
|
|
|
|
NETGEAR_HW_ID := 29765352+0+4096+512+2x2+2x2+4x4
|
|
|
|
KERNEL_SIZE := 3932160
|
|
|
|
ROOTFS_SIZE := 32243712
|
|
|
|
IMAGE_SIZE := 36175872
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Device/netgear_srr60
|
|
|
|
$(call Device/netgear_srx60)
|
|
|
|
DEVICE_MODEL := SRR60
|
|
|
|
NETGEAR_BOARD_ID := SRR60
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += netgear_srr60
|
|
|
|
|
|
|
|
define Device/netgear_srs60
|
|
|
|
$(call Device/netgear_srx60)
|
|
|
|
DEVICE_MODEL := SRS60
|
|
|
|
NETGEAR_BOARD_ID := SRS60
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += netgear_srs60
|
|
|
|
|
ipq40xx: add netgear wac510 support
This adds support for the Netgear WAC510 Insight Managed Smart Cloud
Wireless Access Point, an indoor dual-band, dual-radio 802.11ac
business-class wireless AP with integrated omnidirectional antennae
and two 10/100/1000 Mbps Ethernet ports.
For more information see:
<https://www.netgear.com/business/wifi/access-points/wac510>
Specifications:
SoC: Qualcomm IPQ4018 (DAKOTA) ARM Quad-Core
RAM: 256 MiB
Flash1: 2 MiB Winbond W25Q16JV SPI-NOR
Flash2: 128 MiB Winbond W25N01GVZEIG SPI-NAND
Ethernet: Built-in IPQ4018 (SoC, QCA8072 PHY), 2x 1000/100/10 port,
WAN port active IEEE 802.3af/at PoE in
Wireless1: Built-in IPQ4018 (SoC) 802.11b/g/n 2x2:2, 3 dBi antennae
Wireless2: Built-in IPQ4018 (SoC) 802.11a/n/ac 2x2:2, 4 dBi antennae
Input: (Optional) Barrel 12 V 2.5 A Power, Reset button SW1
LEDs: Power, Insight, WAN PoE, LAN, 2.4G WLAN, 5G WLAN
Serial: Header J2
1 - 3.3 Volt (Do NOT connect!)
2 - TX
3 - RX
4 - Ground
WARNING: The serial port needs a TTL/RS-232 3.3 volt level converter!
The Serial settings are 115200-8-N-1.
Installation via Stock Web Interface:
BTW: The default factory console/web interface login user/password are
admin/password.
In the web interface navigating to Management - Maintenance - Upgrade -
'Firmware Upgrade' will show you what is currently installed e.g.:
Manage Firmware
Current Firmware Version: V5.0.10.2
Backup Firmware Version: V1.2.5.11
Under 'Upgrade Options' choose Local (alternatively SFTP would be
available) then click/select 'Browse File' on the right side, choose
openwrt-ipq40xx-generic-netgear_wac510-squashfs-nand-factory.tar
and hit the Upgrade button below. After a minute or two your browser
should indicate completion printing 'Firmware update complete.' and
'Rebooting AP...'.
Note that OpenWrt will use the WAN PoE port as actual WAN port
defaulting to DHCP client but NOT allowing LuCI access, use LAN port
defaulting to 192.168.1.1/24 to access LuCI.
Installation via TFTP Requiring Serial U-Boot Access:
Connect to the device's serial port and hit any key to stop autoboot.
Upload and boot the initramfs based OpenWrt image as follows:
(IPQ40xx) # setenv serverip 192.168.1.1
(IPQ40xx) # setenv ipaddr 192.168.1.2
(IPQ40xx) # tftpboot openwrt-ipq40xx-generic-netgear_wac510-initramfs-fit-uImage.itb
(IPQ40xx) # bootm
Note: This only runs OpenWrt from RAM and has not installed anything
to flash as of yet. One may permanently install OpenWrt as follows:
Check the MTD device number of the active partition:
root@OpenWrt:/# dmesg | grep 'set to be root filesystem'
[ 1.010084] mtd: device 9 (rootfs) set to be root filesystem
Upload the factory image ending with .ubi to /tmp (e.g. using scp or
tftp). Then flash the image as follows (substituting the 9 in mtd9
below with whatever number reported above):
root@OpenWrt:/# ubiformat /dev/mtd9 -f /tmp/openwrt-ipq40xx-generic-netgear_wac510-squashfs-nand-factory.ubi
And reboot.
Dual Image Configuration:
The default U-Boot boot command bootipq uses the U-Boot environment
variables primary/secondary to decide which image to boot. E.g.
primary=0, secondary=3800000 uses rootfs while primary=3800000,
secondary=0 uses rootfs_1.
Switching their values changes the active partition. E.g. from within
U-Boot:
(IPQ40xx) # setenv primary 0
(IPQ40xx) # setenv secondary 3800000
(IPQ40xx) # saveenv
Or from a OpenWrt userspace serial/SSH console:
fw_setenv primary 0
fw_setenv secondary 3800000
Note that if you install two copies of OpenWrt then each will have its
independent configuration not like when switching partitions on the
stock firmware.
BTW: The kernel log shows which boot partition is active:
[ 2.439050] ubi0: attached mtd9 (name "rootfs", size 56 MiB)
vs.
[ 2.978785] ubi0: attached mtd10 (name "rootfs_1", size 56 MiB)
Note: After 3 failed boot attempts it automatically switches partition.
Signed-off-by: Robert Marko <robimarko@gmail.com>
Signed-off-by: Marcel Ziswiler <marcel@ziswiler.com>
[squashed netgear-tar commit into main and rename netgear-tar for
now, until it is made generic.]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2020-11-25 13:23:58 +00:00
|
|
|
define Device/netgear_wac510
|
|
|
|
$(call Device/FitImage)
|
|
|
|
$(call Device/UbiFit)
|
|
|
|
DEVICE_VENDOR := Netgear
|
|
|
|
DEVICE_MODEL := WAC510
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
DEVICE_DTS_CONFIG := config@5
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
IMAGES += nand-factory.tar
|
|
|
|
IMAGE/nand-factory.tar := append-ubi | wac5xx-netgear-tar
|
|
|
|
DEVICE_PACKAGES := uboot-envtools
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += netgear_wac510
|
|
|
|
|
2021-01-17 05:54:04 +00:00
|
|
|
define Device/openmesh_a42
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := OpenMesh
|
|
|
|
DEVICE_MODEL := A42
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
DEVICE_DTS_CONFIG := config@om.a42
|
|
|
|
BLOCKSIZE := 64k
|
2022-08-25 18:26:11 +00:00
|
|
|
KERNEL = kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(DEVICE_DTS).dtb | pad-to $$(BLOCKSIZE)
|
2021-01-17 05:54:04 +00:00
|
|
|
IMAGE_SIZE := 15616k
|
|
|
|
IMAGES += factory.bin
|
|
|
|
IMAGE/factory.bin := append-rootfs | pad-rootfs | openmesh-image ce_type=A42
|
|
|
|
IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | sysupgrade-tar rootfs=$$$$@ | append-metadata
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += openmesh_a42
|
|
|
|
|
|
|
|
define Device/openmesh_a62
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := OpenMesh
|
|
|
|
DEVICE_MODEL := A62
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
DEVICE_DTS_CONFIG := config@om.a62
|
|
|
|
BLOCKSIZE := 64k
|
2022-08-25 18:26:11 +00:00
|
|
|
KERNEL = kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(DEVICE_DTS).dtb | pad-to $$(BLOCKSIZE)
|
2021-01-17 05:54:04 +00:00
|
|
|
IMAGE_SIZE := 15552k
|
|
|
|
IMAGES += factory.bin
|
|
|
|
IMAGE/factory.bin := append-rootfs | pad-rootfs | openmesh-image ce_type=A62
|
|
|
|
IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | sysupgrade-tar rootfs=$$$$@ | append-metadata
|
2021-05-25 13:26:06 +00:00
|
|
|
DEVICE_PACKAGES := ath10k-firmware-qca9888-ct
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += openmesh_a62
|
|
|
|
|
ipq40xx: add support for P&W R619AC (aka G-DOCK 2.0)
P&W R619AC is a IPQ4019 Dual-Band AC1200 router.
It is made by P&W (p2w-tech.com) known as P&W R619AC
but marketed and sold more popularly as G-DOCK 2.0.
Specification:
* SOC: Qualcomm Atheros IPQ4019 (717 MHz)
* RAM: 512 MiB
* Flash: 16 MiB (NOR) + 128 MiB (NAND)
* Ethernet: 5 x 10/100/1000 (4 x LAN, 1 x WAN)
* Wireless:
- 2.4 GHz b/g/n Qualcomm Atheros IPQ4019
- 5 GHz a/n/ac Qualcomm Atheros IPQ4019
* USB: 1 x USB 3.0
* LED: 4 x LAN, 1 x WAN, 2 x WiFi, 1 x Power (All Blue LED)
* Input: 1 x reset
* 1 x MicroSD card slot
* Serial console: 115200bps, pinheader J2 on PCB
* Power: DC 12V 2A
* 1 x Unpopulated mPCIe Slot (see below how to connect it)
* 1 x Unpopulated Sim Card Slot
Installation:
1. Access to tty console via UART serial
2. Enter failsafe mode and mount rootfs
<https://openwrt.org/docs/guide-user/troubleshooting/failsafe_and_factory_reset>
3. Edit inittab to enable shell on tty console
`sed -i 's/#ttyM/ttyM/' /etc/inittab`
4. Reboot and upload `-nand-factory.bin` to the router (using wget)
5. Use `sysupgrade` command to install
Another installation method is to hijack the upgrade server domain
of stock firmware, because it's using insecure http.
This commit is based on @LGA1150(at GitHub)'s work
<https://github.com/LGA1150/openwrt/commit/a4932c8d5a275d1fb4297bd20ec03f9270a45d1c>
With some changes:
1. Added `qpic_bam` node in dts. I don't know much about this,
but I observed other dtses have this node.
2. Removed `ldo` node under `sd_0_pinmux`, because `ldo` cause SD card not
working. This fix is from
<https://github.com/coolsnowwolf/lede/commit/51143b4c7571f717afe071db60bbb4db1532cbf2>
3. Removed the 32MB NOR variant.
4. Removed `cd-gpios` in `sdhci` node, because it's reported that it makes
wlan2g led light up.
5. Added ethphy led config in dts.
6. Changed nand partition label from `rootfs` to `ubi`.
About the 128MiB variant: The stock bootloader sets size of nand to 64MiB.
But most of this devices have 128MiB nand. If you want to use all 128MiB,
you need to modify the `MIBIB` data of bootloader. More details can be
found on github:
<https://github.com/openwrt/openwrt/pull/3691#issuecomment-818770060>
For instructions on how to flash the MIBIB partition from u-boot console:
<https://github.com/openwrt/openwrt/pull/3691#issuecomment-819138232>
About the Mini PCIe slot: (from "ygleg")
"The REFCLK signals on the Mini PCIe slot is not connected on
this board out of the box. If you want to use the Mini PCIe slot
on the board, you need to (preferably) solder two 0402 resistors:
R436 (REFCLK+) and R444 (REFCLK-)..."
This and much more information is provoided in the github comment:
<https://github.com/openwrt/openwrt/pull/3691#issuecomment-968054670>
Signed-off-by: Richard Yu <yurichard3839@gmail.com>
Signed-off-by: DENG Qingfang <dqfext@gmail.com>
[Added comment about MIBIB+128 MiB variant. Added commit
message section about pcie slot. Renamed gpio-leds' subnodes
and added color, function+enum properties.]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2021-11-12 03:16:21 +00:00
|
|
|
define Device/p2w_r619ac
|
|
|
|
$(call Device/FitzImage)
|
|
|
|
$(call Device/UbiFit)
|
|
|
|
DEVICE_VENDOR := P&W
|
|
|
|
DEVICE_MODEL := R619AC
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
DEVICE_DTS_CONFIG := config@10
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
DEVICE_PACKAGES := ipq-wifi-p2w_r619ac
|
|
|
|
endef
|
|
|
|
|
|
|
|
define Device/p2w_r619ac-64m
|
|
|
|
$(call Device/p2w_r619ac)
|
|
|
|
DEVICE_VARIANT := 64M NAND
|
|
|
|
IMAGES += nand-factory.bin
|
|
|
|
IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += p2w_r619ac-64m
|
|
|
|
|
|
|
|
define Device/p2w_r619ac-128m
|
|
|
|
$(call Device/p2w_r619ac)
|
|
|
|
DEVICE_VARIANT := 128M NAND
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += p2w_r619ac-128m
|
|
|
|
|
ipq40xx: add support for Pakedge WR-1
Pakedge WR-1 is a dual-band wireless router.
Specification
SoC: Qualcomm Atheros IPQ4018
RAM: 256 MB DDR3
Flash: 32 MB SPI NOR
WIFI: 2.4 GHz 2T2R integrated
5 GHz 2T2R integrated
Ethernet: 5x 10/100/1000 Mbps QCA8075
USB: 1x 2.0
LEDS: 8x (3 GPIO controlled, 5 connected to switch)
Buttons: 1x GPIO controlled
UART: pin header J5
1. 3.3V, 2. GND, 3. TX, 4. RX
baud: 115200, parity: none, flow control: none
Installation
1. Rename initramfs image to:
openwrt-ipq806x-qcom-ipq40xx-ap.dk01.1-c1-fit-uImage-initramfs.itb
and copy it to USB flash drive with FAT32 file system.
2. Connect USB flash drive to the router and apply power while pressing
reset button. Hold the button, on the lates bootloader version, when
Power and WiFi-5 LEDs will start blinking release it. For the older
bootloader holding it for 15 seconds should suffice.
3. Now the router boots the initramfs image, at some point (close to one
minute) the Power LED will start blinking, when stops, router is fully
booted.
4. Connect to one of LAN ports and use SSH to open the shell at
192.168.1.1.
5. ATTENTION! now backup the mtd8 and mtd9 partitions, it's necessary if,
at some point, You want to go back to original firmware. The firmware
provided by manufacturer on its site is encrypted and U-Boot accepts
only decrypted factory images, so there's no way to restore original
firmware.
6. If the backup is prepared, transfer the sysupgrade image to the router
and use 'sysupgrade' command to flash it.
7. After successful flashing router will reboot. At some point the Power
LED will start blinking, wait till it stops, then router is ready for
configuration.
Additional information
U-Boot command line is password protected. Password is unknown.
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2022-09-06 13:32:33 +00:00
|
|
|
define Device/pakedge_wr-1
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := Pakedge
|
|
|
|
DEVICE_MODEL := WR-1
|
|
|
|
DEVICE_DTS_CONFIG := config@ap.dk01.1-c1
|
2022-09-06 13:32:34 +00:00
|
|
|
DEVICE_PACKAGES := ipq-wifi-pakedge_wr-1
|
ipq40xx: add support for Pakedge WR-1
Pakedge WR-1 is a dual-band wireless router.
Specification
SoC: Qualcomm Atheros IPQ4018
RAM: 256 MB DDR3
Flash: 32 MB SPI NOR
WIFI: 2.4 GHz 2T2R integrated
5 GHz 2T2R integrated
Ethernet: 5x 10/100/1000 Mbps QCA8075
USB: 1x 2.0
LEDS: 8x (3 GPIO controlled, 5 connected to switch)
Buttons: 1x GPIO controlled
UART: pin header J5
1. 3.3V, 2. GND, 3. TX, 4. RX
baud: 115200, parity: none, flow control: none
Installation
1. Rename initramfs image to:
openwrt-ipq806x-qcom-ipq40xx-ap.dk01.1-c1-fit-uImage-initramfs.itb
and copy it to USB flash drive with FAT32 file system.
2. Connect USB flash drive to the router and apply power while pressing
reset button. Hold the button, on the lates bootloader version, when
Power and WiFi-5 LEDs will start blinking release it. For the older
bootloader holding it for 15 seconds should suffice.
3. Now the router boots the initramfs image, at some point (close to one
minute) the Power LED will start blinking, when stops, router is fully
booted.
4. Connect to one of LAN ports and use SSH to open the shell at
192.168.1.1.
5. ATTENTION! now backup the mtd8 and mtd9 partitions, it's necessary if,
at some point, You want to go back to original firmware. The firmware
provided by manufacturer on its site is encrypted and U-Boot accepts
only decrypted factory images, so there's no way to restore original
firmware.
6. If the backup is prepared, transfer the sysupgrade image to the router
and use 'sysupgrade' command to flash it.
7. After successful flashing router will reboot. At some point the Power
LED will start blinking, wait till it stops, then router is ready for
configuration.
Additional information
U-Boot command line is password protected. Password is unknown.
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
2022-09-06 13:32:33 +00:00
|
|
|
SOC := qcom-ipq4018
|
|
|
|
BLOCKSIZE := 64k
|
|
|
|
IMAGE_SIZE := 31232k
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | append-metadata
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += pakedge_wr-1
|
|
|
|
|
2021-01-17 05:54:04 +00:00
|
|
|
define Device/plasmacloud_pa1200
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := Plasma Cloud
|
|
|
|
DEVICE_MODEL := PA1200
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
DEVICE_DTS_CONFIG := config@pc.pa1200
|
|
|
|
BLOCKSIZE := 64k
|
2022-08-25 18:26:11 +00:00
|
|
|
KERNEL = kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(DEVICE_DTS).dtb | pad-to $$(BLOCKSIZE)
|
2021-01-17 05:54:04 +00:00
|
|
|
IMAGE_SIZE := 15616k
|
|
|
|
IMAGES += factory.bin
|
|
|
|
IMAGE/factory.bin := append-rootfs | pad-rootfs | openmesh-image ce_type=PA1200
|
|
|
|
IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | sysupgrade-tar rootfs=$$$$@ | append-metadata
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += plasmacloud_pa1200
|
|
|
|
|
|
|
|
define Device/plasmacloud_pa2200
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := Plasma Cloud
|
|
|
|
DEVICE_MODEL := PA2200
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
DEVICE_DTS_CONFIG := config@pc.pa2200
|
|
|
|
BLOCKSIZE := 64k
|
2022-08-25 18:26:11 +00:00
|
|
|
KERNEL = kernel-bin | lzma | fit lzma $$(KDIR)/image-$$(DEVICE_DTS).dtb | pad-to $$(BLOCKSIZE)
|
2021-01-17 05:54:04 +00:00
|
|
|
IMAGE_SIZE := 15552k
|
|
|
|
IMAGES += factory.bin
|
|
|
|
IMAGE/factory.bin := append-rootfs | pad-rootfs | openmesh-image ce_type=PA2200
|
|
|
|
IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | sysupgrade-tar rootfs=$$$$@ | append-metadata
|
2022-05-13 20:25:36 +00:00
|
|
|
DEVICE_PACKAGES := ath10k-firmware-qca9888-ct
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += plasmacloud_pa2200
|
|
|
|
|
|
|
|
define Device/qcom_ap-dk01.1-c1
|
|
|
|
DEVICE_VENDOR := Qualcomm Atheros
|
|
|
|
DEVICE_MODEL := AP-DK01.1
|
|
|
|
DEVICE_VARIANT := C1
|
|
|
|
BOARD_NAME := ap-dk01.1-c1
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
DEVICE_DTS := qcom-ipq4019-ap.dk01.1-c1
|
|
|
|
KERNEL_INSTALL := 1
|
|
|
|
KERNEL_SIZE := 4096k
|
|
|
|
IMAGE_SIZE := 26624k
|
|
|
|
$(call Device/FitImage)
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | append-metadata
|
2021-11-03 15:45:38 +00:00
|
|
|
DEFAULT := n
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += qcom_ap-dk01.1-c1
|
|
|
|
|
|
|
|
define Device/qcom_ap-dk04.1-c1
|
|
|
|
$(call Device/FitImage)
|
|
|
|
$(call Device/UbiFit)
|
|
|
|
DEVICE_VENDOR := Qualcomm Atheros
|
|
|
|
DEVICE_MODEL := AP-DK04.1
|
|
|
|
DEVICE_VARIANT := C1
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
DEVICE_DTS := qcom-ipq4019-ap.dk04.1-c1
|
|
|
|
KERNEL_INSTALL := 1
|
|
|
|
KERNEL_SIZE := 4048k
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
BOARD_NAME := ap-dk04.1-c1
|
2021-11-03 15:45:38 +00:00
|
|
|
DEFAULT := n
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += qcom_ap-dk04.1-c1
|
|
|
|
|
|
|
|
define Device/qxwlan_e2600ac-c1
|
|
|
|
$(call Device/FitImage)
|
|
|
|
DEVICE_VENDOR := Qxwlan
|
|
|
|
DEVICE_MODEL := E2600AC
|
|
|
|
DEVICE_VARIANT := C1
|
|
|
|
BOARD_NAME := e2600ac-c1
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
KERNEL_SIZE := 4096k
|
|
|
|
IMAGE_SIZE := 31232k
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
|
2022-03-25 09:39:07 +00:00
|
|
|
DEVICE_PACKAGES := ipq-wifi-qxwlan_e2600ac-c1
|
2021-11-03 15:45:38 +00:00
|
|
|
DEFAULT := n
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += qxwlan_e2600ac-c1
|
|
|
|
|
|
|
|
define Device/qxwlan_e2600ac-c2
|
|
|
|
$(call Device/FitImage)
|
|
|
|
$(call Device/UbiFit)
|
|
|
|
DEVICE_VENDOR := Qxwlan
|
|
|
|
DEVICE_MODEL := E2600AC
|
|
|
|
DEVICE_VARIANT := C2
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
KERNEL_INSTALL := 1
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
2022-03-25 09:39:07 +00:00
|
|
|
DEVICE_PACKAGES := ipq-wifi-qxwlan_e2600ac-c2
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += qxwlan_e2600ac-c2
|
|
|
|
|
2021-07-15 19:48:11 +00:00
|
|
|
define Device/teltonika_rutx10
|
|
|
|
$(call Device/FitImage)
|
|
|
|
$(call Device/UbiFit)
|
|
|
|
DEVICE_VENDOR := Teltonika
|
|
|
|
DEVICE_MODEL := RUTX10
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
DEVICE_DTS_CONFIG := config@5
|
|
|
|
KERNEL_INSTALL := 1
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
FILESYSTEMS := squashfs
|
|
|
|
IMAGE/nand-factory.ubi := append-ubi | qsdk-ipq-factory-nand | append-rutx-metadata
|
|
|
|
DEVICE_PACKAGES := ipq-wifi-teltonika_rutx kmod-bluetooth
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += teltonika_rutx10
|
|
|
|
|
2022-03-11 03:54:07 +00:00
|
|
|
define Device/tel_x1pro
|
|
|
|
$(call Device/FitImage)
|
|
|
|
DEVICE_VENDOR := Telco
|
|
|
|
DEVICE_MODEL := X1 Pro
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
KERNEL_SIZE := 4096k
|
|
|
|
IMAGE_SIZE := 31232k
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
|
|
|
|
DEVICE_PACKAGES := kmod-usb-net-qmi-wwan kmod-usb-serial-option uqmi
|
2022-03-24 19:34:16 +00:00
|
|
|
DEFAULT := n
|
2022-03-11 03:54:07 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += tel_x1pro
|
|
|
|
|
2021-01-17 05:54:04 +00:00
|
|
|
define Device/unielec_u4019-32m
|
|
|
|
$(call Device/FitImage)
|
|
|
|
DEVICE_VENDOR := Unielec
|
|
|
|
DEVICE_MODEL := U4019
|
|
|
|
DEVICE_VARIANT := 32M
|
|
|
|
BOARD_NAME := u4019-32m
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
KERNEL_SIZE := 4096k
|
|
|
|
IMAGE_SIZE := 31232k
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
|
2021-11-03 15:45:38 +00:00
|
|
|
DEFAULT := n
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += unielec_u4019-32m
|
|
|
|
|
2021-11-23 08:10:14 +00:00
|
|
|
define Device/zte_mf286d
|
|
|
|
$(call Device/FitzImage)
|
|
|
|
DEVICE_VENDOR := ZTE
|
|
|
|
DEVICE_MODEL := MF286D
|
|
|
|
SOC := qcom-ipq4019
|
|
|
|
DEVICE_DTS_CONFIG := config@ap.dk04.1-c1
|
|
|
|
BLOCKSIZE := 128k
|
|
|
|
PAGESIZE := 2048
|
|
|
|
KERNEL_IN_UBI := 1
|
2022-05-13 20:25:36 +00:00
|
|
|
DEVICE_PACKAGES := kmod-usb-net-qmi-wwan kmod-usb-serial-option uqmi
|
2021-11-23 08:10:14 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += zte_mf286d
|
|
|
|
|
2021-01-17 05:54:04 +00:00
|
|
|
define Device/zyxel_nbg6617
|
|
|
|
$(call Device/FitImageLzma)
|
|
|
|
DEVICE_VENDOR := ZyXEL
|
|
|
|
DEVICE_MODEL := NBG6617
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
KERNEL_SIZE := 4096k
|
|
|
|
ROOTFS_SIZE := 24960k
|
|
|
|
RAS_BOARD := NBG6617
|
|
|
|
RAS_ROOTFS_SIZE := 19840k
|
|
|
|
RAS_VERSION := "$(VERSION_DIST) $(REVISION)"
|
|
|
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
|
|
|
|
IMAGES += factory.bin
|
|
|
|
# The ZyXEL firmware allows flashing thru the web-gui only when the rootfs is
|
|
|
|
# at least as large as the one of the initial firmware image (not the current
|
|
|
|
# one on the device). This only applies to the Web-UI, the bootlaoder ignores
|
|
|
|
# this minimum-size. However, the larger image can be flashed both ways.
|
|
|
|
IMAGE/factory.bin := append-rootfs | pad-rootfs | pad-to 64k | check-size $$$$(ROOTFS_SIZE) | zyxel-ras-image separate-kernel
|
|
|
|
IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | check-size $$$$(ROOTFS_SIZE) | sysupgrade-tar rootfs=$$$$@ | append-metadata
|
2021-05-25 13:26:06 +00:00
|
|
|
DEVICE_PACKAGES := kmod-usb-ledtrig-usbport
|
2021-01-17 05:54:04 +00:00
|
|
|
endef
|
|
|
|
TARGET_DEVICES += zyxel_nbg6617
|
|
|
|
|
|
|
|
define Device/zyxel_wre6606
|
|
|
|
$(call Device/FitImage)
|
|
|
|
DEVICE_VENDOR := ZyXEL
|
|
|
|
DEVICE_MODEL := WRE6606
|
|
|
|
DEVICE_DTS_CONFIG := config@4
|
|
|
|
SOC := qcom-ipq4018
|
|
|
|
IMAGE_SIZE := 13184k
|
2021-06-20 16:54:36 +00:00
|
|
|
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | check-size | append-metadata
|
2021-01-17 05:54:04 +00:00
|
|
|
DEVICE_PACKAGES := -kmod-ath10k-ct kmod-ath10k-ct-smallbuffers
|
|
|
|
endef
|
|
|
|
TARGET_DEVICES += zyxel_wre6606
|