81a557df4871397c5ac58534c9140d6a853b5f56
[openwrt/staging/dedeckeh.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_HWID := 0x0
15 TPLINK_HWREV := 0x1
16 TPLINK_HEADER_VERSION := 1
17 LOADER_TYPE := gz
18 KERNEL := kernel-bin | append-dtb | lzma
19 KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | tplink-v1-header
20 IMAGES += factory.bin
21 IMAGE/sysupgrade.bin := tplink-v1-image sysupgrade | append-metadata
22 IMAGE/factory.bin := tplink-v1-image factory
23 endef
24
25 define Device/tplink-v2
26 DEVICE_VENDOR := TP-Link
27 TPLINK_HWID := 0x0
28 TPLINK_HWREV := 0x1
29 TPLINK_HWREVADD := 0x0
30 TPLINK_HVERSION := 3
31 KERNEL := kernel-bin | append-dtb | lzma
32 KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | tplink-v2-header
33 IMAGE/sysupgrade.bin := tplink-v2-image -s | append-metadata | \
34 check-size
35 endef
36
37 define Device/tplink-nolzma
38 $(Device/tplink-v1)
39 LOADER_FLASH_OFFS := 0x22000
40 COMPILE := loader-$(1).gz
41 COMPILE/loader-$(1).gz := loader-okli-compile
42 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49 | \
43 loader-okli $(1) 7680
44 KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | tplink-v1-header
45 endef
46
47 define Device/tplink-4m
48 $(Device/tplink-nolzma)
49 TPLINK_FLASHLAYOUT := 4M
50 IMAGE_SIZE := 3904k
51 endef
52
53 define Device/tplink-4mlzma
54 $(Device/tplink-v1)
55 TPLINK_FLASHLAYOUT := 4Mlzma
56 IMAGE_SIZE := 3904k
57 endef
58
59 define Device/tplink-8m
60 $(Device/tplink-nolzma)
61 TPLINK_FLASHLAYOUT := 8M
62 IMAGE_SIZE := 8000k
63 endef
64
65 define Device/tplink-8mlzma
66 $(Device/tplink-v1)
67 TPLINK_FLASHLAYOUT := 8Mlzma
68 IMAGE_SIZE := 8000k
69 endef
70
71 define Device/tplink-16mlzma
72 $(Device/tplink-v1)
73 TPLINK_FLASHLAYOUT := 16Mlzma
74 IMAGE_SIZE := 16192k
75 endef
76
77 define Device/tplink-safeloader
78 $(Device/tplink-v1)
79 TPLINK_HWREV := 0x0
80 KERNEL := kernel-bin | append-dtb | lzma | tplink-v1-header -O
81 KERNEL_INITRAMFS := $$(KERNEL)
82 IMAGE/sysupgrade.bin := append-rootfs | tplink-safeloader sysupgrade | \
83 append-metadata | check-size
84 IMAGE/factory.bin := append-rootfs | tplink-safeloader factory
85 endef
86
87 define Device/tplink-safeloader-uimage
88 $(Device/tplink-safeloader)
89 KERNEL := kernel-bin | append-dtb | lzma | uImageArcher lzma
90 KERNEL_INITRAMFS := $$(KERNEL)
91 endef
92
93 define Device/tplink-safeloader-okli
94 $(Device/tplink-safeloader)
95 LOADER_TYPE := elf
96 LOADER_FLASH_OFFS := 0x43000
97 COMPILE := loader-$(1).elf
98 COMPILE/loader-$(1).elf := loader-okli-compile
99 KERNEL := kernel-bin | append-dtb | lzma | uImage lzma -M 0x4f4b4c49 | \
100 loader-okli $(1) 12288
101 KERNEL_INITRAMFS := $$(KERNEL)
102 endef