Makefile 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. #
  2. # Copyright (C) 2023 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. include $(INCLUDE_DIR)/image.mk
  9. FAT32_BLOCK_SIZE=1024
  10. FAT32_BLOCKS=$(shell echo $$(($(CONFIG_D1_SD_BOOT_PARTSIZE)*1024*1024/$(FAT32_BLOCK_SIZE))))
  11. KERNEL_LOADADDR:=0x40200000
  12. define Build/riscv-sdcard
  13. rm -f [email protected] #$(KDIR_TMP)/$(IMG_PREFIX)-$(PROFILE)-boot.img
  14. mkfs.fat [email protected] -C $(FAT32_BLOCKS)
  15. mcopy -i [email protected] $(STAGING_DIR_IMAGE)/$(DEVICE_NAME)-boot.scr ::boot.scr
  16. mcopy -i [email protected] $(DTS_DIR)/$(DEVICE_DTS).dtb ::dtb
  17. mcopy -i [email protected] $(IMAGE_KERNEL) ::Image
  18. ./gen_d1_sdcard_img.sh \
  19. $@ \
  20. [email protected] \
  21. $(IMAGE_ROOTFS) \
  22. $(CONFIG_D1_SD_BOOT_PARTSIZE) \
  23. $(CONFIG_TARGET_ROOTFS_PARTSIZE) \
  24. $(STAGING_DIR_IMAGE)/$(DEVICE_NAME)-u-boot-sunxi-with-spl.bin
  25. endef
  26. define Device/Default
  27. PROFILES := Default
  28. KERNEL_NAME := Image
  29. KERNEL := kernel-bin
  30. IMAGES := sdcard.img.gz
  31. IMAGE/sdcard.img.gz := riscv-sdcard | append-metadata | gzip
  32. endef
  33. define Device/FitImageGzip
  34. KERNEL_SUFFIX := -fit-uImage.itb
  35. KERNEL = kernel-bin | gzip | fit gzip $$(DTS_DIR)/$$(DEVICE_DTS).dtb
  36. KERNEL_NAME := Image
  37. endef
  38. define Device/FitImage
  39. KERNEL_SUFFIX := -fit-uImage.itb
  40. KERNEL = kernel-bin | fit none $$(DTS_DIR)/$$(DEVICE_DTS).dtb
  41. KERNEL_NAME := Image
  42. endef
  43. define Device/dongshan_nezha_stu
  44. $(call Device/Default)
  45. DEVICE_VENDOR := Dongshan
  46. DEVICE_MODEL := Nezha STU devkit
  47. DEVICE_DTS := allwinner/sun20i-d1-dongshan-nezha-stu
  48. UBOOT := dongshan_nezha_stu
  49. endef
  50. TARGET_DEVICES += dongshan_nezha_stu
  51. define Device/lichee_rv_dock
  52. $(call Device/Default)
  53. DEVICE_VENDOR := Sipeed
  54. DEVICE_MODEL := LicheePi RV (dock)
  55. DEVICE_DTS := allwinner/sun20i-d1-lichee-rv-dock
  56. DEVICE_PACKAGES += kmod-rtl8723bs
  57. UBOOT := lichee_rv_dock
  58. endef
  59. TARGET_DEVICES += lichee_rv_dock
  60. define Device/mangopi_mq_pro
  61. $(call Device/Default)
  62. DEVICE_VENDOR := MangoPi
  63. DEVICE_MODEL := MQ Pro
  64. DEVICE_DTS := allwinner/sun20i-d1-mangopi-mq-pro
  65. DEVICE_PACKAGES += kmod-rtl8723bs
  66. UBOOT := mangopi_mq_pro
  67. endef
  68. TARGET_DEVICES += mangopi_mq_pro
  69. define Device/nezha
  70. $(call Device/Default)
  71. DEVICE_VENDOR := Nezha
  72. DEVICE_MODEL := D1
  73. DEVICE_DTS := allwinner/sun20i-d1-nezha
  74. UBOOT := nezha
  75. endef
  76. TARGET_DEVICES += nezha
  77. define Image/Build
  78. $(call Image/Build/$(1),$(1))
  79. endef
  80. $(eval $(call BuildImage))