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"

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_IMX8X
	bool "imx8x"
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

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

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_IMX8X

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-imx/Config.in"
source "package/freescale-imx/imx-sc-firmware/Config.in"
source "package/freescale-imx/imx-seco/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
