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-dtb
36 cat
$(DTS_DIR
)/$(DEVICE_DTS
).dtb
>> $@
39 define Build
/append-file
45 KERNEL_DEPENDS
= $$(wildcard $(DTS_DIR
)/$$(DEVICE_DTS
).dts
)
46 KERNEL_INITRAMFS_PREFIX
:= $$(IMG_PREFIX
)-$(1)-initramfs
48 KERNEL_PREFIX
:= $$(IMAGE_PREFIX
)
53 DEVICE_VARS
+= DEVICE_DTS KERNEL_IN_UBI BOARD_NAME
55 define Device
/LegacyImage
56 KERNEL_SUFFIX
:= -uImage
57 KERNEL
= kernel-bin | append-dtb | uImage none
61 define Device
/FitImage
62 KERNEL_SUFFIX
:= -fit-uImage.itb
63 KERNEL
= kernel-bin | gzip | fit gzip
$$(DTS_DIR
)/$$(DEVICE_DTS
).dtb
69 IMAGES
:= nand-factory.ubi nand-sysupgrade.
tar
70 IMAGE
/nand-factory.ubi
:= append-ubi
71 IMAGE
/nand-sysupgrade.
tar := sysupgrade-nand
74 define Device
/DniImage
75 PROFILES
+= $$(DEVICE_NAME
)
76 FILESYSTEMS
:= squashfs
77 KERNEL_SUFFIX
:= -uImage
78 KERNEL_INITRAMFS
:= kernel-bin | append-dtb | uImage none
79 KERNEL
= kernel-bin | append-dtb | pad-to
$$$$(($$(KERNEL_SIZE
)-2*64-1)) | uImage none | append-file
$(KDIR
)/root.dummy
83 IMAGES
:= factory.img sysupgrade.
tar
84 IMAGE
/factory.img
:= append-kernel | append-ubi | netgear-dni
85 IMAGE
/sysupgrade.
tar = sysupgrade-nand
87 DEVICE_VARS
+= KERNEL_SIZE NETGEAR_BOARD_ID NETGEAR_HW_ID DEVICE_BLOCK_SIZE DEVICE_PAGE_SIZE
89 define Device
/TpSafeImage
90 PROFILES
+= $$(DEVICE_NAME
)
91 FILESYSTEMS
:= squashfs
92 KERNEL_SUFFIX
:= -uImage
93 KERNEL
= kernel-bin | append-dtb | uImage none
96 IMAGES
:= factory.bin sysupgrade.bin
97 IMAGE
/factory.bin
:= append-rootfs | tplink-safeloader factory
98 IMAGE
/sysupgrade.bin
:= append-rootfs | tplink-safeloader sysupgrade
100 DEVICE_VARS
+= TPLINK_BOARD_NAME
103 $(call Device
/FitImage
)
104 $(call Device
/UbiFit
)
105 DEVICE_DTS
:= qcom-ipq8064-ap148
109 DEVICE_TITLE
:= Qualcom AP148
110 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
113 define Device
/AP148-legacy
114 $(call Device
/LegacyImage
)
115 $(call Device
/UbiFit
)
116 DEVICE_DTS
:= qcom-ipq8064-ap148
120 DEVICE_TITLE
:= Qualcom AP148
(legacy
)
121 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
125 $(call Device
/TpSafeImage
)
126 DEVICE_DTS
:= qcom-ipq8064-c2600
130 TPLINK_BOARD_NAME
:= C2600
131 DEVICE_TITLE
:= TP-Link Archer C2600
132 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
136 $(call Device
/DniImage
)
137 DEVICE_DTS
:= qcom-ipq8064-d7800
138 KERNEL_SIZE
:= 2097152
139 NETGEAR_BOARD_ID
:= D7800
140 NETGEAR_HW_ID
:= 29764958+0+128+512+4x4
+4x4
144 DEVICE_TITLE
:= Netgear Nighthawk X4 D7800
145 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
149 $(call Device
/FitImage
)
150 DEVICE_DTS
:= qcom-ipq8064-db149
153 DEVICE_TITLE
:= Qualcom DB149
154 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
158 $(call Device
/LegacyImage
)
159 DEVICE_DTS
:= qcom-ipq8064-ea8500
162 KERNEL_SIZE
:= 3145728
163 FILESYSTEMS
:= squashfs
164 KERNEL
= kernel-bin | append-dtb | uImage none | append-file
$(KDIR
)/root.dummy
165 PROFILES
+= $$(DEVICE_NAME
)
167 IMAGES
:= factory.bin sysupgrade.
tar
168 IMAGE
/factory.bin
:= append-kernel
3145728 | append-ubi
169 IMAGE
/sysupgrade.
tar := sysupgrade-nand
170 DEVICE_VARS
+= DEVICE_DTS KERNEL_SIZE PAGESIZE BLOCKSIZE SUBPAGESIZE
171 DEVICE_TITLE
:= Linksys EA8500
172 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
176 $(call Device
/DniImage
)
177 DEVICE_DTS
:= qcom-ipq8064-r7500
178 KERNEL_SIZE
:= 2097152
179 NETGEAR_BOARD_ID
:= R7500
180 NETGEAR_HW_ID
:= 29764841+0+128+256+3x3
+4x4
184 DEVICE_TITLE
:= Netgear Nighthawk X4 R7500
185 DEVICE_PACKAGES
:= ath10k-firmware-qca99x0
189 $(call Device
/DniImage
)
190 DEVICE_DTS
:= qcom-ipq8064-r7800
191 KERNEL_SIZE
:= 2097152
192 NETGEAR_BOARD_ID
:= R7800
193 NETGEAR_HW_ID
:= 29764958+0+128+512+4x4
+4x4
+cascade
197 DEVICE_TITLE
:= Netgear Nighthawk X4S R7800
198 DEVICE_PACKAGES
:= ath10k-firmware-qca9984
201 TARGET_DEVICES
+= AP148 AP148-legacy C2600 D7800 DB149 EA8500 R7500 R7800
203 $(eval
$(call BuildImage
))