mediatek: mt7623: add scatter file for unbricking with SP Flash Tool
[openwrt/staging/hauke.git] / target / linux / mediatek / image / mt7623.mk
1 KERNEL_LOADADDR := 0x80008000
2 DEVICE_VARS += UBOOT_TARGET
3
4 ifneq ($(CONFIG_BANANA_PI_BOOT_PARTSIZE),)
5 BOOTFS_BLOCK_SIZE := 1024
6 BOOTFS_BLOCKS := $(shell echo $$(($(CONFIG_BANANA_PI_BOOT_PARTSIZE)*1024*1024/$(BOOTFS_BLOCK_SIZE))))
7 endif
8
9 define Build/banana-pi-sdcard
10 rm -f $@.boot
11 mkfs.fat -C $@.boot $(BOOTFS_BLOCKS)
12
13 ./gen_banana_pi_img.sh emmc $@.emmc \
14 $(STAGING_DIR_IMAGE)/$(UBOOT_TARGET)-preloader.bin
15
16 mkenvimage -s 0x2000 -o $(STAGING_DIR_IMAGE)/$(UBOOT_TARGET)-uboot.env $(UBOOT_TARGET)-uEnv.txt
17 mcopy -i $@.boot $(STAGING_DIR_IMAGE)/$(UBOOT_TARGET)-uboot.env ::uboot.env
18 mcopy -i $@.boot $(IMAGE_KERNEL) ::uImage
19 mcopy -i $@.boot $@.emmc ::eMMCboot.bin
20 ./gen_banana_pi_img.sh sd $@ \
21 $(STAGING_DIR_IMAGE)/$(UBOOT_TARGET)-preloader.bin \
22 $(STAGING_DIR_IMAGE)/$(UBOOT_TARGET)-u-boot.bin \
23 $@.boot \
24 $(IMAGE_ROOTFS) \
25 $(CONFIG_BANANA_PI_BOOT_PARTSIZE) \
26 $(CONFIG_TARGET_ROOTFS_PARTSIZE)
27 endef
28
29 define Build/preloader
30 $(CP) $(STAGING_DIR_IMAGE)/$1-preloader.bin $@
31 endef
32
33 define Build/scatterfile
34 ./gen_scatterfile.sh $(subst mt,MT,$(SUBTARGET)) "$1" \
35 $(subst -scatter.txt,,$(notdir $@)) "$(DEVICE_TITLE)" > $@
36 endef
37
38 define Device/bpi_bananapi-r2
39 DEVICE_VENDOR := Bpi
40 DEVICE_MODEL := Banana Pi R2
41 DEVICE_DTS := mt7623n-bananapi-bpi-r2
42 DEVICE_PACKAGES := kmod-fs-vfat kmod-nls-cp437 kmod-nls-iso8859-1 kmod-mmc \
43 mkf2fs e2fsprogs kmod-usb-ohci kmod-usb2 kmod-usb3 kmod-ata-ahci-mtk
44 UBOOT_TARGET := mt7623n_bpir2
45 IMAGES := img.gz
46 IMAGE/img.gz := banana-pi-sdcard | gzip | append-metadata
47 ARTIFACT/preloader.bin := preloader $$(UBOOT_TARGET)
48 ARTIFACT/scatter.txt := scatterfile $$(firstword $$(FILESYSTEMS))-$$(firstword $$(IMAGES))
49 ARTIFACTS = preloader.bin scatter.txt
50 SUPPORTED_DEVICES := bananapi,bpi-r2
51 endef
52 TARGET_DEVICES += bpi_bananapi-r2
53
54 define Device/unielec_u7623-02-emmc-512m
55 DEVICE_VENDOR := UniElec
56 DEVICE_MODEL := U7623-02
57 DEVICE_VARIANT := eMMC/512MB RAM
58 DEVICE_DTS := mt7623a-unielec-u7623-02-emmc-512m
59 KERNEL_NAME := zImage
60 KERNEL := kernel-bin | append-dtb | uImage none
61 KERNEL_INITRAMFS := kernel-bin | append-dtb | uImage none
62 DEVICE_PACKAGES := kmod-fs-vfat kmod-nls-cp437 kmod-nls-iso8859-1 kmod-mmc \
63 mkf2fs e2fsprogs kmod-usb-ohci kmod-usb2 kmod-usb3 kmod-ata-ahci-mtk
64 IMAGES := sysupgrade-emmc.bin.gz
65 IMAGE/sysupgrade-emmc.bin.gz := sysupgrade-emmc | gzip | append-metadata
66 endef
67 TARGET_DEVICES += unielec_u7623-02-emmc-512m