ath79: add common definition for Device/tplink-v2
[openwrt/openwrt.git] / target / linux / ath79 / image / common-tp-link.mk
1 DEVICE_VARS += TPLINK_HWID TPLINK_HWREV TPLINK_FLASHLAYOUT TPLINK_HEADER_VERSION
2 DEVICE_VARS += TPLINK_BOARD_ID TPLINK_HWREVADD TPLINK_HVERSION
3
4 define Build/uImageArcher
5 mkimage -A $(LINUX_KARCH) \
6 -O linux -T kernel -C $(1) -a $(KERNEL_LOADADDR) \
7 -e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
8 -n '$(call toupper,$(LINUX_KARCH)) OpenWrt Linux-$(LINUX_VERSION)' -d $@ $@.new
9 @mv $@.new $@
10 endef
11
12 define Device/tplink-v1
13 DEVICE_VENDOR := TP-Link
14 TPLINK_HWREV := 0x1
15 TPLINK_HEADER_VERSION := 1
16 LOADER_TYPE := gz
17 KERNEL := kernel-bin | append-dtb | lzma
18 KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | tplink-v1-header
19 IMAGES += factory.bin
20 IMAGE/sysupgrade.bin := tplink-v1-image sysupgrade | append-metadata
21 IMAGE/factory.bin := tplink-v1-image factory
22 endef
23
24 define Device/tplink-v2
25 DEVICE_VENDOR := TP-Link
26 TPLINK_HWREV := 0x1
27 TPLINK_HWREVADD := 0x0
28 TPLINK_HVERSION := 3
29 KERNEL := kernel-bin | append-dtb | lzma
30 KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | tplink-v2-header
31 IMAGE/sysupgrade.bin := tplink-v2-image -s | append-metadata | \
32 check-size $$$$(IMAGE_SIZE)
33 endef
34
35 define Device/tplink-nolzma
36 $(Device/tplink-v1)
37 LOADER_FLASH_OFFS := 0x22000
38 COMPILE := loader-$(1).gz
39 COMPILE/loader-$(1).gz := loader-okli-compile
40 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49 | \
41 loader-okli $(1) 7680
42 KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | tplink-v1-header
43 endef
44
45 define Device/tplink-4m
46 $(Device/tplink-nolzma)
47 TPLINK_FLASHLAYOUT := 4M
48 IMAGE_SIZE := 3904k
49 endef
50
51 define Device/tplink-4mlzma
52 $(Device/tplink-v1)
53 TPLINK_FLASHLAYOUT := 4Mlzma
54 IMAGE_SIZE := 3904k
55 endef
56
57 define Device/tplink-8m
58 $(Device/tplink-nolzma)
59 TPLINK_FLASHLAYOUT := 8M
60 IMAGE_SIZE := 8000k
61 endef
62
63 define Device/tplink-8mlzma
64 $(Device/tplink-v1)
65 TPLINK_FLASHLAYOUT := 8Mlzma
66 IMAGE_SIZE := 8000k
67 endef
68
69 define Device/tplink-16mlzma
70 $(Device/tplink-v1)
71 TPLINK_FLASHLAYOUT := 16Mlzma
72 IMAGE_SIZE := 16192k
73 endef
74
75 define Device/tplink-safeloader
76 $(Device/tplink-v1)
77 KERNEL := kernel-bin | append-dtb | lzma | tplink-v1-header -O
78 IMAGE/sysupgrade.bin := append-rootfs | tplink-safeloader sysupgrade | \
79 append-metadata | check-size $$$$(IMAGE_SIZE)
80 IMAGE/factory.bin := append-rootfs | tplink-safeloader factory
81 endef
82
83 define Device/tplink-safeloader-uimage
84 $(Device/tplink-safeloader)
85 KERNEL := kernel-bin | append-dtb | lzma | uImageArcher lzma
86 endef
87
88 define Device/tplink-safeloader-okli
89 $(Device/tplink-safeloader)
90 LOADER_TYPE := elf
91 LOADER_FLASH_OFFS := 0x43000
92 COMPILE := loader-$(1).elf
93 COMPILE/loader-$(1).elf := loader-okli-compile
94 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49 | \
95 loader-okli $(1) 12288
96 endef