target: use SPDX license identifiers on Makefiles
[openwrt/staging/rmilecki.git] / target / linux / lantiq / image / Makefile
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # Copyright (C) 2010-2016 OpenWrt.org
4
5 # boards missing since devicetree update
6 #EASY50712 ARV3527P
7
8 KERNEL_LOADADDR = 0x80002000
9 KERNEL_ENTRY = 0x80002000
10
11 include $(TOPDIR)/rules.mk
12 include $(INCLUDE_DIR)/image.mk
13
14 ifeq ($(SUBTARGET),xway)
15 UBIFS_OPTS := -m 512 -e 15872 -c 1959
16 else
17 UBIFS_OPTS := -m 2048 -e 126KiB -c 4096
18 endif
19
20 define Build/append-avm-fakeroot
21 cat ./eva.dummy.squashfs >> $@
22 endef
23
24 define Build/dgn3500-sercom-footer
25 $(STAGING_DIR_HOST)/bin/dgn3500sum $@ $(1) $(2)
26 endef
27
28 define Build/mkbrncmdline
29 mkbrncmdline -i $@ -o $@.new BRN-BOOT
30 mv $@.new $@
31 endef
32
33 define Build/mkbrnimg
34 mkbrnimg -s $(SIGNATURE) -m $(MAGIC) -p $(CRC32_POLY) -o $@ $(IMAGE_KERNEL) $(IMAGE_ROOTFS)
35 endef
36
37 define Build/fullimage
38 mkimage -A mips -O linux -C lzma -T filesystem -a 0x00 \
39 -e 0x00 -n '$(VERSION_DIST) RootFS' \
40 -d $(IMAGE_ROOTFS) $(IMAGE_ROOTFS).new
41
42 cat $(IMAGE_KERNEL) $(IMAGE_ROOTFS).new > $@.tmp
43
44 mkimage -A mips -O linux -T multi -a 0x00 -C none \
45 -e 0x00 -n 'OpenWrt fullimage' \
46 -d $@.tmp $@
47
48 rm $(IMAGE_ROOTFS).new
49 rm $@.tmp
50 endef
51
52 DEVICE_VARS += SIGNATURE MAGIC CRC32_POLY
53 DTS_DIR := $(DTS_DIR)/lantiq
54
55 # Shared device definition: applies to every defined device
56 define Device/Default
57 PROFILES = Default
58 KERNEL_DEPENDS = $$(wildcard $(DTS_DIR)/$$(DEVICE_DTS).dts)
59 KERNEL_INITRAMFS_NAME = $$(KERNEL_NAME)-initramfs
60 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma
61 KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | uImage lzma
62 FILESYSTEMS := squashfs
63 SOC := $(DEFAULT_SOC)
64 DEVICE_DTS = $$(SOC)_$(1)
65 IMAGES := sysupgrade.bin
66 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata | check-size
67 endef
68
69 define Device/NAND/xway
70 BLOCKSIZE := 16k
71 PAGESIZE := 512
72 SUBPAGESIZE := 256
73 FILESYSTEMS += ubifs
74 endef
75
76 define Device/NAND/xrx200
77 BLOCKSIZE := 128k
78 PAGESIZE := 2048
79 SUBPAGESIZE := 512
80 FILESYSTEMS += ubifs
81 endef
82
83 define Device/NAND
84 $(Device/NAND/$(SUBTARGET))
85 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
86 endef
87
88 define Device/lantiqBrnImage
89 KERNEL := kernel-bin | append-dtb | mkbrncmdline | lzma-no-dict
90 IMAGES := factory.bin
91 IMAGE/factory.bin := mkbrnimg | check-size
92 endef
93
94 define Device/lantiqFullImage
95 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma | pad-offset 4 0
96 IMAGES := sysupgrade.bin fullimage.bin
97 IMAGE/fullimage.bin := fullimage | check-size
98 endef
99
100 define Device/AVM
101 DEVICE_VENDOR := AVM
102 KERNEL := kernel-bin | append-dtb | lzma | eva-image
103 KERNEL_INITRAMFS := $$(KERNEL)
104 IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | append-avm-fakeroot | \
105 append-rootfs | pad-rootfs | append-metadata | check-size
106 endef
107
108 ifeq ($(SUBTARGET),ase)
109 DEFAULT_SOC := amazonse
110 include amazonse.mk
111 endif
112
113 ifeq ($(SUBTARGET),xway_legacy)
114 DEFAULT_SOC := danube
115 include xway_legacy.mk
116 endif
117
118 ifeq ($(SUBTARGET),xway)
119 include danube.mk
120 include ar9.mk
121 endif
122
123 ifeq ($(SUBTARGET),xrx200)
124 DEFAULT_SOC := vr9
125 include tp-link.mk
126 include vr9.mk
127 endif
128
129 ifeq ($(SUBTARGET),falcon)
130 DEFAULT_SOC := falcon
131 include falcon.mk
132 endif
133
134 $(eval $(call BuildImage))