Makefile 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. #
  2. # Copyright (C) 2015 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. #################################################
  10. # Images
  11. #################################################
  12. define Image/boot-imgs
  13. # Copy zImage to BIN_DIR
  14. $(CP) $(KDIR)/zImage $(BIN_DIR)/$(IMG_PREFIX)-zImage
  15. $(call Image/BuildKernel/MkuImage, none, $(KERNEL_LOADADDR), \
  16. $(KERNEL_ENTRY_POINT), $(KDIR)/zImage, \
  17. $(BIN_DIR)/$(IMG_PREFIX)-uImage)
  18. $(call Image/BuildDTB,$(DTS_DIR)/$(DEVICE_DTS).dts,\
  19. $(BIN_DIR)/$(IMG_PREFIX)-system.dtb)
  20. $(call Image/mkfs/cpiogz)
  21. $(call Image/mkfs/targz)
  22. # Create uboot cpio.gz
  23. mkimage -A arm -T ramdisk -C gzip -n "$(PROFILE) OpenWRT rootfs" \
  24. -d $(BIN_DIR)/$(IMG_PREFIX)-rootfs.cpio.gz \
  25. $(BIN_DIR)/$(IMG_PREFIX)-uramdisk.image.gz
  26. # create FIT image with rootfs
  27. ./mkits.sh \
  28. -D $(DEVICE_LC) -o $(KDIR)/fit-$(DEVICE_LC).its -k $(KDIR)/zImage \
  29. -d $(BIN_DIR)/$(IMG_PREFIX)-system.dtb \
  30. -C none -a $(KERNEL_LOADADDR) -e $(KERNEL_ENTRY_POINT) \
  31. -A $(ARCH) -v $(LINUX_VERSION) \
  32. -r $(BIN_DIR)/$(IMG_PREFIX)-rootfs.cpio.gz -z gzip
  33. PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f $(KDIR)/fit-$(DEVICE_LC).its $(KDIR)/fit-$(DEVICE_LC).itb
  34. $(CP) $(KDIR)/fit-$(DEVICE_LC).itb $(BIN_DIR)/$(IMG_PREFIX)-fit.itb
  35. ln -fs $(IMG_PREFIX)-fit.itb $(BIN_DIR)/fit.itb
  36. endef
  37. #################################################
  38. # Devices
  39. #################################################
  40. # default kernel load address
  41. KERNEL_LOADADDR=0x8000
  42. KERNEL_ENTRY_POINT=0x8000
  43. ### Device macros ###
  44. define Device/Default
  45. IMG_PREFIX := zynq
  46. DEVICE_DTS :=
  47. PROFILE_SANITIZED :=
  48. endef
  49. DEVICE_VARS += DEVICE_DTS
  50. define Device/DefaultConfig
  51. DEVICE_LC = $(1)
  52. IMG_PREFIX = zynq-$(1)
  53. DEVICE_DTS = zynq-$(1)
  54. endef
  55. ### ZC702 ###
  56. define Device/ZC702
  57. $(call Device/DefaultConfig,zc702)
  58. endef
  59. define Device/ZED
  60. $(call Device/DefaultConfig,zed)
  61. endef
  62. define Device/ZYBO
  63. $(call Device/DefaultConfig,zybo)
  64. endef
  65. define Image/BuildKernel
  66. $(eval $(call Device/$(PROFILE)))
  67. $(call Image/boot-imgs)
  68. endef
  69. $(eval $(call BuildImage))