1 # Copyright (c) 2014 The Linux Foundation. All rights reserved.
3 include $(TOPDIR
)/rules.mk
4 include $(INCLUDE_DIR
)/image.mk
6 UBIFS_OPTS
= -m
2048 -e
124KiB
-c
4096 -U
-F
7 UBINIZE_OPTS
= -m
2048 -p
128KiB
9 KERNEL_LOADADDR
:= 0x42208000
12 $(CP
) $(LINUX_DIR
)/vmlinux
$(KDIR
)/$(IMG_PREFIX
)-vmlinux.elf
13 mkimage
-A arm
-O linux
-T filesystem
-C none \
14 -a
$(KERNEL_LOADADDR
) -e
$(KERNEL_LOADADDR
) \
15 -n
'ARM OpenWrt fakeroot' \
16 -s
$(KDIR_TMP
)/root.dummy-uImage.tmp
17 echo
-ne
'\xff' > $(KDIR_TMP
)/root.dummy
18 cat
$(KDIR_TMP
)/root.dummy
$(KDIR_TMP
)/root.dummy-uImage.tmp
> $(KDIR
)/root.dummy
21 define Image
/BuildKernel
22 $(CP
) $(KDIR
)/$(IMG_PREFIX
)-vmlinux.elf
$(BIN_DIR
)
25 define Image
/Build
/squashfs
26 cp
$(KDIR
)/root.squashfs
$(KDIR
)/root.squashfs-raw
27 $(call prepare_generic_squashfs
,$(KDIR
)/root.squashfs
)
31 $(call Image
/Build
/$(1),$(1))
32 dd if
=$(KDIR
)/root.
$(1) of
=$(BIN_DIR
)/$(IMG_PREFIX
)-$(1)-root.img bs
=2k conv
=sync
35 define Build
/append-file
41 KERNEL_DEPENDS
= $$(wildcard $(DTS_DIR
)/$$(DEVICE_DTS
).dts
)
42 KERNEL_INITRAMFS_PREFIX
:= $$(IMG_PREFIX
)-$(1)-initramfs
44 KERNEL_PREFIX
:= $$(IMAGE_PREFIX
)
49 DEVICE_VARS
+= DEVICE_DTS KERNEL_IN_UBI BOARD_NAME
51 define Device
/LegacyImage
52 KERNEL_SUFFIX
:= -uImage
53 KERNEL
= kernel-bin | append-dtb | uImage none
57 define Device
/FitImage
58 KERNEL_SUFFIX
:= -fit-uImage.itb
59 KERNEL
= kernel-bin | gzip | fit gzip
$$(DTS_DIR
)/$$(DEVICE_DTS
).dtb
65 IMAGES
:= nand-factory.ubi nand-sysupgrade.
tar
66 IMAGE
/nand-factory.ubi
:= append-ubi
67 IMAGE
/nand-sysupgrade.
tar := sysupgrade-nand
70 define Device
/DniImage
71 PROFILES
+= $$(DEVICE_NAME
)
72 FILESYSTEMS
:= squashfs
73 KERNEL_SUFFIX
:= -uImage
74 KERNEL_INITRAMFS
:= kernel-bin | append-dtb | uImage none
75 KERNEL
= kernel-bin | append-dtb | pad-to
$$$$(($$(KERNEL_SIZE
)-2*64-1)) | uImage none | append-file
$(KDIR
)/root.dummy
79 IMAGES
:= factory.img sysupgrade.
tar
80 IMAGE
/factory.img
:= append-kernel | append-ubi | netgear-dni
81 IMAGE
/sysupgrade.
tar = sysupgrade-nand
83 DEVICE_VARS
+= KERNEL_SIZE NETGEAR_BOARD_ID NETGEAR_HW_ID DEVICE_BLOCK_SIZE DEVICE_PAGE_SIZE
85 define Device
/TpSafeImage
86 PROFILES
+= $$(DEVICE_NAME
)
87 FILESYSTEMS
:= squashfs
88 KERNEL_SUFFIX
:= -uImage
89 KERNEL
= kernel-bin | append-dtb | uImage none
92 IMAGES
:= factory.bin sysupgrade.bin
93 IMAGE
/factory.bin
:= append-rootfs | tplink-safeloader factory
94 IMAGE
/sysupgrade.bin
:= append-rootfs | tplink-safeloader sysupgrade
96 DEVICE_VARS
+= TPLINK_BOARD_NAME
99 $(call Device
/FitImage
)
100 $(call Device
/UbiFit
)
101 DEVICE_DTS
:= qcom-ipq8064-ap148
105 DEVICE_TITLE
:= Qualcomm AP148
106 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
109 define Device
/AP148-legacy
110 $(call Device
/LegacyImage
)
111 $(call Device
/UbiFit
)
112 DEVICE_DTS
:= qcom-ipq8064-ap148
116 DEVICE_TITLE
:= Qualcomm AP148
(legacy
)
117 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
121 $(call Device
/TpSafeImage
)
122 DEVICE_DTS
:= qcom-ipq8064-c2600
126 TPLINK_BOARD_NAME
:= C2600
127 DEVICE_TITLE
:= TP-Link Archer C2600
128 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
132 $(call Device
/DniImage
)
133 DEVICE_DTS
:= qcom-ipq8064-d7800
134 KERNEL_SIZE
:= 2097152
135 NETGEAR_BOARD_ID
:= D7800
136 NETGEAR_HW_ID
:= 29764958+0+128+512+4x4
+4x4
140 DEVICE_TITLE
:= Netgear Nighthawk X4 D7800
141 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
145 $(call Device
/FitImage
)
146 DEVICE_DTS
:= qcom-ipq8064-db149
149 DEVICE_TITLE
:= Qualcomm DB149
150 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
154 $(call Device
/LegacyImage
)
155 DEVICE_DTS
:= qcom-ipq8064-ea8500
158 KERNEL_SIZE
:= 3145728
159 FILESYSTEMS
:= squashfs
160 KERNEL
= kernel-bin | append-dtb | uImage none | append-file
$(KDIR
)/root.dummy
161 PROFILES
+= $$(DEVICE_NAME
)
163 IMAGES
:= factory.bin sysupgrade.
tar
164 IMAGE
/factory.bin
:= append-kernel
3145728 | append-ubi
165 IMAGE
/sysupgrade.
tar := sysupgrade-nand
166 DEVICE_VARS
+= DEVICE_DTS KERNEL_SIZE PAGESIZE BLOCKSIZE SUBPAGESIZE
167 DEVICE_TITLE
:= Linksys EA8500
168 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
172 $(call Device
/DniImage
)
173 DEVICE_DTS
:= qcom-ipq8064-r7500
174 KERNEL_SIZE
:= 2097152
175 NETGEAR_BOARD_ID
:= R7500
176 NETGEAR_HW_ID
:= 29764841+0+128+256+3x3
+4x4
180 DEVICE_TITLE
:= Netgear Nighthawk X4 R7500
181 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
185 $(call Device
/DniImage
)
186 DEVICE_DTS
:= qcom-ipq8064-r7800
187 KERNEL_SIZE
:= 2097152
188 NETGEAR_BOARD_ID
:= R7800
189 NETGEAR_HW_ID
:= 29764958+0+128+512+4x4
+4x4
+cascade
193 DEVICE_TITLE
:= Netgear Nighthawk X4S R7800
194 DEVICE_PACKAGES
:= ath10k-firmware-qca9984
197 TARGET_DEVICES
+= AP148 AP148-legacy C2600 D7800 DB149 EA8500 R7500 R7800
199 $(eval
$(call BuildImage
))