Makefile 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. #
  2. # This is free software, licensed under the GNU General Public License v2.
  3. # See /LICENSE for more information.
  4. #
  5. include $(TOPDIR)/rules.mk
  6. include $(INCLUDE_DIR)/image.mk
  7. DEVICE_VARS += TPLINK_HWID TPLINK_HWREV TPLINK_FLASHLAYOUT TPLINK_HEADER_VERSION
  8. define Build/copy-file
  9. cat "$(1)" > "$@"
  10. endef
  11. define Device/Default
  12. PROFILES := Default
  13. DEVICE_DTS := $(lastword $(subst _, ,$(1)))
  14. KERNEL_DEPENDS = $$(wildcard $(DTS_DIR)/$$(DEVICE_DTS).dts)
  15. KERNEL_ENTRY := 0x00000000
  16. KERNEL_LOADADDR := 0x00000000
  17. KERNEL := kernel-bin
  18. SUPPORTED_DEVICES := $(subst _,$(comma),$(1))
  19. endef
  20. ifeq ($(SUBTARGET),generic)
  21. define Device/tplink_tl-wdr4900-v1
  22. DEVICE_VENDOR := TP-Link
  23. DEVICE_MODEL := TL-WDR4900
  24. DEVICE_VARIANT := v1
  25. TPLINK_HEADER_VERSION := 1
  26. TPLINK_HWID := 0x49000001
  27. TPLINK_HWREV := 1
  28. TPLINK_FLASHLAYOUT := 16Mppc
  29. KERNEL_SIZE := 2684k
  30. KERNEL_NAME := simpleImage.tl-wdr4900-v1
  31. KERNEL_INITRAMFS :=
  32. KERNEL := kernel-bin | uImage none
  33. KERNEL_ENTRY := 0x1000000
  34. KERNEL_LOADADDR := 0x1000000
  35. SUPPORTED_DEVICES += tl-wdr4900-v1
  36. ARTIFACTS := fdt.bin
  37. ARTIFACT/fdt.bin := append-dtb
  38. IMAGES := fdt.bin factory.bin sysupgrade.bin
  39. IMAGE/sysupgrade.bin := tplink-v1-image sysupgrade | append-metadata
  40. IMAGE/factory.bin := tplink-v1-image factory
  41. endef
  42. TARGET_DEVICES += tplink_tl-wdr4900-v1
  43. define Device/sophos_red-15w-rev1
  44. DEVICE_VENDOR := Sophos
  45. DEVICE_MODEL := RED 15w
  46. DEVICE_VARIANT := Rev.1
  47. # Original firmware uses a dedicated DTB-partition.
  48. # The bootloader however supports FIT-images.
  49. KERNEL = kernel-bin | gzip | fit gzip $(KDIR)/image-$$(DEVICE_DTS).dtb
  50. IMAGES := sysupgrade.bin
  51. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  52. endef
  53. TARGET_DEVICES += sophos_red-15w-rev1
  54. endif
  55. ifeq ($(SUBTARGET),p1020)
  56. define Device/aerohive_hiveap-330
  57. DEVICE_VENDOR := Aerohive
  58. DEVICE_MODEL := HiveAP-330
  59. DEVICE_PACKAGES := kmod-tpm-i2c-atmel
  60. BLOCKSIZE := 128k
  61. KERNEL := kernel-bin | gzip | uImage gzip
  62. KERNEL_SIZE := 8m
  63. KERNEL_INITRAMFS := copy-file $(KDIR)/vmlinux-initramfs | uImage none
  64. IMAGES := fdt.bin sysupgrade.bin
  65. IMAGE/fdt.bin := append-dtb
  66. IMAGE/sysupgrade.bin := append-dtb | pad-to 256k | check-size 256k | \
  67. append-uImage-fakehdr ramdisk | pad-to 256k | check-size 512k | \
  68. append-rootfs | pad-rootfs $$(BLOCKSIZE) | pad-to 41216k | check-size 41216k | \
  69. append-kernel | append-metadata
  70. endef
  71. TARGET_DEVICES += aerohive_hiveap-330
  72. define Device/enterasys_ws-ap3710i
  73. DEVICE_VENDOR := Enterasys
  74. DEVICE_MODEL := WS-AP3710i
  75. BLOCKSIZE := 128k
  76. KERNEL = kernel-bin | lzma | fit lzma $(KDIR)/image-$$(DEVICE_DTS).dtb
  77. IMAGES := sysupgrade.bin
  78. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
  79. endef
  80. TARGET_DEVICES += enterasys_ws-ap3710i
  81. define Device/ocedo_panda
  82. DEVICE_VENDOR := OCEDO
  83. DEVICE_MODEL := Panda
  84. DEVICE_PACKAGES := kmod-rtc-ds1307 uboot-envtools
  85. KERNEL = kernel-bin | gzip | fit gzip $(KDIR)/image-$$(DEVICE_DTS).dtb
  86. PAGESIZE := 2048
  87. SUBPAGESIZE := 512
  88. BLOCKSIZE := 128k
  89. IMAGES := fdt.bin sysupgrade.bin
  90. IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
  91. IMAGE/fdt.bin := append-dtb
  92. endef
  93. TARGET_DEVICES += ocedo_panda
  94. endif
  95. ifeq ($(SUBTARGET),p2020)
  96. define Device/freescale_p2020rdb
  97. DEVICE_VENDOR := Freescale
  98. DEVICE_MODEL := P2020RDB
  99. DEVICE_DTS_DIR := $(DTS_DIR)/fsl
  100. DEVICE_PACKAGES := kmod-hwmon-lm90 kmod-rtc-ds1307 \
  101. kmod-gpio-pca953x kmod-eeprom-at24
  102. BLOCKSIZE := 128k
  103. KERNEL := kernel-bin | gzip | \
  104. fit gzip $$(KDIR)/image-$$(firstword $$(DEVICE_DTS)).dtb
  105. SUPPORTED_DEVICES := fsl,P2020RDB
  106. IMAGES := sysupgrade.bin
  107. IMAGE/sysupgrade.bin := append-kernel | append-rootfs | \
  108. pad-rootfs $$(BLOCKSIZE) | append-metadata
  109. endef
  110. TARGET_DEVICES += freescale_p2020rdb
  111. endif
  112. $(eval $(call BuildImage))