menuconfig BR2_PACKAGE_FREESCALE_IMX
	bool "Freescale i.MX libraries"
	depends on BR2_arm || BR2_aarch64
	help
	  Those packages provide hardware acceleration for GPU or VPU,
	  hardware optimization or some hardware tools for Freescale
	  i.MX platforms.

if BR2_PACKAGE_FREESCALE_IMX
choice
	prompt "i.MX platform"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX25_3STACK
	bool "imx25-3stack"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX27ADS
	bool "imx27ads"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX37_3STACK
	bool "imx37-3stack"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX50
	bool "imx50"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX51
	bool "imx51"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53
	bool "imx53"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q
	bool "imx6q/imx6dl"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6S
	bool "imx6sl/imx6sx"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6UL
	bool "imx6ul/imx6ull/imx6ulz"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX7
	bool "imx7d/imx7ulp"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8
	bool "imx8"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M
	bool "imx8m"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MM
	bool "imx8mm"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MN
	bool "imx8mn"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MP
	bool "imx8mp"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8ULP
	bool "imx8ulp"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8X
	bool "imx8x"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8DXL
	bool "imx8dxl"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX91
	bool "imx91"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX93
	bool "imx93"

endchoice

choice
	prompt "i.MX 8ULP Silicon Revision"
	default BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8ULPA2
	depends on BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8ULP
	help
	  Some packages related to the selected i.MX platform need to
	  know the silicon revision of the platform they will run on.

	  Note - mismatches may result in a failure to boot!

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8ULPA0
	bool "imx8ulpa0"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8ULPA1
	bool "imx8ulpa1"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8ULPA2
	bool "imx8ulpa2"

endchoice

choice
	prompt "i.MX 91 Silicon Revision"
	default BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX91A0
	depends on BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX91
	help
	  Some packages related to the selected i.MX platform need to
	  know the silicon revision of the platform they will run on.

	  Note - mismatches may result in a failure to boot!

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX91A0
	bool "imx91a0"

endchoice

choice
	prompt "i.MX 93 Silicon Revision"
	default BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX93A1
	depends on BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX93
	help
	  Some packages related to the selected i.MX platform need to
	  know the silicon revision of the platform they will run on.

	  Note - mismatches may result in a failure to boot!

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX93A0
	bool "imx93a0"

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX93A1
	bool "imx93a1"

endchoice

config BR2_PACKAGE_FREESCALE_IMX_PLATFORM
	string
	default "IMX25_3STACK" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX25_3STACK
	default "IMX27ADS" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX27ADS
	default "IMX37_3STACK" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX37_3STACK
	default "IMX50" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX50
	default "IMX51" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX51
	default "IMX53" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53
	default "IMX6Q" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q
	default "IMX6S" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6S
	default "IMX6UL" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6UL
	default "IMX7" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX7
	default "IMX8" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8
	default "IMX8MQ" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M
	default "IMX8MM" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MM
	default "IMX8MN" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MN
	default "IMX8MP" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MP
	default "IMX8ULP" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8ULP
	default "IMX91" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX91
	default "IMX93" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX93

config BR2_PACKAGE_FREESCALE_IMX_HAS_VPU
	bool
	default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX27ADS || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX51 || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53 || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q

config BR2_PACKAGE_FREESCALE_IMX_HAS_VPU_HANTRO
	bool
	default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MM || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MP

config BR2_PACKAGE_FREESCALE_IMX_HAS_VIV_GPU
	bool
	default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6S || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX7 || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8 || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MM || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MN || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MP || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8ULP || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8X || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8DXL

config BR2_PACKAGE_FREESCALE_IMX_HAS_ELE
	bool
	default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8ULP || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX91 || \
		BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX93

config BR2_PACKAGE_FREESCALE_IMX_HAS_UPOWER
	bool
	default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8ULP

source "package/freescale-imx/imx-alsa-plugins/Config.in"
source "package/freescale-imx/imx-codec/Config.in"
source "package/freescale-imx/imx-kobs/Config.in"
source "package/freescale-imx/imx-lib/Config.in"
source "package/freescale-imx/imx-m4fwloader/Config.in"
source "package/freescale-imx/imx-parser/Config.in"
source "package/freescale-imx/imx-uuc/Config.in"
source "package/freescale-imx/imx-vpu/Config.in"
source "package/freescale-imx/imx-vpu-hantro/Config.in"
source "package/freescale-imx/imx-vpuwrap/Config.in"
source "package/freescale-imx/firmware-ele-imx/Config.in"
source "package/freescale-imx/firmware-imx/Config.in"
source "package/freescale-imx/firmware-upower/Config.in"
source "package/freescale-imx/imx-sc-firmware/Config.in"
source "package/freescale-imx/imx-seco/Config.in"
source "package/freescale-imx/imx-vpu-hantro-daemon/Config.in"
source "package/freescale-imx/imx-vpu-hantro-vc/Config.in"
if (BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX51 || BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53)
source "package/freescale-imx/gpu-amd-bin-mx51/Config.in"
source "package/freescale-imx/libz160/Config.in"
endif
if BR2_PACKAGE_FREESCALE_IMX_HAS_VIV_GPU
source "package/freescale-imx/imx-gpu-g2d/Config.in"
source "package/freescale-imx/imx-gpu-viv/Config.in"
source "package/freescale-imx/kernel-module-imx-gpu-viv/Config.in"
endif

endif
