Makefile 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. include $(TOPDIR)/rules.mk
  3. include $(INCLUDE_DIR)/image.mk
  4. DEVICE_VARS += ASUS_PRODUCTID ASUS_BUILD_NO ASUS_FW_REV ASUS_EXT_NO
  5. DEVICE_VARS += NETGEAR_BOARD_ID NETGEAR_REGION
  6. define Build/bcm4908asus
  7. $(STAGING_DIR_HOST)/bin/bcm4908asus create -i $@ \
  8. -p $(ASUS_PRODUCTID) -b $(ASUS_BUILD_NO) -f $(ASUS_FW_REV) \
  9. -e $(ASUS_EXT_NO)
  10. endef
  11. define Build/bcm4908img
  12. rm -fr $@-bootfs
  13. mkdir -p $@-bootfs
  14. cp -r $(DEVICE_NAME)/* $@-bootfs/
  15. touch $@-bootfs/1-openwrt
  16. cp $(DTS_DIR)/$(firstword $(DEVICE_DTS)).dtb $@-bootfs/94908.dtb
  17. cp $(KDIR)/bcm63xx-cfe/$(subst _,$(comma),$(DEVICE_NAME))/cferam.000 $@-bootfs/
  18. cp $(IMAGE_KERNEL) $@-bootfs/vmlinux.lz
  19. $(STAGING_DIR_HOST)/bin/mkfs.jffs2 --pad=0x800000 --little-endian --squash-uids \
  20. -v -e 128KiB -o [email protected] -d $@-bootfs -m none -n
  21. $(STAGING_DIR_HOST)/bin/bcm4908img create [email protected] -f [email protected] \
  22. -a 0x20000 -f $@
  23. mv [email protected] $@
  24. endef
  25. define Build/bcm4908kernel
  26. $(STAGING_DIR_HOST)/bin/bcm4908kernel -i $@ -o [email protected]
  27. mv [email protected] $@
  28. endef
  29. define Build/bcm4908lzma
  30. $(STAGING_DIR_HOST)/bin/lzma e -lc1 -lp2 -pb2 -d22 $@ [email protected]
  31. mv [email protected] $@
  32. endef
  33. define Device/Default
  34. KERNEL := kernel-bin | bcm4908lzma | bcm4908kernel
  35. KERNEL_DEPENDS = $$(wildcard $(DTS_DIR)/$$(DEVICE_DTS).dts)
  36. KERNEL_INITRAMFS_SUFFIX := .bin
  37. KERNEL_INITRAMFS := kernel-bin | bcm4908lzma | bcm4908kernel
  38. FILESYSTEMS := squashfs
  39. KERNEL_NAME := Image
  40. DEVICE_IMG_NAME = $$(DEVICE_IMG_PREFIX)-$$(1).$$(2)
  41. BLOCKSIZE := 128k
  42. PAGESIZE := 2048
  43. IMAGE/bin := append-ubi | bcm4908img
  44. endef
  45. define Device/asus_gt-ac5300
  46. DEVICE_VENDOR := Asus
  47. DEVICE_MODEL := GT-AC5300
  48. DEVICE_DTS := broadcom/bcm4908/bcm4908-asus-gt-ac5300
  49. IMAGES := bin
  50. IMAGE/bin := append-ubi | bcm4908img | bcm4908asus
  51. ASUS_PRODUCTID := GT-AC5300
  52. ASUS_BUILD_NO := 384
  53. ASUS_FW_REV := 3.0.0.4
  54. ASUS_EXT_NO := 21140
  55. endef
  56. TARGET_DEVICES += asus_gt-ac5300
  57. define Device/netgear_r8000p
  58. DEVICE_VENDOR := Netgear
  59. DEVICE_MODEL := R8000P
  60. DEVICE_DTS := broadcom/bcm4908/bcm4906-netgear-r8000p
  61. IMAGES := bin
  62. IMAGE/chk := append-ubi | bcm4908img | netgear-chk
  63. NETGEAR_BOARD_ID := U12H359T00_NETGEAR
  64. NETGEAR_REGION := 1
  65. endef
  66. TARGET_DEVICES += netgear_r8000p
  67. define Device/tplink_archer-c2300-v1
  68. DEVICE_VENDOR := TP-Link
  69. DEVICE_MODEL := Archer C2300
  70. DEVICE_VARIANT := v1
  71. DEVICE_DTS := broadcom/bcm4908/bcm4906-tplink-archer-c2300-v1
  72. IMAGES := bin
  73. IMAGE/bin := append-ubi | bcm4908img
  74. BROKEN := y
  75. endef
  76. TARGET_DEVICES += tplink_archer-c2300-v1
  77. $(eval $(call BuildImage))