define Build/MultiImage rm -rf $@.fakerd $@.new dd if=/dev/zero of=$@.fakerd bs=32 count=1 conv=sync -$(STAGING_DIR_HOST)/bin/mkimage -A $(LINUX_KARCH) -O linux -T multi -C $(1) \ -a $(KERNEL_LOADADDR) -e $(KERNEL_ENTRY) -n '$(BOARD_NAME) initramfs' \ -d $@:$@.fakerd:$(KDIR)/image-$(firstword $(DEVICE_DTS)).dtb $@.new mv $@.new $@ rm -rf $@.fakerd endef define Device/aerohive_hiveap-330 DEVICE_VENDOR := Aerohive DEVICE_MODEL := HiveAP-330 DEVICE_ALT0_VENDOR := Aerohive DEVICE_ALT0_MODEL := HiveAP-350 DEVICE_PACKAGES := kmod-tpm-i2c-atmel kmod-hwmon-lm70 BLOCKSIZE := 128k KERNEL := kernel-bin | uImage none KERNEL_INITRAMFS := kernel-bin | MultiImage none KERNEL_SIZE := 16m IMAGES := sysupgrade.bin IMAGE/sysupgrade.bin := append-dtb | pad-to 256k | append-kernel | \ append-rootfs | pad-rootfs | check-size | append-metadata IMAGE_SIZE = 63m DEVICE_COMPAT_VERSION := 2.0 DEVICE_COMPAT_MESSAGE := \n$\ !The partitioning of the HiveAP 330 has changed! \n$\ To upgrade, please take a look at the install instructions over \ at the device's wiki: \n$\ An abridged version for the console is provided here for comfort. \n$\ Run the following script into a shell on the device and retry this \ sysupgrade again: \n$\ cat <<- "EOF" > /tmp/uboot-fix.sh; sh /tmp/uboot-fix.sh \n$\ . /lib/functions.sh \n$\ . /lib/functions/system.sh \n$\ opkg update && opkg install uboot-envtools kmod-mtd-rw || exit 2 \n$\ insmod mtd-rw i_want_a_brick=y || exit 3 \n$\ echo "/dev/mtd$$$$(find_mtd_index u-boot-env) 0x0 0x20000 0x10000" > "/etc/fw_env.config" \n$\ fw_setenv owrt_boot 'setenv bootargs console=ttyS0,9600;bootm 0xEC040000 - 0xEC000000' \n$\ cp "/dev/mtd$$$$(find_mtd_index 'u-boot')" /tmp/uboot \n$\ cp /tmp/uboot /tmp/uboot_patched \n$\ strings -td < /tmp/uboot | grep '^ *[0-9]* *\\(run owrt_boot\\|setenv bootargs\\).*cp\\.l' | \n$\ awk '{print $$$$1}' | \n$\ while read offset; do \n$\ echo -n "run owrt_boot; " | dd of=/tmp/uboot_patched bs=1 seek=$$$${offset} conv=notrunc \n$\ done \n$\ mtd write /tmp/uboot_patched u-boot \n$\ uci set system.@system[0].compat_version=2.0; uci commit; \n$\ EOF \n$\ \n$\ Note that if this fails, you will need to use the serial console \n$\ to re-install OpenWrt. \n$\ Note that after this sysupgrade, the AP will be unavailable for 7 \n$\ minutes to reformat flash." endef TARGET_DEVICES += aerohive_hiveap-330 define Device/enterasys_ws-ap3710i DEVICE_VENDOR := Enterasys DEVICE_MODEL := WS-AP3710i BLOCKSIZE := 128k KERNEL_NAME := simpleImage.ws-ap3710i KERNEL_ENTRY := 0x1000000 KERNEL_LOADADDR := 0x1000000 KERNEL = kernel-bin | uImage none KERNEL_INITRAMFS := kernel-bin | uImage none IMAGES := sysupgrade.bin IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata endef TARGET_DEVICES += enterasys_ws-ap3710i define Device/extreme-networks_ws-ap3825i DEVICE_VENDOR := Extreme Networks DEVICE_MODEL := WS-AP3825i DEVICE_PACKAGES := kmod-ath10k-ct ath10k-firmware-qca988x-ct BLOCKSIZE := 128k KERNEL_NAME := simpleImage.ws-ap3825i KERNEL_ENTRY := 0x1000000 KERNEL_LOADADDR := 0x1000000 KERNEL = kernel-bin | fit none $(KDIR)/image-$$(DEVICE_DTS).dtb IMAGES := sysupgrade.bin IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata endef TARGET_DEVICES += extreme-networks_ws-ap3825i define Device/hpe_msm460 DEVICE_VENDOR := Hewlett-Packard DEVICE_MODEL := MSM460 KERNEL = kernel-bin | lzma | fit lzma $(KDIR)/image-$$(DEVICE_DTS).dtb BLOCKSIZE := 128k PAGESIZE := 2048 SUBPAGESIZE := 2048 KERNEL_IN_UBI := 1 UBINIZE_OPTS := -E 5 IMAGES := factory.bin sysupgrade.bin IMAGE/factory.bin := append-ubi IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata endef TARGET_DEVICES += hpe_msm460 define Device/ocedo_panda DEVICE_VENDOR := OCEDO DEVICE_MODEL := Panda DEVICE_PACKAGES := kmod-rtc-ds1307 KERNEL = kernel-bin | gzip | fit gzip $(KDIR)/image-$$(DEVICE_DTS).dtb PAGESIZE := 2048 SUBPAGESIZE := 512 BLOCKSIZE := 128k IMAGES := fdt.bin sysupgrade.bin IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata IMAGE/fdt.bin := append-dtb endef TARGET_DEVICES += ocedo_panda