2 # Copyright (C) 2012-2015 OpenWrt.org
3 # Copyright (C) 2016-2017 LEDE project
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
9 include $(INCLUDE_DIR
)/image.mk
10 include $(INCLUDE_DIR
)/host.mk
13 FAT32_BLOCKS
=$(shell echo
$$(($(CONFIG_BRCM2708_SD_BOOT_PARTSIZE
)*1024*1024/$(FAT32_BLOCK_SIZE
))))
16 $(CP
) $(LINUX_DIR
)/COPYING
$(KDIR
)/COPYING.linux
20 define Build
/kernel-img
21 perl
$(LINUX_DIR
)/scripts
/mkknlimg
$@
$@.tmp
27 mkfs.fat
-C
$@.boot
$(FAT32_BLOCKS
)
28 mcopy
-i
$@.boot
$(KDIR
)/COPYING.linux
::
29 mcopy
-i
$@.boot
$(KDIR
)/bootcode.bin
::
30 mcopy
-i
$@.boot
$(KDIR
)/LICENCE.broadcom
::
31 mcopy
-i
$@.boot
$(KDIR
)/start.elf
::
32 mcopy
-i
$@.boot
$(KDIR
)/start_cd.elf
::
33 mcopy
-i
$@.boot
$(KDIR
)/fixup.dat
::
34 mcopy
-i
$@.boot
$(KDIR
)/fixup_cd.dat
::
35 mcopy
-i
$@.boot cmdline.txt
::
36 mcopy
-i
$@.boot config.txt
::
37 mcopy
-i
$@.boot
$(IMAGE_KERNEL
) ::$(KERNEL_IMG
)
38 $(foreach dts
,$(shell echo
$(DEVICE_DTS
)),mcopy
-i
$@.boot
$(DTS_DIR
)/$(dts
).dtb
::;)
39 mmd
-i
$@.boot
::/overlays
40 mcopy
-i
$@.boot
$(DTS_DIR
)/overlays
/*.dtbo
::/overlays
/
41 mcopy
-i
$@.boot
$(DTS_DIR
)/overlays
/README
::/overlays
/
44 define Build
/sdcard-img
45 .
/gen_rpi_sdcard_img.sh
$@
$@.boot
$(IMAGE_ROOTFS
) \
46 $(CONFIG_BRCM2708_SD_BOOT_PARTSIZE
) $(CONFIG_TARGET_ROOTFS_PARTSIZE
)
52 KERNEL
:= kernel-bin | kernel-img
53 KERNEL_IMG
:= kernel.img
55 IMAGE
/sdcard.img
:= boot-img | sdcard-img
59 DEVICE_TITLE
:= Raspberry Pi B
/B
+/CM
/Zero
60 DEVICE_DTS
:= bcm2708-rpi-b bcm2708-rpi-b-plus bcm2708-rpi-cm
62 ifeq ($(SUBTARGET
),bcm2708
)
67 DEVICE_TITLE
:= Raspberry Pi
2B
/3B
/3CM
68 DEVICE_DTS
:= bcm2709-rpi-2-b bcm2710-rpi-3-b bcm2710-rpi-cm3
69 DEVICE_PACKAGES
:= brcmfmac-firmware-43430-sdio kmod-brcmfmac wpad-mini
71 ifeq ($(SUBTARGET
),bcm2709
)
72 TARGET_DEVICES
+= rpi-2
76 KERNEL_IMG
:= kernel8.img
77 DEVICE_TITLE
:= Raspberry Pi
3B
(64 bit
)
78 DEVICE_DTS
:= broadcom
/bcm2710-rpi-3-b
79 DEVICE_PACKAGES
:= brcmfmac-firmware-43430-sdio kmod-brcmfmac wpad-mini
81 ifeq ($(SUBTARGET
),bcm2710
)
82 TARGET_DEVICES
+= rpi-3
85 $(eval
$(call BuildImage
))