9cdcdf9e9572e47ec102cb72cbf455bfc8052648
[openwrt/openwrt.git] / target / linux / ath25 / image / Makefile
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # Copyright (C) 2006-2010 OpenWrt.org
4
5 include $(TOPDIR)/rules.mk
6 include $(INCLUDE_DIR)/image.mk
7
8 define Build/mkfwimage
9 $(STAGING_DIR_HOST)/bin/mkfwimage \
10 -B $(1).$(VERSION_DIST).$(REVISION) \
11 -k $(IMAGE_KERNEL) \
12 -r $(IMAGE_ROOTFS) \
13 -o $@.new && \
14 mv $@.new $@
15 endef
16
17 define Build/combined-image
18 -sh $(TOPDIR)/scripts/combined-image.sh \
19 "$(IMAGE_KERNEL)" \
20 "$(IMAGE_ROOTFS)" \
21 "$@.new" && \
22 mv $@.new $@
23 endef
24
25 define Build/mkmylofw
26 $(STAGING_DIR_HOST)/bin/mkmylofw -B $(1) \
27 -p0x020000:0x130000:ah:0x80041000:linux:$(IMAGE_KERNEL) \
28 -p0x150000:0x2a0000:::rootfs:$(IMAGE_ROOTFS) \
29 $@.new && \
30 mv $@.new $@
31 endef
32
33 define Build/gzip-kernel
34 gzip -9n -c $@ > $@.gz
35 dd if=$@.gz of=$@ bs=65536 conv=sync
36 endef
37
38 define Build/lzma-kernel
39 $(STAGING_DIR_HOST)/bin/lzma e $@ $@.l7
40 dd if=$@.l7 of=$@ bs=65536 conv=sync
41 endef
42
43 define Build/copy-kernel
44 rm -f $@ $@.elf
45 cp $< $@
46 cp $<.elf $@.elf
47 endef
48
49 define Build/elf-kernel
50 cp $(IMAGE_KERNEL).elf $@
51 endef
52
53
54 define Device/Default
55 PROFILES = Default $$(DEVICE_NAME)
56 KERNEL := copy-kernel | lzma-kernel
57 KERNEL_INITRAMFS = kernel-bin
58 KERNEL_INITRAMFS_NAME := vmlinux-initramfs.elf
59 KERNEL_INITRAMFS_SUFFIX := -kernel.elf
60 IMAGES := sysupgrade.bin
61 FILESYSTEMS := squashfs
62 endef
63
64 define Device/generic
65 DEVICE_VENDOR := Atheros
66 DEVICE_MODEL := Generic AR2xxx board
67 IMAGES := kernel.lzma kernel.elf kernel.gz rootfs.bin sysupgrade.bin
68 IMAGE/kernel.gz := elf-kernel | gzip-kernel
69 IMAGE/kernel.elf := elf-kernel
70 IMAGE/kernel.lzma := elf-kernel | lzma-kernel
71 IMAGE/rootfs.bin := append-rootfs | pad-rootfs | pad-to 128k
72 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | combined-image
73 DEVICE_IMG_NAME = $$(DEVICE_IMG_PREFIX)-$$(if $$(findstring kernel,$$(2)),,$$(1)-)$$(2)
74 endef
75 TARGET_DEVICES += generic
76
77 define Device/ubnt_picostation-2
78 DEVICE_VENDOR := Ubiquiti
79 DEVICE_MODEL := Picostation 2 (XS2-8)
80 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkfwimage XS2-8 -v XS2.ar2316
81 endef
82 TARGET_DEVICES += ubnt_picostation-2
83
84 define Device/ubnt_nanostation-2
85 DEVICE_VENDOR := Ubiquiti
86 DEVICE_MODEL := Nanostation 2 (XS2)
87 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkfwimage XS2 -v XS2.ar2316
88 DEFAULT := n
89 endef
90 TARGET_DEVICES += ubnt_nanostation-2
91
92 define Device/ubnt_nanostation-5
93 DEVICE_VENDOR := Ubiquiti
94 DEVICE_MODEL := Nanostation 5 (XS5)
95 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkfwimage XS5 -v XS5.ar2313
96 DEFAULT := n
97 endef
98 TARGET_DEVICES += ubnt_nanostation-5
99
100 define Device/compex_np25g
101 DEVICE_VENDOR := Compex
102 DEVICE_MODEL := NP25G
103 KERNEL := kernel-bin | gzip-kernel
104 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkmylofw np25g
105 BROKEN := y
106 endef
107 TARGET_DEVICES += compex_np25g
108
109 define Device/compex_wpe53g
110 DEVICE_VENDOR := Compex
111 DEVICE_MODEL := WPE53G
112 KERNEL := kernel-bin | gzip-kernel
113 IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | pad-to 128k | mkmylofw wpe53g
114 BROKEN := y
115 endef
116 TARGET_DEVICES += compex_wpe53g
117
118 $(eval $(call BuildImage))