mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-20 06:08:08 +00:00
a66eee6336
This commit creates the ath79/mikrotik subtarget in order to support MikroTik devices based on Qualcomm Atheros MIPS SoCs. MikroTik devices need a couple of specific features: the split MiNOR firmware MTD format, which is not used by other devices, and the 4k sector erase size on SPI NOR storage, which can not be added to the ath79/generic and ath79/nand subtargets now. Additionally, the commit moves the two MikroTik devices already in the generic and nand subtargets to this new one. Tested on the RB922 board and the wAP AC router. Signed-off-by: Roger Pueyo Centelles <roger.pueyo@guifi.net>
220 lines
6.6 KiB
Makefile
220 lines
6.6 KiB
Makefile
include ./common-netgear.mk # for netgear-uImage
|
|
|
|
# attention: only zlib compression is allowed for the boot fs
|
|
define Build/zyxel-buildkerneljffs
|
|
rm -rf $(KDIR_TMP)/zyxelnbg6716
|
|
mkdir -p $(KDIR_TMP)/zyxelnbg6716/image/boot
|
|
cp $@ $(KDIR_TMP)/zyxelnbg6716/image/boot/vmlinux.lzma.uImage
|
|
$(STAGING_DIR_HOST)/bin/mkfs.jffs2 \
|
|
--big-endian --squash-uids -v -e 128KiB -q -f -n -x lzma -x rtime \
|
|
-o $@ \
|
|
-d $(KDIR_TMP)/zyxelnbg6716/image
|
|
rm -rf $(KDIR_TMP)/zyxelnbg6716
|
|
endef
|
|
|
|
define Build/zyxel-factory
|
|
let \
|
|
maxsize="$(subst k,* 1024,$(RAS_ROOTFS_SIZE))"; \
|
|
let size="$$(stat -c%s $@)"; \
|
|
if [ $$size -lt $$maxsize ]; then \
|
|
$(STAGING_DIR_HOST)/bin/mkrasimage \
|
|
-b $(RAS_BOARD) \
|
|
-v $(RAS_VERSION) \
|
|
-r $@ \
|
|
-s $$maxsize \
|
|
-o $@.new \
|
|
-l 131072 \
|
|
&& mv $@.new $@ ; \
|
|
fi
|
|
endef
|
|
|
|
define Device/aerohive_hiveap-121
|
|
SOC := ar9344
|
|
DEVICE_VENDOR := Aerohive
|
|
DEVICE_MODEL := HiveAP 121
|
|
DEVICE_PACKAGES := kmod-usb2
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
IMAGE_SIZE := 116m
|
|
KERNEL_SIZE := 5120k
|
|
UBINIZE_OPTS := -E 5
|
|
SUPPORTED_DEVICES += hiveap-121
|
|
IMAGES += factory.bin
|
|
IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | \
|
|
check-size $$$$(IMAGE_SIZE)
|
|
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
|
|
endef
|
|
TARGET_DEVICES += aerohive_hiveap-121
|
|
|
|
define Device/domywifi_dw33d
|
|
SOC := qca9558
|
|
DEVICE_VENDOR := DomyWifi
|
|
DEVICE_MODEL := DW33D
|
|
DEVICE_PACKAGES := kmod-usb2 kmod-usb-storage kmod-usb-ledtrig-usbport \
|
|
kmod-ath10k-ct ath10k-firmware-qca988x-ct
|
|
KERNEL_SIZE := 5120k
|
|
IMAGE_SIZE := 98304k
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
UBINIZE_OPTS := -E 5
|
|
IMAGES += factory.bin
|
|
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
|
|
IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | \
|
|
check-size $$$$(IMAGE_SIZE)
|
|
endef
|
|
TARGET_DEVICES += domywifi_dw33d
|
|
|
|
define Device/glinet_gl-ar300m-common-nand
|
|
SOC := qca9531
|
|
DEVICE_VENDOR := GL.iNet
|
|
DEVICE_MODEL := GL-AR300M
|
|
DEVICE_PACKAGES := kmod-usb2
|
|
KERNEL_SIZE := 4096k
|
|
IMAGE_SIZE := 16000k
|
|
PAGESIZE := 2048
|
|
VID_HDR_OFFSET := 2048
|
|
endef
|
|
|
|
define Device/glinet_gl-ar300m-nand
|
|
$(Device/glinet_gl-ar300m-common-nand)
|
|
DEVICE_VARIANT := NAND
|
|
BLOCKSIZE := 128k
|
|
IMAGES += factory.img
|
|
IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi
|
|
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
|
|
SUPPORTED_DEVICES += glinet,gl-ar300m-nor
|
|
endef
|
|
TARGET_DEVICES += glinet_gl-ar300m-nand
|
|
|
|
define Device/glinet_gl-ar300m-nor
|
|
$(Device/glinet_gl-ar300m-common-nand)
|
|
DEVICE_VARIANT := NOR
|
|
BLOCKSIZE := 64k
|
|
SUPPORTED_DEVICES += glinet,gl-ar300m-nand gl-ar300m
|
|
endef
|
|
TARGET_DEVICES += glinet_gl-ar300m-nor
|
|
|
|
define Device/glinet_gl-ar750s-common
|
|
SOC := qca9563
|
|
DEVICE_VENDOR := GL.iNet
|
|
DEVICE_MODEL := GL-AR750S
|
|
DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca9887-ct kmod-usb2 \
|
|
kmod-usb-storage block-mount
|
|
KERNEL_SIZE := 2048k
|
|
IMAGE_SIZE := 16000k
|
|
PAGESIZE := 2048
|
|
VID_HDR_OFFSET := 2048
|
|
endef
|
|
|
|
# NB: The kernel size is intentionally restricted at this time; see commit message
|
|
define Device/glinet_gl-ar750s-nor-nand
|
|
$(Device/glinet_gl-ar750s-common)
|
|
DEVICE_VARIANT := NOR/NAND
|
|
BLOCKSIZE := 128k
|
|
GL_UBOOT_UBI_OFFSET := 2048k
|
|
IMAGES += factory.img
|
|
IMAGE/factory.img := append-kernel | pad-to $$$$(GL_UBOOT_UBI_OFFSET) | \
|
|
append-ubi | check-kernel-size $$$$(GL_UBOOT_UBI_OFFSET)
|
|
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
|
|
SUPPORTED_DEVICES += glinet,gl-ar750s-nor
|
|
endef
|
|
TARGET_DEVICES += glinet_gl-ar750s-nor-nand
|
|
|
|
define Device/glinet_gl-ar750s-nor
|
|
$(Device/glinet_gl-ar750s-common)
|
|
DEVICE_VARIANT := NOR
|
|
BLOCKSIZE := 64k
|
|
SUPPORTED_DEVICES += gl-ar750s glinet,gl-ar750s glinet,gl-ar750s-nor-nand
|
|
endef
|
|
TARGET_DEVICES += glinet_gl-ar750s-nor
|
|
|
|
# fake rootfs is mandatory, pad-offset 129 equals (2 * uimage_header + 0xff)
|
|
define Device/netgear_ath79_nand
|
|
DEVICE_VENDOR := NETGEAR
|
|
DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
|
|
KERNEL_SIZE := 4096k
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
IMAGE_SIZE := 25600k
|
|
KERNEL := kernel-bin | append-dtb | lzma -d20 | \
|
|
pad-offset $$(KERNEL_SIZE) 129 | netgear-uImage lzma | \
|
|
append-string -e '\xff' | \
|
|
append-uImage-fakehdr filesystem $$(NETGEAR_KERNEL_MAGIC)
|
|
KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma -d20 | netgear-uImage lzma
|
|
IMAGES := sysupgrade.bin factory.img
|
|
IMAGE/factory.img := append-kernel | append-ubi | netgear-dni | \
|
|
check-size $$$$(IMAGE_SIZE)
|
|
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata | \
|
|
check-size $$$$(IMAGE_SIZE)
|
|
UBINIZE_OPTS := -E 5
|
|
endef
|
|
|
|
define Device/netgear_wndr3700-v4
|
|
SOC := ar9344
|
|
DEVICE_MODEL := WNDR3700
|
|
DEVICE_VARIANT := v4
|
|
NETGEAR_KERNEL_MAGIC := 0x33373033
|
|
NETGEAR_BOARD_ID := WNDR3700v4
|
|
NETGEAR_HW_ID := 29763948+128+128
|
|
$(Device/netgear_ath79_nand)
|
|
endef
|
|
TARGET_DEVICES += netgear_wndr3700-v4
|
|
|
|
define Device/netgear_wndr4300
|
|
SOC := ar9344
|
|
DEVICE_MODEL := WNDR4300
|
|
NETGEAR_KERNEL_MAGIC := 0x33373033
|
|
NETGEAR_BOARD_ID := WNDR4300
|
|
NETGEAR_HW_ID := 29763948+0+128+128+2x2+3x3
|
|
$(Device/netgear_ath79_nand)
|
|
endef
|
|
TARGET_DEVICES += netgear_wndr4300
|
|
|
|
define Device/netgear_wndr4300-v2
|
|
SOC := qca9563
|
|
DEVICE_MODEL := WNDR4300
|
|
DEVICE_VARIANT := v2
|
|
NETGEAR_KERNEL_MAGIC := 0x27051956
|
|
NETGEAR_BOARD_ID := WNDR4500series
|
|
NETGEAR_HW_ID := 29764821+2+128+128+3x3+3x3+5508012175
|
|
$(Device/netgear_ath79_nand)
|
|
endef
|
|
TARGET_DEVICES += netgear_wndr4300-v2
|
|
|
|
define Device/netgear_wndr4500-v3
|
|
SOC := qca9563
|
|
DEVICE_MODEL := WNDR4500
|
|
DEVICE_VARIANT := v3
|
|
NETGEAR_KERNEL_MAGIC := 0x27051956
|
|
NETGEAR_BOARD_ID := WNDR4500series
|
|
NETGEAR_HW_ID := 29764821+2+128+128+3x3+3x3+5508012173
|
|
$(Device/netgear_ath79_nand)
|
|
endef
|
|
TARGET_DEVICES += netgear_wndr4500-v3
|
|
|
|
define Device/zyxel_nbg6716
|
|
SOC := qca9558
|
|
DEVICE_VENDOR := ZyXEL
|
|
DEVICE_MODEL := NBG6716
|
|
DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport kmod-ath10k-ct \
|
|
ath10k-firmware-qca988x-ct
|
|
RAS_BOARD := NBG6716
|
|
RAS_ROOTFS_SIZE := 29696k
|
|
RAS_VERSION := "OpenWrt Linux-$(LINUX_VERSION)"
|
|
KERNEL_SIZE := 4096k
|
|
BLOCKSIZE := 128k
|
|
PAGESIZE := 2048
|
|
KERNEL := kernel-bin | append-dtb | uImage none | zyxel-buildkerneljffs | \
|
|
check-size 4096k
|
|
IMAGES := sysupgrade.tar sysupgrade-4M-Kernel.bin factory.bin
|
|
IMAGE/sysupgrade.tar/squashfs := append-rootfs | pad-to $$$$(BLOCKSIZE) | \
|
|
sysupgrade-tar rootfs=$$$$@ | append-metadata
|
|
IMAGE/sysupgrade-4M-Kernel.bin/squashfs := append-kernel | \
|
|
pad-to $$$$(KERNEL_SIZE) | append-ubi | pad-to 263192576 | gzip
|
|
IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | \
|
|
zyxel-factory
|
|
UBINIZE_OPTS := -E 5
|
|
endef
|
|
TARGET_DEVICES += zyxel_nbg6716
|
|
DEVICE_VARS += RAS_ROOTFS_SIZE RAS_BOARD RAS_VERSION
|