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
)
15 $(CP
) .
/ubinize.cfg
$(KDIR
)
18 define trx2ndpart
/serial
19 -a
1024 -f
$(KDIR
)/root.squashfs
-a
0x10000 -A
$(KDIR
)/fs_mark
22 # $(1): dts filename (also used for the firmware file).
23 # $(2): flash type (not used).
24 define Image
/Build
/initramfs
/DTB
25 $(call Image
/Build
/DTB
,zImage-initramfs
,$(1))
26 $(STAGING_DIR_HOST
)/bin
/trx
-o
$(KDIR
)/$(IMG_PREFIX
)-$(1)-initramfs.trx \
27 -f
$(KDIR
)/zImage-initramfs-
$(1).lzma
30 # $(1): dts filename (also used for the firmware file).
32 define Image
/Build
/squashfs
/DTB
33 $(call Image
/Build
/DTB
,zImage
,$(1))
34 $(STAGING_DIR_HOST
)/bin
/trx
-o
$(KDIR
)/$(IMG_PREFIX
)-$(1)-squashfs.trx \
35 -f
$(KDIR
)/zImage-
$(1).lzma \
36 $(call trx2ndpart
/$(2))
39 # $(1): kernel (Linux) image file
40 # $(2): dts filename (also used for the firmware file).
41 define Image
/Build
/DTB
42 rm -f
$(KDIR
)/$(1)-$(2).lzma
43 rm -f
$(KDIR
)/$(1)-$(2).dts
44 cat
$(KDIR
)/$(1) $(DTS_DIR
)/$(2).dtb
> $(KDIR
)/$(1)-$(2).dts
;
45 $(STAGING_DIR_HOST
)/bin
/lzma e
$(KDIR
)/$(1)-$(2).dts
$(KDIR
)/$(1)-$(2).lzma
-d16
48 # $(1): filesystem type (e.g. squashfs, initramfs).
49 # $(2): dts filename (also used for the firmware file).
51 # $(4): device specific magic.
52 define Image
/Build
/AsusTrx
53 $(call Image
/Build
/$(1)/DTB
,$(2),$(3))
54 # TODO: Put magic in TRX file
55 cp
$(KDIR
)/$(IMG_PREFIX
)-$(2)-$(1).trx
$(BIN_DIR
)/
58 # $(1): filesystem type (e.g. squashfs, initramfs).
59 # $(2): dts filename (also used for the firmware file).
61 define Image
/Build
/Trx
62 $(call Image
/Build
/$(1)/DTB
,$(2),$(3))
63 cp
$(KDIR
)/$(IMG_PREFIX
)-$(2)-$(1).trx
$(BIN_DIR
)/
66 # $(1): filesystem type (e.g. squashfs, initramfs).
67 # $(2): dts filename (also used for the firmware file).
69 # $(4): board_id (device specific magic).
71 define Image
/Build
/Chk
72 $(call Image
/Build
/$(1)/DTB
,$(2),$(3))
73 $(STAGING_DIR_HOST
)/bin
/mkchkimg
-o
$(BIN_DIR
)/$(IMG_PREFIX
)-$(2)-$(1).chk
-k
$(KDIR
)/$(IMG_PREFIX
)-$(2)-$(1).trx
-b
$(4) -r
$(5)
76 # $(1): filesystem type (e.g. squashfs, initramfs).
78 ( cd
$(KDIR
); $(STAGING_DIR_HOST
)/bin
/ubinize
-p
128KiB
-m
2048 -o
$(KDIR
)/root-block-0x20000-min-0x800.ubi ubinize.cfg
)
80 $(call Image
/Build
/AsusTrx
,$(1),bcm47081-asus-rt-n18u
,serial
,RT-N18U
)
82 $(call Image
/Build
/Chk
,$(1),bcm4708-netgear-r6250
,serial
,U12H245T00_NETGEAR
,1)
83 $(call Image
/Build
/Chk
,$(1),bcm4708-netgear-r6300-v2
,serial
,U12H240T00_NETGEAR
,1)
85 $(call Image
/Build
/Trx
,$(1),bcm4708-buffalo-wzr-1750dhp
,serial
)
86 $(call Image
/Build
/Trx
,$(1),bcm47081-buffalo-wzr-600dhp2
,serial
)
89 define Image
/Build
/Initramfs
90 $(call Image
/Build
,initramfs
)
93 $(eval
$(call BuildImage
))