1 # Copyright (c) 2014 The Linux Foundation. All rights reserved.
3 include $(TOPDIR)/rules.mk
4 include $(INCLUDE_DIR)/image.mk
6 define Build/buffalo-rootfs-cksum
8 echo -ne "\x$$(od -A n -t u1 $@ | tr -s ' ' '\n' | \
9 $(STAGING_DIR_HOST)/bin/awk '{s+=$$0}END{printf "%x", 255-s%256}')"; \
15 KERNEL_DEPENDS = $$(wildcard $(DTS_DIR)/$$(DEVICE_DTS).dts)
16 KERNEL_INITRAMFS_PREFIX := $$(IMG_PREFIX)-$(1)-initramfs
17 KERNEL_PREFIX := $$(IMAGE_PREFIX)
18 KERNEL_LOADADDR = 0x42208000
19 SUPPORTED_DEVICES := $(subst _,$(comma),$(1))
20 IMAGE/sysupgrade.bin = sysupgrade-tar | append-metadata
21 IMAGE/sysupgrade.bin/squashfs :=
24 define Device/LegacyImage
25 KERNEL_SUFFIX := -uImage
26 KERNEL = kernel-bin | append-dtb | uImage none
30 define Device/FitImage
31 KERNEL_SUFFIX := -fit-uImage.itb
32 KERNEL = kernel-bin | gzip | fit gzip $$(DTS_DIR)/$$(DEVICE_DTS).dtb
36 define Device/FitImageLzma
37 KERNEL_SUFFIX := -fit-uImage.itb
38 KERNEL = kernel-bin | lzma | fit lzma $$(DTS_DIR)/$$(DEVICE_DTS).dtb
44 IMAGES := nand-factory.bin nand-sysupgrade.bin
45 IMAGE/nand-factory.bin := append-ubi
46 IMAGE/nand-sysupgrade.bin := sysupgrade-tar | append-metadata
49 define Device/DniImage
50 KERNEL_SUFFIX := -uImage
51 KERNEL = kernel-bin | append-dtb | uImage none
56 IMAGES := factory.img sysupgrade.bin
57 IMAGE/factory.img := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-uImage-fakehdr filesystem | pad-to $$$$(KERNEL_SIZE) | append-ubi | netgear-dni
58 IMAGE/sysupgrade.bin := append-kernel | pad-offset $$$$(BLOCKSIZE) 64 | append-uImage-fakehdr filesystem | sysupgrade-tar kernel=$$$$@ | append-metadata
60 DEVICE_VARS += NETGEAR_BOARD_ID NETGEAR_HW_ID
62 define Device/TpSafeImage
63 KERNEL_SUFFIX := -uImage
64 KERNEL = kernel-bin | append-dtb | uImage none
67 IMAGES := factory.bin sysupgrade.bin
68 IMAGE/factory.bin := append-rootfs | tplink-safeloader factory
69 IMAGE/sysupgrade.bin := append-rootfs | tplink-safeloader sysupgrade | append-metadata
71 DEVICE_VARS += TPLINK_BOARD_ID
73 define Device/ZyXELImage
74 KERNEL_SUFFIX := -uImage
75 KERNEL = kernel-bin | append-dtb | uImage none | pad-to $${KERNEL_SIZE}
77 IMAGES := factory.bin sysupgrade.bin
78 IMAGE/factory.bin := append-rootfs | pad-rootfs | pad-to $$$$(BLOCKSIZE) | zyxel-ras-image separate-kernel
79 IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-to $$$${BLOCKSIZE} | sysupgrade-tar rootfs=$$$$@ | append-metadata
82 define Device/buffalo_wxr-2533dhp
83 $(call Device/LegacyImage)
84 DEVICE_DTS := qcom-ipq8064-wxr-2533dhp
85 DEVICE_TITLE := Buffalo WXR-2533DHP
90 IMAGES := sysupgrade.bin
91 IMAGE/sysupgrade.bin := append-rootfs | buffalo-rootfs-cksum | \
92 sysupgrade-tar rootfs=$$$$@ | append-metadata
93 DEVICE_PACKAGES := ath10k-firmware-qca99x0-ct
95 TARGET_DEVICES += buffalo_wxr-2533dhp
97 define Device/compex_wpq864
98 $(call Device/FitImage)
102 DEVICE_DTS := qcom-ipq8064-wpq864
103 DEVICE_TITLE := Compex WPQ864
104 DEVICE_PACKAGES := kmod-gpio-beeper
106 TARGET_DEVICES += compex_wpq864
108 define Device/linksys_ea8500
109 $(call Device/LegacyImage)
110 DEVICE_DTS := qcom-ipq8064-ea8500
114 KERNEL = kernel-bin | append-dtb | uImage none | append-uImage-fakehdr filesystem
116 SUPPORTED_DEVICES += ea8500
118 IMAGES := factory.bin sysupgrade.bin
119 IMAGE/factory.bin := append-kernel | pad-to $$$${KERNEL_SIZE} | append-ubi
120 DEVICE_TITLE := Linksys EA8500
121 DEVICE_PACKAGES := ath10k-firmware-qca99x0-ct
123 TARGET_DEVICES += linksys_ea8500
125 define Device/nec_wg2600hp
126 $(call Device/LegacyImage)
127 DEVICE_DTS := qcom-ipq8064-wg2600hp
129 BOARD_NAME := wg2600hp
130 DEVICE_TITLE := NEC Aterm WG2600HP
131 IMAGES := sysupgrade.bin
132 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
133 DEVICE_PACKAGES := ath10k-firmware-qca99x0-ct
135 TARGET_DEVICES += nec_wg2600hp
137 define Device/netgear_d7800
138 $(call Device/DniImage)
139 DEVICE_DTS := qcom-ipq8064-d7800
141 NETGEAR_BOARD_ID := D7800
142 NETGEAR_HW_ID := 29764958+0+128+512+4x4+4x4
146 SUPPORTED_DEVICES += d7800
147 DEVICE_TITLE := Netgear Nighthawk X4 D7800
148 DEVICE_PACKAGES := ath10k-firmware-qca99x0-ct
150 TARGET_DEVICES += netgear_d7800
152 define Device/netgear_r7500
153 $(call Device/DniImage)
154 DEVICE_DTS := qcom-ipq8064-r7500
156 NETGEAR_BOARD_ID := R7500
157 NETGEAR_HW_ID := 29764841+0+128+256+3x3+4x4
161 SUPPORTED_DEVICES += r7500
162 DEVICE_TITLE := Netgear Nighthawk X4 R7500
163 DEVICE_PACKAGES := ath10k-firmware-qca988x-ct
165 TARGET_DEVICES += netgear_r7500
167 define Device/netgear_r7500v2
168 $(call Device/DniImage)
169 DEVICE_DTS := qcom-ipq8064-r7500v2
171 NETGEAR_BOARD_ID := R7500v2
172 NETGEAR_HW_ID := 29764958+0+128+512+3x3+4x4
175 BOARD_NAME := r7500v2
176 SUPPORTED_DEVICES += r7500v2
177 DEVICE_TITLE := Netgear Nighthawk X4 R7500v2
178 DEVICE_PACKAGES := ath10k-firmware-qca99x0-ct ath10k-firmware-qca988x-ct
180 TARGET_DEVICES += netgear_r7500v2
182 define Device/netgear_r7800
183 $(call Device/DniImage)
184 DEVICE_DTS := qcom-ipq8065-r7800
186 NETGEAR_BOARD_ID := R7800
187 NETGEAR_HW_ID := 29764958+0+128+512+4x4+4x4+cascade
191 SUPPORTED_DEVICES += r7800
192 DEVICE_TITLE := Netgear Nighthawk X4S R7800
193 DEVICE_PACKAGES := ath10k-firmware-qca9984-ct
195 TARGET_DEVICES += netgear_r7800
197 define Device/qcom_ipq8064-ap148
198 $(call Device/FitImage)
199 $(call Device/UbiFit)
200 DEVICE_DTS := qcom-ipq8064-ap148
205 SUPPORTED_DEVICES += ap148
206 DEVICE_TITLE := Qualcomm AP148
207 DEVICE_PACKAGES := ath10k-firmware-qca99x0-ct
209 TARGET_DEVICES += qcom_ipq8064-ap148
211 define Device/qcom_ipq8064-ap148-legacy
212 $(call Device/LegacyImage)
213 $(call Device/UbiFit)
214 DEVICE_DTS := qcom-ipq8064-ap148
218 SUPPORTED_DEVICES := qcom,ipq8064-ap148 ap148
219 DEVICE_TITLE := Qualcomm AP148 (legacy)
220 DEVICE_PACKAGES := ath10k-firmware-qca99x0-ct
222 TARGET_DEVICES += qcom_ipq8064-ap148-legacy
224 define Device/qcom_ipq8064-ap161
225 $(call Device/FitImage)
226 $(call Device/UbiFit)
227 DEVICE_DTS := qcom-ipq8064-ap161
232 DEVICE_TITLE := Qualcomm AP161
233 DEVICE_PACKAGES := ath10k-firmware-qca99x0-ct
235 TARGET_DEVICES += qcom_ipq8064-ap161
237 define Device/qcom_ipq8064-db149
238 $(call Device/FitImage)
239 DEVICE_DTS := qcom-ipq8064-db149
242 DEVICE_TITLE := Qualcomm DB149
243 DEVICE_PACKAGES := ath10k-firmware-qca99x0-ct
245 TARGET_DEVICES += qcom_ipq8064-db149
247 define Device/tplink_c2600
248 $(call Device/TpSafeImage)
249 DEVICE_DTS := qcom-ipq8064-c2600
253 SUPPORTED_DEVICES += c2600
254 TPLINK_BOARD_ID := C2600
255 DEVICE_TITLE := TP-Link Archer C2600
256 DEVICE_PACKAGES := ath10k-firmware-qca99x0-ct
258 TARGET_DEVICES += tplink_c2600
260 define Device/tplink_vr2600v
261 KERNEL_SUFFIX := -uImage
262 KERNEL = kernel-bin | append-dtb | uImage none
263 KERNEL_NAME := zImage
265 DEVICE_DTS := qcom-ipq8064-vr2600v
268 BOARD_NAME := vr2600v
269 SUPPORTED_DEVICES += vr2600v
270 DEVICE_TITLE := TP-Link Archer VR2600v
271 DEVICE_PACKAGES := ath10k-firmware-qca99x0-ct
272 IMAGES := sysupgrade.bin
273 IMAGE/sysupgrade.bin := pad-extra 512 | append-kernel | pad-to $$$${KERNEL_SIZE} | append-rootfs | pad-rootfs | append-metadata
275 TARGET_DEVICES += tplink_vr2600v
277 define Device/zyxel_nbg6817
278 DEVICE_DTS := qcom-ipq8065-nbg6817
281 BOARD_NAME := nbg6817
283 RAS_ROOTFS_SIZE := 20934k
284 RAS_VERSION := "V1.99(OWRT.9999)C0"
285 SUPPORTED_DEVICES += nbg6817
286 DEVICE_TITLE := ZyXEL NBG6817
287 DEVICE_PACKAGES := ath10k-firmware-qca9984-ct e2fsprogs kmod-fs-ext4 losetup
288 $(call Device/ZyXELImage)
290 TARGET_DEVICES += zyxel_nbg6817
292 $(eval $(call BuildImage))