rpi-firmware.mk 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. ################################################################################
  2. #
  3. # rpi-firmware
  4. #
  5. ################################################################################
  6. RPI_FIRMWARE_VERSION = 358f4c271f2bc10931aae8fe0879ffaded8b9c44
  7. RPI_FIRMWARE_SITE = $(call github,raspberrypi,firmware,$(RPI_FIRMWARE_VERSION))
  8. RPI_FIRMWARE_LICENSE = BSD-3-Clause
  9. RPI_FIRMWARE_LICENSE_FILES = boot/LICENCE.broadcom
  10. RPI_FIRMWARE_INSTALL_IMAGES = YES
  11. ifeq ($(BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTBS),y)
  12. define RPI_FIRMWARE_INSTALL_DTB
  13. $(foreach dtb,$(wildcard $(@D)/boot/*.dtb), \
  14. $(INSTALL) -D -m 0644 $(dtb) $(BINARIES_DIR)/rpi-firmware/$(notdir $(dtb))
  15. )
  16. endef
  17. endif
  18. ifeq ($(BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTB_OVERLAYS),y)
  19. define RPI_FIRMWARE_INSTALL_DTB_OVERLAYS
  20. for ovldtb in $(@D)/boot/overlays/*.dtbo; do \
  21. $(INSTALL) -D -m 0644 $${ovldtb} $(BINARIES_DIR)/rpi-firmware/overlays/$${ovldtb##*/} || exit 1; \
  22. done
  23. endef
  24. else
  25. # Still create the directory, so a genimage.cfg can include it independently of
  26. # whether _INSTALL_DTB_OVERLAYS is selected or not.
  27. define RPI_FIRMWARE_INSTALL_DTB_OVERLAYS
  28. $(INSTALL) -d $(BINARIES_DIR)/rpi-firmware/overlays
  29. endef
  30. endif
  31. ifeq ($(BR2_PACKAGE_RPI_FIRMWARE_INSTALL_VCDBG),y)
  32. define RPI_FIRMWARE_INSTALL_TARGET_CMDS
  33. $(INSTALL) -D -m 0700 $(@D)/$(if BR2_ARM_EABIHF,hardfp/)opt/vc/bin/vcdbg \
  34. $(TARGET_DIR)/usr/sbin/vcdbg
  35. $(INSTALL) -D -m 0644 $(@D)/$(if BR2_ARM_EABIHF,hardfp/)opt/vc/lib/libelftoolchain.so \
  36. $(TARGET_DIR)/usr/lib/libelftoolchain.so
  37. endef
  38. endif # INSTALL_VCDBG
  39. ifeq ($(BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI),y)
  40. # bootcode.bin is not used on rpi4, because it has been replaced by boot code in the onboard EEPROM
  41. define RPI_FIRMWARE_INSTALL_BOOTCODE_BIN
  42. $(INSTALL) -D -m 0644 $(@D)/boot/bootcode.bin $(BINARIES_DIR)/rpi-firmware/bootcode.bin
  43. endef
  44. endif
  45. define RPI_FIRMWARE_INSTALL_IMAGES_CMDS
  46. $(INSTALL) -D -m 0644 package/rpi-firmware/config.txt $(BINARIES_DIR)/rpi-firmware/config.txt
  47. $(INSTALL) -D -m 0644 package/rpi-firmware/cmdline.txt $(BINARIES_DIR)/rpi-firmware/cmdline.txt
  48. $(INSTALL) -D -m 0644 $(@D)/boot/start$(BR2_PACKAGE_RPI_FIRMWARE_BOOT).elf $(BINARIES_DIR)/rpi-firmware/start.elf
  49. $(INSTALL) -D -m 0644 $(@D)/boot/fixup$(BR2_PACKAGE_RPI_FIRMWARE_BOOT).dat $(BINARIES_DIR)/rpi-firmware/fixup.dat
  50. $(RPI_FIRMWARE_INSTALL_BOOTCODE_BIN)
  51. $(RPI_FIRMWARE_INSTALL_DTB)
  52. $(RPI_FIRMWARE_INSTALL_DTB_OVERLAYS)
  53. endef
  54. $(eval $(generic-package))