summaryrefslogtreecommitdiffstats
path: root/bsp/meta-freescale/conf/machine/include/imx-base.inc
diff options
context:
space:
mode:
Diffstat (limited to 'bsp/meta-freescale/conf/machine/include/imx-base.inc')
-rw-r--r--bsp/meta-freescale/conf/machine/include/imx-base.inc131
1 files changed, 96 insertions, 35 deletions
diff --git a/bsp/meta-freescale/conf/machine/include/imx-base.inc b/bsp/meta-freescale/conf/machine/include/imx-base.inc
index 20f861f2..4be14fb1 100644
--- a/bsp/meta-freescale/conf/machine/include/imx-base.inc
+++ b/bsp/meta-freescale/conf/machine/include/imx-base.inc
@@ -9,12 +9,30 @@ require conf/machine/include/utilities.inc
IMX_DEFAULT_BOOTLOADER = "u-boot-fslc"
IMX_DEFAULT_BOOTLOADER_mx8 = "u-boot-imx"
+# Machines or distros can define which BSP it should use by default. We are
+# intending to default for mainline BSP by default and specific machines or
+# DISTROs might change it if need.
+#
+# Two values are considered valid: mainline, nxp
+IMX_DEFAULT_BSP ?= "mainline"
+
+# Those are SoC families we'd like to force the use of mainline BSP.
+IMX_DEFAULT_BSP_mxs ?= "mainline"
+IMX_DEFAULT_BSP_mx5 ?= "mainline"
+
+MACHINEOVERRIDES =. "use-${IMX_DEFAULT_BSP}-bsp:"
+
PREFERRED_PROVIDER_u-boot ??= "${IMX_DEFAULT_BOOTLOADER}"
+PREFERRED_PROVIDER_u-boot-tools-native ??= "${IMX_DEFAULT_BOOTLOADER}-tools-native"
+PREFERRED_PROVIDER_nativesdk-u-boot-tools ??= "nativesdk-${IMX_DEFAULT_BOOTLOADER}-tools"
+PREFERRED_PROVIDER_u-boot-mkimage-native ??= "${IMX_DEFAULT_BOOTLOADER}-tools-native"
+PREFERRED_PROVIDER_nativesdk-u-boot-mkimage ??= "nativesdk-${IMX_DEFAULT_BOOTLOADER}-tools"
PREFERRED_PROVIDER_virtual/bootloader ??= "${IMX_DEFAULT_BOOTLOADER}"
PREFERRED_PROVIDER_u-boot-mxsboot-native ??= "u-boot-fslc-mxsboot-native"
-UBOOT_MAKE_TARGET ?= "u-boot.imx"
+UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
+UBOOT_MAKE_TARGET ?= "u-boot.${UBOOT_SUFFIX}"
UBOOT_MAKE_TARGET_mxs ?= "u-boot.sb"
UBOOT_MAKE_TARGET_mx8 ?= ""
@@ -32,6 +50,9 @@ UBOOT_ENTRYPOINT_mx6sx = "0x80008000"
UBOOT_ENTRYPOINT_mx6ul = "0x10008000"
UBOOT_ENTRYPOINT_mx6ull = "0x10008000"
UBOOT_ENTRYPOINT_mx7 = "0x80008000"
+UBOOT_ENTRYPOINT_mx7ulp = "0x60008000"
+UBOOT_ENTRYPOINT_mx8mm = "0x40480000"
+UBOOT_ENTRYPOINT_mx8mn = "0x40480000"
UBOOT_ENTRYPOINT_mx8mq = "0x40480000"
UBOOT_ENTRYPOINT_vf = "0x80008000"
@@ -55,11 +76,17 @@ MACHINE_EXTRA_RRECOMMENDS = "kernel-modules"
# handled by software
# DEFAULTTUNE_mx6 ?= "cortexa9t-neon"
# handled by hardware
-DEFAULTTUNE_mx6 ?= "cortexa9thf-neon"
-DEFAULTTUNE_mx6ul ?= "cortexa7thf-neon"
+DEFAULTTUNE_mx6 ?= "cortexa9thf-neon"
+DEFAULTTUNE_mx6ul ?= "cortexa7thf-neon"
DEFAULTTUNE_mx6ull ?= "cortexa7thf-neon"
-DEFAULTTUNE_mx7 ?= "cortexa7thf-neon"
-DEFAULTTUNE_vf ?= "cortexa5thf-neon"
+DEFAULTTUNE_mx7 ?= "cortexa7thf-neon"
+DEFAULTTUNE_vf ?= "cortexa5thf-neon"
+
+DEFAULTTUNE_mx8mm ?= "cortexa53-crypto"
+DEFAULTTUNE_mx8mn ?= "cortexa53-crypto"
+DEFAULTTUNE_mx8mq ?= "cortexa53-crypto"
+DEFAULTTUNE_mx8qm ?= "cortexa72-cortexa53-crypto"
+DEFAULTTUNE_mx8qxp ?= "cortexa35-crypto"
INHERIT += "machine-overrides-extender"
@@ -75,10 +102,13 @@ MACHINEOVERRIDES_EXTENDER_mx7d = "imxfbdev:imxpxp:imxepdc"
MACHINEOVERRIDES_EXTENDER_mx7ulp = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
MACHINEOVERRIDES_EXTENDER_mx8qm = "imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
MACHINEOVERRIDES_EXTENDER_mx8mm = "imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER_mx8mn = "imxdrm:imxgpu:imxgpu3d"
MACHINEOVERRIDES_EXTENDER_mx8mq = "imxdrm:imxvpu:imxgpu:imxgpu3d"
MACHINEOVERRIDES_EXTENDER_mx8qxp = "imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
MACHINEOVERRIDES_EXTENDER_FILTER_OUT_use-mainline-bsp = " \
+ imx \
+ \
mx6 \
mx6q \
mx6dl \
@@ -95,16 +125,13 @@ MACHINEOVERRIDES_EXTENDER_FILTER_OUT_use-mainline-bsp = " \
mx8 \
mx8qm \
mx8mm \
+ mx8mn \
mx8mq \
mx8qxp \
"
# Sub-architecture support
MACHINE_SOCARCH_SUFFIX ?= ""
-MACHINE_SOCARCH_SUFFIX_mx23 = "-mxs"
-MACHINE_SOCARCH_SUFFIX_mx28 = "-mxs"
-MACHINE_SOCARCH_SUFFIX_mx51 = "-mx5"
-MACHINE_SOCARCH_SUFFIX_mx53 = "-mx5"
MACHINE_SOCARCH_SUFFIX_mx6q = "-mx6qdl"
MACHINE_SOCARCH_SUFFIX_mx6dl = "-mx6qdl"
MACHINE_SOCARCH_SUFFIX_mx6sx = "-mx6sx"
@@ -118,6 +145,7 @@ MACHINE_SOCARCH_SUFFIX_mx6ul = "-mx6ul"
MACHINE_SOCARCH_SUFFIX_mx6ull = "-mx6ul"
MACHINE_SOCARCH_SUFFIX_mx8qm = "-mx8"
MACHINE_SOCARCH_SUFFIX_mx8mm = "-mx8mm"
+MACHINE_SOCARCH_SUFFIX_mx8mn = "-mx8mn"
MACHINE_SOCARCH_SUFFIX_mx8mq = "-mx8m"
MACHINE_SOCARCH_SUFFIX_mx8qxp = "-mx8"
MACHINE_SOCARCH_SUFFIX_use-mainline-bsp = "-imx"
@@ -125,6 +153,7 @@ MACHINE_SOCARCH_SUFFIX_use-mainline-bsp = "-imx"
MACHINE_ARCH_FILTER = "virtual/kernel"
MACHINE_SOCARCH_FILTER_append_imx = " \
alsa-lib \
+ gstreamer1.0 \
weston \
"
MACHINE_SOCARCH_FILTER_append_imxvpu = " \
@@ -140,7 +169,6 @@ MACHINE_SOCARCH_FILTER_append_imxgpu = " \
virtual/libopenvg \
libdrm \
cairo \
- gstreamer1.0-plugins-bad \
libgal-imx \
pango \
"
@@ -207,13 +235,31 @@ MACHINE_FIRMWARE_append_use-mainline-bsp = " linux-firmware-imx-sdma-imx6q linux
MACHINE_EXTRA_RRECOMMENDS += "${MACHINE_FIRMWARE}"
# Extra audio support
-MACHINE_EXTRA_RRECOMMENDS_append_mx6 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'imx-alsa-plugins', '', d)}"
-MACHINE_EXTRA_RRECOMMENDS_append_mx7 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'imx-alsa-plugins', '', d)}"
-MACHINE_EXTRA_RRECOMMENDS_append_mx8 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'imx-alsa-plugins', '', d)}"
+IMX_ALSA_EXTRA = ""
+IMX_ALSA_EXTRA_use-nxp-bsp = "imx-alsa-plugins"
+MACHINE_EXTRA_RRECOMMENDS_append_mx6 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS_append_mx7 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS_append_mx8 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
+
+# Extra Cypress Wi-Fi and BTW firmware (Murata)
+MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4339', 'linux-firmware-bcm4339', '', d)}"
+MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm43430', 'linux-firmware-bcm43430', '', d)}"
+MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm43455', 'linux-firmware-bcm43455', '', d)}"
+MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4356', 'linux-firmware-bcm4356-pcie', '', d)}"
+MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4359', 'linux-firmware-bcm4359-pcie', '', d)}"
+
+# Extra QCA Wi-Fi & BTE driver and firmware
+MACHINE_EXTRA_RRECOMMENDS_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'qca6174', 'packagegroup-fsl-qca6174', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'qca9377', 'packagegroup-fsl-qca9377', '', d)}"
# Extra udev rules
MACHINE_EXTRA_RRECOMMENDS += "udev-rules-imx"
+# Jailhouse
+MACHINE_EXTRA_RRECOMMENDS += " \
+ ${@bb.utils.contains('COMBINED_FEATURES', 'jailhouse', 'jailhouse', '', d)} \
+"
+
# GStreamer 1.0 plugins
MACHINE_GSTREAMER_1_0_PLUGIN ?= ""
MACHINE_GSTREAMER_1_0_PLUGIN_mx6dl ?= "gstreamer1.0-plugins-imx-meta"
@@ -244,60 +290,72 @@ PREFERRED_PROVIDER_virtual/libgl_imxgpu3d ?= "imx-gpu-viv"
PREFERRED_PROVIDER_virtual/libgles1_imxgpu3d ?= "imx-gpu-viv"
PREFERRED_PROVIDER_virtual/libgles2_imxgpu3d ?= "imx-gpu-viv"
PREFERRED_PROVIDER_virtual/libg2d ?= "imx-gpu-g2d"
+PREFERRED_PROVIDER_virtual/libg2d_imxdpu ?= "imx-dpu-g2d"
-PREFERRED_VERSION_weston_mx6 ?= "4.0.0.imx"
-PREFERRED_VERSION_weston_mx7 ?= "4.0.0.imx"
-PREFERRED_VERSION_weston_mx8 ?= "4.0.0.imx"
+PREFERRED_VERSION_weston_imx ?= "8.0.0.imx"
+PREFERRED_VERSION_weston_use-mainline-bsp = ""
-PREFERRED_VERSION_wayland-protocols_mx6 ?= "1.13.imx"
-PREFERRED_VERSION_wayland-protocols_mx7 ?= "1.13.imx"
-PREFERRED_VERSION_wayland-protocols_mx8 ?= "1.13.imx"
+PREFERRED_VERSION_wayland-protocols_mx6 ?= "1.18.imx"
+PREFERRED_VERSION_wayland-protocols_mx7 ?= "1.18.imx"
+PREFERRED_VERSION_wayland-protocols_mx8 ?= "1.18.imx"
# Use i.MX libdrm Version
-PREFERRED_VERSION_libdrm_mx6 ?= "2.4.91.imx"
-PREFERRED_VERSION_libdrm_mx7 ?= "2.4.91.imx"
-PREFERRED_VERSION_libdrm_mx8 ?= "2.4.91.imx"
+PREFERRED_VERSION_libdrm_mx6 ?= "2.4.99.imx"
+PREFERRED_VERSION_libdrm_mx7 ?= "2.4.99.imx"
+PREFERRED_VERSION_libdrm_mx8 ?= "2.4.99.imx"
+
+# Use i.MX optee Version
+PREFERRED_VERSION_optee-os_mx8 ?= "3.2.0.imx"
+PREFERRED_VERSION_optee-client_mx8 ?= "3.2.0.imx"
+PREFERRED_VERSION_optee-test_mx8 ?= "3.2.0.imx"
# Handle default kernel
IMX_DEFAULT_KERNEL = "linux-imx"
IMX_DEFAULT_KERNEL_mxs = "linux-fslc"
IMX_DEFAULT_KERNEL_mx5 = "linux-fslc"
-IMX_DEFAULT_KERNEL_mx6 = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx7 = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL_mx6 = "linux-imx"
+IMX_DEFAULT_KERNEL_mx7 = "linux-imx"
IMX_DEFAULT_KERNEL_mx8 = "linux-imx"
IMX_DEFAULT_KERNEL_mx7ulp = "linux-imx"
IMX_DEFAULT_KERNEL_mx6sll = "linux-imx"
-IMX_DEFAULT_KERNEL_mx6ul = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6ull = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL_mx6ul = "linux-imx"
+IMX_DEFAULT_KERNEL_mx6ull = "linux-imx"
IMX_DEFAULT_KERNEL_use-mainline-bsp = "linux-fslc"
PREFERRED_PROVIDER_virtual/kernel ??= "${IMX_DEFAULT_KERNEL}"
SOC_DEFAULT_IMAGE_FSTYPES = "wic.bmap wic.gz"
-SOC_DEFAULT_IMAGE_FSTYPES_mxs = "uboot-mxsboot-sdcard wic.gz"
+SOC_DEFAULT_IMAGE_FSTYPES_mxs = "uboot-mxsboot-sdcard wic.bmap wic.gz"
# Do not update fstab file when using wic images
WIC_CREATE_EXTRA_ARGS ?= "--no-fstab-update"
-SDCARD_ROOTFS ?= "${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.ext4"
+OPTEE_BOOT_IMAGE = "uTee"
+OPTEE_BOOT_IMAGE_aarch64 = ""
+
IMAGE_FSTYPES ?= "${SOC_DEFAULT_IMAGE_FSTYPES}"
IMAGE_BOOT_FILES ?= " \
${KERNEL_IMAGETYPE} \
${@make_dtb_boot_files(d)} \
+ ${@bb.utils.contains('MACHINE_FEATURES', 'optee', '${OPTEE_BOOT_IMAGE}', '', d)} \
"
### wic default support
+OPTEE_WKS_FILE_DEPENDS = "optee-os"
+OPTEE_WKS_FILE_DEPENDS_aarch64 = ""
+
WKS_FILE_DEPENDS ?= " \
virtual/bootloader \
\
e2fsprogs-native \
bmap-tools-native \
+ ${@bb.utils.contains('MACHINE_FEATURES', 'optee', '${OPTEE_WKS_FILE_DEPENDS}', '', d)} \
"
-WKS_FILE_DEPENDS_mx8 += "imx-boot"
+WKS_FILE_DEPENDS_append_mx8 = " imx-boot "
-SOC_DEFAULT_WKS_FILE ?= "imx-uboot-bootpart.wks"
+SOC_DEFAULT_WKS_FILE ?= "imx-uboot-bootpart.wks.in"
SOC_DEFAULT_WKS_FILE_mx8 ?= "imx-imx-boot-bootpart.wks.in"
SOC_DEFAULT_WKS_FILE_mxs ?= "imx-uboot-mxs-bootpart.wks.in"
@@ -309,21 +367,24 @@ WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"
UBOOT_MAKE_TARGET_use-fsl-bsp_mx6 = "u-boot.imx"
UBOOT_SUFFIX_use-fsl-bsp_mx6 = "imx"
SPL_BINARY_use-fsl-bsp_mx6 = ""
-WKS_FILE_use-fsl-bsp_mx6 = "imx-uboot-bootpart.wks"
+WKS_FILE_use-fsl-bsp_mx6 = "imx-uboot-bootpart.wks.in"
UBOOT_MAKE_TARGET_use-fsl-bsp_mx7 = "u-boot.imx"
UBOOT_SUFFIX_use-fsl-bsp_mx7 = "imx"
SPL_BINARY_use-fsl-bsp_mx7 = ""
-WKS_FILE_use-fsl-bsp_mx7 = "imx-uboot-bootpart.wks"
+WKS_FILE_use-fsl-bsp_mx7 = "imx-uboot-bootpart.wks.in"
-SERIAL_CONSOLE = "115200 ttymxc0"
-SERIAL_CONSOLE_mxs = "115200 ttyAMA0"
+SERIAL_CONSOLES = "115200;ttymxc0"
+SERIAL_CONSOLES_mxs = "115200;ttyAMA0"
KERNEL_IMAGETYPE = "zImage"
KERNEL_IMAGETYPE_aarch64 = "Image"
MACHINE_FEATURES = "usbgadget usbhost vfat alsa touchscreen"
+SOC_MACHINE_FEATURES_BACKFILL_mx8m = "jailhouse"
+MACHINE_FEATURES_BACKFILL_append = " ${SOC_MACHINE_FEATURES_BACKFILL}"
+
# Add the ability to specify _imx machines
MACHINEOVERRIDES =. "imx:"
-HOSTTOOLS_NONFATAL_append_mx8x = " sha384sum"
+HOSTTOOLS_NONFATAL_append_mx8 = " sha384sum"