mpc85xx: fix address config for ws-ap3825i
[openwrt/openwrt.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 define Build/loader-common
53 rm -rf $@.src
54 $(MAKE) -C lzma-loader \
55 PKG_BUILD_DIR="$@.src" \
56 TARGET_DIR="$(dir $@)" LOADER_NAME="$(notdir $@)" \
57 BOARD="$(BOARDNAME)" PLATFORM="lantiq" \
58 LZMA_TEXT_START=0x82000000 \
59 LOADADDR=0x80002000 \
60 $(1) compile loader.bin
61 mv "$@.bin" "$@"
62 rm -rf $@.src
63 endef
64
65 define Build/loader-kernel
66 $(call Build/loader-common,LOADER_DATA="$@")
67 endef
68
69 define Build/loader-okli-compile
70 $(call Build/loader-common, \
71 FLASH_START=0x10000000 \
72 FLASH_OFFS=$(LOADER_FLASH_OFFS) \
73 FLASH_MAX=0x0 \
74 )
75 endef
76
77 define Build/prepend-loader-okli
78 cat "$(KDIR)/loader-$(word 1,$(1)).bin" "$@" >> "$@.new"
79 mv "$@.new" "$@"
80 endef
81
82 DEVICE_VARS += SIGNATURE MAGIC CRC32_POLY LOADER_FLASH_OFFS
83
84 DTS_DIR := $(DTS_DIR)/lantiq
85
86 # Shared device definition: applies to every defined device
87 define Device/Default
88 PROFILES = Default
89 COMPILE :=
90 KERNEL_DEPENDS = $$(wildcard $(DTS_DIR)/$$(DEVICE_DTS).dts)
91 KERNEL_INITRAMFS_NAME = $$(KERNEL_NAME)-initramfs
92 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma
93 KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | uImage lzma
94 FILESYSTEMS := squashfs
95 SOC := $(DEFAULT_SOC)
96 DEVICE_DTS = $$(SOC)_$(1)
97 IMAGES := sysupgrade.bin
98 IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | check-size | append-metadata
99 endef
100
101 define Device/NAND/xway
102 BLOCKSIZE := 16k
103 PAGESIZE := 512
104 SUBPAGESIZE := 256
105 FILESYSTEMS += ubifs
106 endef
107
108 define Device/NAND/xrx200
109 BLOCKSIZE := 128k
110 PAGESIZE := 2048
111 SUBPAGESIZE := 512
112 FILESYSTEMS += ubifs
113 endef
114
115 define Device/NAND
116 $(Device/NAND/$(SUBTARGET))
117 IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
118 endef
119
120 define Device/lantiqBrnImage
121 KERNEL := kernel-bin | append-dtb | mkbrncmdline | lzma-no-dict
122 IMAGES := factory.bin
123 IMAGE/factory.bin := mkbrnimg | check-size
124 endef
125
126 define Device/lantiqFullImage
127 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma | pad-offset 4 0
128 IMAGES := sysupgrade.bin fullimage.bin
129 IMAGE/fullimage.bin := fullimage | check-size
130 endef
131
132 define Device/AVM
133 DEVICE_VENDOR := AVM
134 KERNEL := kernel-bin | append-dtb | lzma | eva-image
135 KERNEL_INITRAMFS := $$(KERNEL)
136 IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | append-avm-fakeroot | \
137 append-rootfs | pad-rootfs | check-size | append-metadata
138 endef
139
140 define Device/AVM_preloader
141 DEVICE_VENDOR := AVM
142 COMPILE := loader-$(1).bin
143 COMPILE/loader-$(1).bin := loader-okli-compile | lzma | eva-image | \
144 pad-to 64k | append-avm-fakeroot | pad-to 4k
145 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49 | \
146 prepend-loader-okli $(1)
147 KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | eva-image
148 endef
149
150 ifeq ($(SUBTARGET),ase)
151 DEFAULT_SOC := amazonse
152 include amazonse.mk
153 endif
154
155 ifeq ($(SUBTARGET),xway_legacy)
156 DEFAULT_SOC := danube
157 include xway_legacy.mk
158 endif
159
160 ifeq ($(SUBTARGET),xway)
161 include danube.mk
162 include ar9.mk
163 endif
164
165 ifeq ($(SUBTARGET),xrx200)
166 DEFAULT_SOC := vr9
167 include tp-link.mk
168 include vr9.mk
169 endif
170
171 ifeq ($(SUBTARGET),falcon)
172 DEFAULT_SOC := falcon
173 include falcon.mk
174 endif
175
176 $(eval $(call BuildImage))