config BR2_PACKAGE_RPI_FIRMWARE
	bool "rpi-firmware"
	depends on BR2_arm || BR2_aarch64
	help
	  RaspberryPi Firmware
	  Pre-compiled binaries of the current bootloader and GPU firmware

	  https://github.com/raspberrypi/firmware

if BR2_PACKAGE_RPI_FIRMWARE

choice
	bool "Firmware to boot"
	default BR2_PACKAGE_RPI_FIRMWARE_DEFAULT
	help
	  There are three different firmware files:
	    - the default firmware, that enables standard GPU features;
	    - the extended firmware, that enables additional GPU features
	      (eg. more audio/video codecs);
	    - the cut-down firmware, for emergency situations, with only
	      features required to boot a Linux kernel.

config BR2_PACKAGE_RPI_FIRMWARE_DEFAULT
	bool "default"
	help
	  The default firmware, that enables standard GPU features.

config BR2_PACKAGE_RPI_FIRMWARE_X
	bool "extended ('x', more codecs)"
	help
	  The extended firmware, that enables additional GPU features
	  (eg. more audio/video codecs).

config BR2_PACKAGE_RPI_FIRMWARE_CD
	bool "cut-down ('cd', emergency)"
	help
	  The cut-down firmware, for emergency situations, with only
	  features required to boot a Linux kernel.

endchoice

config BR2_PACKAGE_RPI_FIRMWARE_BOOT
	string
	default ""      if BR2_PACKAGE_RPI_FIRMWARE_DEFAULT
	default "_x"    if BR2_PACKAGE_RPI_FIRMWARE_X
	default "_cd"   if BR2_PACKAGE_RPI_FIRMWARE_CD

config BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTBS
	bool "Install Device Tree Blobs (DTBs)"
	default y
	depends on !BR2_LINUX_KERNEL_DTS_SUPPORT
	help
	  If you are using a Linux kernel <= 3.18, you should say 'y' here.

	  If you are using a Linux kernel >= 3.19, you should say 'n' here,
	  and enable BR2_LINUX_KERNEL_DTS_SUPPORT to let the kernel build
	  the DTB.

config BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTB_OVERLAYS
	bool "Install DTB overlays"
	default y
	depends on BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTBS \
		|| BR2_LINUX_KERNEL_DTS_SUPPORT
	help
	  Say 'y' here if you need to load one or more of the DTB overlays,
	  to support HATs (Hardware Attached on Top, add-on modules).

config BR2_PACKAGE_RPI_FIRMWARE_INSTALL_VCDBG
	bool "vcdbg"
	depends on BR2_arm # prebuilt arm binary, rpi-userland
	depends on BR2_TOOLCHAIN_USES_GLIBC
	depends on BR2_INSTALL_LIBSTDCPP # rpi-userland
	select BR2_PACKAGE_RPI_USERLAND
	help
	  Install vcdbg, to help debug communication with the GPU.

comment "vcdbg needs a glibc toolchain w/ C++"
	depends on BR2_arm
	depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_INSTALL_LIBSTDCPP

endif # BR2_PACKAGE_RPI_FIRMWARE
