2
0

Makefile 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. #
  3. # Copyright (C) 2015 OpenWrt.org
  4. include $(TOPDIR)/rules.mk
  5. include $(INCLUDE_DIR)/image.mk
  6. FAT32_BLOCK_SIZE=1024
  7. FAT32_BLOCKS=$(shell echo $$(($(CONFIG_TARGET_KERNEL_PARTSIZE)*1024*1024/$(FAT32_BLOCK_SIZE))))
  8. define Build/zynq-sdcard
  9. rm -f [email protected]
  10. mkfs.fat [email protected] -C $(FAT32_BLOCKS)
  11. mcopy -i [email protected] $(STAGING_DIR_IMAGE)/$(DEVICE_NAME)-boot.bin ::boot.bin
  12. mcopy -i [email protected] $(STAGING_DIR_IMAGE)/$(DEVICE_NAME)-u-boot.img ::u-boot.img
  13. mcopy -i [email protected] $(STAGING_DIR_IMAGE)/$(DEVICE_NAME)-uEnv.txt ::uEnv.txt
  14. mcopy -i [email protected] $(IMAGE_KERNEL) ::fit.itb
  15. ./gen_zynq_sdcard_img.sh $@ \
  16. [email protected] \
  17. $(IMAGE_ROOTFS) \
  18. $(CONFIG_TARGET_KERNEL_PARTSIZE) \
  19. $(CONFIG_TARGET_ROOTFS_PARTSIZE)
  20. rm -f [email protected]
  21. endef
  22. #################################################
  23. # Default and templates
  24. #################################################
  25. define Device/Default
  26. PROFILES := Default
  27. DEVICE_DTS := $(lastword $(subst _, ,$(1)))
  28. KERNEL_DEPENDS = $$(wildcard $(DTS_DIR)/$$(DEVICE_DTS).dts)
  29. KERNEL_INITRAMFS_PREFIX := $$(IMG_PREFIX)-$(1)-initramfs
  30. KERNEL_PREFIX := $$(IMAGE_PREFIX)
  31. KERNEL_LOADADDR := 0x8000
  32. IMAGES := sdcard.img.gz
  33. IMAGE/sdcard.img.gz := zynq-sdcard | gzip
  34. endef
  35. define Device/FitImageGzip
  36. KERNEL_SUFFIX := -fit-uImage.itb
  37. KERNEL = kernel-bin | gzip | fit gzip $$(DTS_DIR)/$$(DEVICE_DTS).dtb
  38. KERNEL_NAME := Image
  39. endef
  40. #################################################
  41. # Devices
  42. #################################################
  43. define Device/avnet_zynq-zed
  44. $(call Device/FitImageGzip)
  45. DEVICE_VENDOR := Avnet
  46. DEVICE_MODEL := ZedBoard
  47. endef
  48. TARGET_DEVICES += avnet_zynq-zed
  49. define Device/digilent_zynq-zybo
  50. $(call Device/FitImageGzip)
  51. DEVICE_VENDOR := Digilent
  52. DEVICE_MODEL := Zybo
  53. endef
  54. TARGET_DEVICES += digilent_zynq-zybo
  55. define Device/digilent_zynq-zybo-z7
  56. $(call Device/FitImageGzip)
  57. DEVICE_VENDOR := Digilent
  58. DEVICE_MODEL := Zybo Z7
  59. endef
  60. TARGET_DEVICES += digilent_zynq-zybo-z7
  61. define Device/xlnx_zynq-zc702
  62. $(call Device/FitImageGzip)
  63. DEVICE_VENDOR := Xilinx
  64. DEVICE_MODEL := ZC702
  65. DEVICE_PACKAGES:=kmod-can kmod-can-xilinx-can
  66. endef
  67. TARGET_DEVICES += xlnx_zynq-zc702
  68. $(eval $(call BuildImage))