2 # Copyright (C) 2013 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
7 include $(TOPDIR
)/rules.mk
8 include $(INCLUDE_DIR
)/image.mk
12 echo
-ne
'\xde\xad\xc0\xde' > $(KDIR
)/fs_mark
13 $(call prepare_generic_squashfs
,$(KDIR
)/fs_mark
)
16 define trx2ndpart
/serial
17 -a
1024 -f
$(KDIR
)/root.squashfs
-a
0x10000 -A
$(KDIR
)/fs_mark
20 # $(1): dts filename (also used for the firmware file).
21 # $(2): flash type (not used).
22 define Image
/Build
/initramfs
/DTB
23 $(call Image
/Build
/DTB
,zImage-initramfs
,$(1))
24 $(STAGING_DIR_HOST
)/bin
/trx
-o
$(KDIR
)/$(IMG_PREFIX
)-$(1)-initramfs.trx \
25 -f
$(KDIR
)/zImage-initramfs-
$(1).lzma
28 # $(1): dts filename (also used for the firmware file).
30 define Image
/Build
/squashfs
/DTB
31 $(call Image
/Build
/DTB
,zImage
,$(1))
32 $(STAGING_DIR_HOST
)/bin
/trx
-o
$(KDIR
)/$(IMG_PREFIX
)-$(1)-squashfs.trx \
33 -f
$(KDIR
)/zImage-
$(1).lzma \
34 $(call trx2ndpart
/$(2))
37 # $(1): kernel (Linux) image file
38 # $(2): dts filename (also used for the firmware file).
39 define Image
/Build
/DTB
40 rm -f
$(KDIR
)/$(1)-$(2).lzma
41 rm -f
$(KDIR
)/$(1)-$(2).dts
42 cat
$(KDIR
)/$(1) $(DTS_DIR
)/$(2).dtb
> $(KDIR
)/$(1)-$(2).dts
;
43 $(STAGING_DIR_HOST
)/bin
/lzma e
$(KDIR
)/$(1)-$(2).dts
$(KDIR
)/$(1)-$(2).lzma
-d16
46 # $(1): filesystem type (e.g. squashfs, initramfs).
47 # $(2): dts filename (also used for the firmware file).
49 # $(4): device specific magic.
50 define Image
/Build
/AsusTrx
51 $(call Image
/Build
/$(1)/DTB
,$(2),$(3))
52 # TODO: Put magic in TRX file
53 cp
$(KDIR
)/$(IMG_PREFIX
)-$(2)-$(1).trx
$(BIN_DIR
)/
56 # $(1): filesystem type (e.g. squashfs, initramfs).
57 # $(2): dts filename (also used for the firmware file).
59 define Image
/Build
/Trx
60 $(call Image
/Build
/$(1)/DTB
,$(2),$(3))
61 cp
$(KDIR
)/$(IMG_PREFIX
)-$(2)-$(1).trx
$(BIN_DIR
)/
64 # $(1): filesystem type (e.g. squashfs, initramfs).
65 # $(2): dts filename (also used for the firmware file).
67 # $(4): board_id (device specific magic).
69 define Image
/Build
/Chk
70 $(call Image
/Build
/$(1)/DTB
,$(2),$(3))
71 $(STAGING_DIR_HOST
)/bin
/mkchkimg
-o
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).chk
-k
$(KDIR
)/$(IMG_PREFIX
)-$(2)-$(1).trx
-b
$(4) -r
$(5)
74 # $(1): filesystem type (e.g. squashfs, initramfs).
76 $(call Image
/Build
/AsusTrx
,$(1),bcm47081-asus-rt-n18u
,serial
,RT-N18U
)
78 $(call Image
/Build
/Chk
,$(1),bcm4708-netgear-r6250
,serial
,U12H245T00_NETGEAR
,1)
79 $(call Image
/Build
/Chk
,$(1),bcm4708-netgear-r6300-v2
,serial
,U12H240T00_NETGEAR
,1)
81 $(call Image
/Build
/Trx
,$(1),bcm4708-buffalo-wzr-1750dhp
,serial
)
82 $(call Image
/Build
/Trx
,$(1),bcm47081-buffalo-wzr-600dhp2
,serial
)
85 define Image
/Build
/Initramfs
86 $(call Image
/Build
,initramfs
)
89 $(eval
$(call BuildImage
))