2 # Copyright (C) 2016 Jiang Yutang <jiangyutang1978@gmail.com>
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
10 LS_SD_ROOTFSPART_OFFSET
= 64
11 LS_SD_IMAGE_SIZE
= $(shell echo
$$((($(LS_SD_ROOTFSPART_OFFSET
) + \
12 $(CONFIG_TARGET_ROOTFS_PARTSIZE
)) * 1024 * 1024)))
14 # The limitation of flash sysupgrade.bin is 1MB dtb + 16MB kernel + 32MB rootfs
15 LS_SYSUPGRADE_IMAGE_SIZE
= 49m
21 define Build
/ls-append
22 dd if
=$(STAGING_DIR_IMAGE
)/$(1) >> $@
25 define Build
/ls-append-dtb
26 $(call Image
/BuildDTB
,$(DTS_DIR
)/$(1).dts
,$(DTS_DIR
)/$(1).dtb
)
27 dd if
=$(DTS_DIR
)/$(1).dtb
>> $@
30 define Build
/ls-append-sdhead
31 .
/gen_sdcard_head_img.sh
$(STAGING_DIR_IMAGE
)/$(1)-sdcard-head.img \
32 $(LS_SD_ROOTFSPART_OFFSET
) $(CONFIG_TARGET_ROOTFS_PARTSIZE
)
33 dd if
=$(STAGING_DIR_IMAGE
)/$(1)-sdcard-head.img
>> $@
36 define Build
/traverse-fit
37 .
/mkits-multiple-config.sh
-o
$@.its
-A
$(LINUX_KARCH
) \
38 -v
$(LINUX_VERSION
) -k
$@
-a
$(KERNEL_LOADADDR
) \
39 -e
$(if
$(KERNEL_ENTRY
),$(KERNEL_ENTRY
),$(KERNEL_LOADADDR
)) \
41 -d
$(DEVICE_DTS_DIR
)/freescale
/traverse-ls1043s.dtb \
42 -D
"Traverse_LS1043S" -n
"ls1043s" -a
$(FDT_LOADADDR
) -c
1 \
43 -d
$(DEVICE_DTS_DIR
)/freescale
/traverse-ls1043v.dtb \
44 -D
"Traverse_LS1043V" -n
"ls1043v" -a
$(FDT_LOADADDR
) -c
2
45 PATH
=$(LINUX_DIR
)/scripts
/dtc
:$(PATH
) mkimage
-f
$@.its
$@.new
49 define Device
/fix-sysupgrade
50 DEVICE_COMPAT_VERSION
:= 2.0
51 DEVICE_COMPAT_MESSAGE
:= DTB was added to sysupgrade. Image format is different. \
52 To use sysupgrade You need to change firmware partition in bootargs to
"49m@0xf00000(firmware)" and saveenv. \
53 After that
, You can use
"sysupgrade -F".
56 include $(SUBTARGET
).mk
58 $(eval
$(call BuildImage
))