Makefile 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  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)/kernel.mk
  7. PKG_VERSION:=2021.07
  8. PKG_RELEASE:=$(AUTORELEASE)
  9. PKG_HASH:=312b7eeae44581d1362c3a3f02c28d806647756c82ba8c72241c7cdbe68ba77e
  10. PKG_MAINTAINER:=Tobias Maedel <[email protected]>
  11. include $(INCLUDE_DIR)/u-boot.mk
  12. include $(INCLUDE_DIR)/package.mk
  13. define U-Boot/Default
  14. BUILD_TARGET:=rockchip
  15. UENV:=default
  16. HIDDEN:=1
  17. endef
  18. # RK3328 boards
  19. define U-Boot/nanopi-r2s-rk3328
  20. BUILD_SUBTARGET:=armv8
  21. NAME:=NanoPi R2S
  22. BUILD_DEVICES:= \
  23. friendlyarm_nanopi-r2s
  24. DEPENDS:=+PACKAGE_u-boot-nanopi-r2s-rk3328:arm-trusted-firmware-rockchip
  25. PKG_BUILD_DEPENDS:=arm-trusted-firmware-rockchip
  26. ATF:=rk3328_bl31.elf
  27. OF_PLATDATA:=$(1)
  28. endef
  29. # RK3399 boards
  30. define U-Boot/nanopi-r4s-rk3399
  31. BUILD_SUBTARGET:=armv8
  32. NAME:=NanoPi R4S
  33. BUILD_DEVICES:= \
  34. friendlyarm_nanopi-r4s
  35. DEPENDS:=+PACKAGE_u-boot-nanopi-r4s-rk3399:arm-trusted-firmware-rockchip
  36. PKG_BUILD_DEPENDS:=arm-trusted-firmware-rockchip
  37. ATF:=rk3399_bl31.elf
  38. endef
  39. define U-Boot/rock-pi-4-rk3399
  40. BUILD_SUBTARGET:=armv8
  41. NAME:=Rock Pi 4
  42. BUILD_DEVICES:= \
  43. radxa_rock-pi-4a
  44. DEPENDS:=+PACKAGE_u-boot-rock-pi-4-rk3399:arm-trusted-firmware-rockchip
  45. PKG_BUILD_DEPENDS:=arm-trusted-firmware-rockchip
  46. ATF:=rk3399_bl31.elf
  47. endef
  48. define U-Boot/rockpro64-rk3399
  49. BUILD_SUBTARGET:=armv8
  50. NAME:=RockPro64
  51. BUILD_DEVICES:= \
  52. pine64_rockpro64
  53. DEPENDS:=+PACKAGE_u-boot-rockpro64-rk3399:arm-trusted-firmware-rockchip
  54. PKG_BUILD_DEPENDS:=arm-trusted-firmware-rockchip
  55. ATF:=rk3399_bl31.elf
  56. endef
  57. UBOOT_TARGETS := \
  58. nanopi-r4s-rk3399 \
  59. rock-pi-4-rk3399 \
  60. rockpro64-rk3399 \
  61. nanopi-r2s-rk3328
  62. UBOOT_CONFIGURE_VARS += USE_PRIVATE_LIBGCC=yes
  63. UBOOT_MAKE_FLAGS += \
  64. BL31=$(STAGING_DIR_IMAGE)/$(ATF)
  65. define Build/Configure
  66. $(call Build/Configure/U-Boot)
  67. ifneq ($(OF_PLATDATA),)
  68. mkdir -p $(PKG_BUILD_DIR)/tpl/dts
  69. mkdir -p $(PKG_BUILD_DIR)/include/generated
  70. $(CP) $(PKG_BUILD_DIR)/of-platdata/$(OF_PLATDATA)/dt-plat.c $(PKG_BUILD_DIR)/tpl/dts/dt-plat.c
  71. $(CP) $(PKG_BUILD_DIR)/of-platdata/$(OF_PLATDATA)/dt-structs-gen.h $(PKG_BUILD_DIR)/include/generated/dt-structs-gen.h
  72. $(CP) $(PKG_BUILD_DIR)/of-platdata/$(OF_PLATDATA)/dt-decl.h $(PKG_BUILD_DIR)/include/generated/dt-decl.h
  73. endif
  74. $(SED) 's#CONFIG_MKIMAGE_DTC_PATH=.*#CONFIG_MKIMAGE_DTC_PATH="$(PKG_BUILD_DIR)/scripts/dtc/dtc"#g' $(PKG_BUILD_DIR)/.config
  75. echo 'CONFIG_IDENT_STRING=" OpenWrt"' >> $(PKG_BUILD_DIR)/.config
  76. endef
  77. define Build/InstallDev
  78. $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
  79. $(CP) $(PKG_BUILD_DIR)/idbloader.img $(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-idbloader.img
  80. $(CP) $(PKG_BUILD_DIR)/u-boot.itb $(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-u-boot.itb
  81. endef
  82. define Package/u-boot/install/default
  83. endef
  84. $(eval $(call BuildPackage/U-Boot))