aboutsummaryrefslogtreecommitdiffstats
path: root/conf
diff options
context:
space:
mode:
Diffstat (limited to 'conf')
-rw-r--r--conf/layer.conf9
-rw-r--r--conf/machine/imx23evk.conf7
-rw-r--r--conf/machine/imx25pdk.conf7
-rw-r--r--conf/machine/imx28evk.conf7
-rw-r--r--conf/machine/imx51evk.conf10
-rw-r--r--conf/machine/imx53ard.conf9
-rw-r--r--conf/machine/imx53qsb.conf7
-rw-r--r--conf/machine/imx6qdlsabreauto.conf24
-rw-r--r--conf/machine/imx6qdlsabresd.conf24
-rw-r--r--conf/machine/imx6slevk.conf31
-rw-r--r--conf/machine/imx6sllevk.conf19
-rw-r--r--conf/machine/imx6sxsabreauto.conf22
-rw-r--r--conf/machine/imx6sxsabresd.conf43
-rw-r--r--conf/machine/imx6ulevk.conf41
-rw-r--r--conf/machine/imx6ullevk.conf22
-rw-r--r--conf/machine/imx6ulz-14x14-evk.conf36
-rw-r--r--conf/machine/imx7dsabresd.conf31
-rw-r--r--conf/machine/imx7ulpevk.conf30
-rw-r--r--conf/machine/imx8dx-mek.conf12
-rw-r--r--conf/machine/imx8dxl-evk.conf64
-rw-r--r--conf/machine/imx8mm-ddr4-evk.conf25
-rw-r--r--conf/machine/imx8mm-lpddr4-evk.conf36
-rw-r--r--conf/machine/imx8mmevk.conf58
-rw-r--r--conf/machine/imx8mn-ddr4-evk.conf22
-rw-r--r--conf/machine/imx8mn-lpddr4-evk.conf21
-rw-r--r--conf/machine/imx8mnevk.conf60
-rw-r--r--conf/machine/imx8mp-ddr4-evk.conf27
-rw-r--r--conf/machine/imx8mp-lpddr4-evk.conf47
-rw-r--r--conf/machine/imx8mq-evk.conf (renamed from conf/machine/imx8mqevk.conf)42
-rw-r--r--conf/machine/imx8qm-mek.conf89
-rw-r--r--conf/machine/imx8qmmek.conf63
-rw-r--r--conf/machine/imx8qxp-mek.conf26
-rw-r--r--conf/machine/imx8qxpmek.conf63
-rw-r--r--conf/machine/include/imx-base.inc223
-rw-r--r--conf/machine/include/imx8mm-evk.inc57
-rw-r--r--conf/machine/include/imx8mn-evk.inc63
-rw-r--r--conf/machine/include/imx8mp-evk.inc55
-rw-r--r--conf/machine/include/imx8x-mek.inc79
-rw-r--r--conf/machine/include/qoriq-base.inc9
-rw-r--r--conf/machine/ls1012afrwy.conf2
-rw-r--r--conf/machine/ls1012ardb.conf2
-rw-r--r--conf/machine/ls1028ardb.conf2
-rw-r--r--conf/machine/ls1043ardb.conf2
-rw-r--r--conf/machine/ls1046afrwy.conf2
-rw-r--r--conf/machine/ls1046ardb.conf2
-rw-r--r--conf/machine/ls1088ardb-pb.conf2
-rw-r--r--conf/machine/ls1088ardb.conf2
-rw-r--r--conf/machine/ls2088ardb.conf2
-rw-r--r--conf/machine/lx2160ardb.conf2
-rw-r--r--conf/machine/lx2162aqds.conf36
50 files changed, 1147 insertions, 429 deletions
diff --git a/conf/layer.conf b/conf/layer.conf
index 1a22e024..df898924 100644
--- a/conf/layer.conf
+++ b/conf/layer.conf
@@ -8,7 +8,7 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "freescale-layer"
BBFILE_PATTERN_freescale-layer := "^${LAYERDIR}/"
BBFILE_PRIORITY_freescale-layer = "5"
-LAYERSERIES_COMPAT_freescale-layer = "zeus dunfell"
+LAYERSERIES_COMPAT_freescale-layer = "gatesgarth hardknott"
# Add the Freescale-specific licenses into the metadata
LICENSE_PATH += "${LAYERDIR}/custom-licenses"
@@ -28,8 +28,8 @@ BBFILES_DYNAMIC += " \
aglprofilegraphical:${LAYERDIR}/dynamic-layers/aglprofilegraphical/*/*/*.bb \
aglprofilegraphical:${LAYERDIR}/dynamic-layers/aglprofilegraphical/*/*/*.bbappend \
\
- browser-layer:${LAYERDIR}/dynamic-layers/browser-layer/*/*/*.bb \
- browser-layer:${LAYERDIR}/dynamic-layers/browser-layer/*/*/*.bbappend \
+ chromium-browser-layer:${LAYERDIR}/dynamic-layers/chromium-browser-layer/*/*/*.bb \
+ chromium-browser-layer:${LAYERDIR}/dynamic-layers/chromium-browser-layer/*/*/*.bbappend \
\
filesystem-layer:${LAYERDIR}/dynamic-layers/filesystem-layer/*/*/*.bb \
filesystem-layer:${LAYERDIR}/dynamic-layers/filesystem-layer/*/*/*.bbappend \
@@ -37,9 +37,6 @@ BBFILES_DYNAMIC += " \
ivi:${LAYERDIR}/dynamic-layers/ivi/*/*/*.bb \
ivi:${LAYERDIR}/dynamic-layers/ivi/*/*/*.bbappend \
\
- networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/*/*/*.bb \
- networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/*/*/*.bbappend \
- \
openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bb \
openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bbappend \
\
diff --git a/conf/machine/imx23evk.conf b/conf/machine/imx23evk.conf
index 009aff79..8abc5a95 100644
--- a/conf/machine/imx23evk.conf
+++ b/conf/machine/imx23evk.conf
@@ -9,6 +9,13 @@ MACHINEOVERRIDES =. "mxs:mx23:"
include conf/machine/include/imx-base.inc
include conf/machine/include/tune-arm926ejs.inc
+# This machine is not supported by u-boot-imx as it is not tested by NXP on this
+# board. So we force it to use u-boot-fslc which is based on mainline here.
+IMX_DEFAULT_BOOTLOADER = "u-boot-fslc"
+
+UBOOT_MAKE_TARGET = "u-boot.sb"
+UBOOT_SUFFIX = "sb"
+
UBOOT_MACHINE = "mx23evk_config"
KERNEL_DEVICETREE = "imx23-evk.dtb"
diff --git a/conf/machine/imx25pdk.conf b/conf/machine/imx25pdk.conf
index 9e8ad003..5721e845 100644
--- a/conf/machine/imx25pdk.conf
+++ b/conf/machine/imx25pdk.conf
@@ -9,6 +9,13 @@ MACHINEOVERRIDES =. "mx25:"
include conf/machine/include/imx-base.inc
include conf/machine/include/tune-arm926ejs.inc
+# This machine is not supported by u-boot-imx as it is not tested by NXP on this
+# board. So we force it to use u-boot-fslc which is based on mainline here.
+IMX_DEFAULT_BOOTLOADER = "u-boot-fslc"
+
+UBOOT_MAKE_TARGET = "u-boot.imx"
+UBOOT_SUFFIX = "imx"
+
UBOOT_MACHINE ?= "mx25pdk_defconfig"
KERNEL_DEVICETREE = "imx25-pdk.dtb"
diff --git a/conf/machine/imx28evk.conf b/conf/machine/imx28evk.conf
index 7c359e54..4f69dae4 100644
--- a/conf/machine/imx28evk.conf
+++ b/conf/machine/imx28evk.conf
@@ -9,7 +9,12 @@ MACHINEOVERRIDES =. "mxs:mx28:"
include conf/machine/include/imx-base.inc
include conf/machine/include/tune-arm926ejs.inc
-IMXBOOTLETS_MACHINE = "iMX28_EVK"
+# This machine is not supported by u-boot-imx as it is not tested by NXP on this
+# board. So we force it to use u-boot-fslc which is based on mainline here.
+IMX_DEFAULT_BOOTLOADER = "u-boot-fslc"
+
+UBOOT_MAKE_TARGET = "u-boot.sb"
+UBOOT_SUFFIX = "sb"
UBOOT_CONFIG ??= "sd"
UBOOT_CONFIG[sd] = "mx28evk_config,sdcard"
diff --git a/conf/machine/imx51evk.conf b/conf/machine/imx51evk.conf
index a32b4e00..80d7b386 100644
--- a/conf/machine/imx51evk.conf
+++ b/conf/machine/imx51evk.conf
@@ -9,9 +9,13 @@ MACHINEOVERRIDES =. "mx5:mx51:"
include conf/machine/include/imx-base.inc
include conf/machine/include/tune-cortexa8.inc
-# Disable perf features as 2.6.35.3 fails to build otherwise
-PERF_FEATURES_ENABLE = ""
-
KERNEL_DEVICETREE = "imx51-babbage.dtb"
+# This machine is not supported by u-boot-imx as it is not tested by NXP on this
+# board. So we force it to use u-boot-fslc which is based on mainline here.
+IMX_DEFAULT_BOOTLOADER = "u-boot-fslc"
+
+UBOOT_MAKE_TARGET = "u-boot.imx"
+UBOOT_SUFFIX = "imx"
+
UBOOT_MACHINE = "mx51evk_config"
diff --git a/conf/machine/imx53ard.conf b/conf/machine/imx53ard.conf
index c6d7f0d9..af5aeb3b 100644
--- a/conf/machine/imx53ard.conf
+++ b/conf/machine/imx53ard.conf
@@ -13,9 +13,16 @@ include conf/machine/include/tune-cortexa8.inc
PERF_FEATURES_ENABLE = ""
KERNEL_DEVICETREE = "imx53-ard.dtb"
+KERNEL_IMAGETYPE = "uImage"
+
+# This machine is not supported by u-boot-imx as it is not tested by NXP on this
+# board. So we force it to use u-boot-fslc which is based on mainline here.
+IMX_DEFAULT_BOOTLOADER = "u-boot-fslc"
+
+UBOOT_MAKE_TARGET = "u-boot.imx"
+UBOOT_SUFFIX = "imx"
UBOOT_MACHINE = "mx53ard_config"
-KERNEL_IMAGETYPE = "uImage"
MACHINE_FIRMWARE += "linux-firmware-ar3k \
linux-firmware-ath6k"
diff --git a/conf/machine/imx53qsb.conf b/conf/machine/imx53qsb.conf
index 24cbfac6..06d4a756 100644
--- a/conf/machine/imx53qsb.conf
+++ b/conf/machine/imx53qsb.conf
@@ -11,6 +11,13 @@ include conf/machine/include/tune-cortexa8.inc
KERNEL_DEVICETREE = "imx53-qsb.dtb imx53-qsrb.dtb"
+# This machine is not supported by u-boot-imx as it is not tested by NXP on this
+# board. So we force it to use u-boot-fslc which is based on mainline here.
+IMX_DEFAULT_BOOTLOADER = "u-boot-fslc"
+
+UBOOT_MAKE_TARGET = "u-boot.imx"
+UBOOT_SUFFIX = "imx"
+
UBOOT_MACHINE = "mx53loco_config"
MACHINE_FIRMWARE = "linux-firmware-ar3k \
diff --git a/conf/machine/imx6qdlsabreauto.conf b/conf/machine/imx6qdlsabreauto.conf
index 16c1dcb6..b7aec8c2 100644
--- a/conf/machine/imx6qdlsabreauto.conf
+++ b/conf/machine/imx6qdlsabreauto.conf
@@ -32,13 +32,25 @@ KERNEL_DEVICETREE_use-mainline-bsp = " \
imx6dl-sabreauto.dtb \
"
-UBOOT_MACHINE ?= "mx6sabreauto_defconfig"
+### u-boot-fslc settings ###
-# Use fslc u-boot by default. See also imx-base.inc.
-UBOOT_MAKE_TARGET = "all"
-UBOOT_SUFFIX = "img"
-SPL_BINARY = "SPL"
-WKS_FILE = "imx-uboot-spl-bootpart.wks.in"
+SPL_BINARY_pn-u-boot-fslc = "SPL"
+UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabreauto_defconfig"
+UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+
+### u-boot-imx settings ###
+
+# The u-boot-imx does not provide unified functionality for DL/Q/QP SoC
+# variants. Change the defconfig to the targeted SoC variant.
+SPL_BINARY_pn-u-boot-imx = ""
+UBOOT_MACHINE_pn-u-boot-imx = "mx6qsabreauto_defconfig"
+UBOOT_MAKE_TARGET_pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+
+WKS_FILE = " \
+ ${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
+ 'u-boot-fslc', 'imx-uboot-spl-bootpart.wks.in', \
+ 'imx-uboot-bootpart.wks.in', d)}"
SERIAL_CONSOLES = "115200;ttymxc3"
diff --git a/conf/machine/imx6qdlsabresd.conf b/conf/machine/imx6qdlsabresd.conf
index 2fe95dc6..b3d09e93 100644
--- a/conf/machine/imx6qdlsabresd.conf
+++ b/conf/machine/imx6qdlsabresd.conf
@@ -41,13 +41,25 @@ KERNEL_DEVICETREE_use-mainline-bsp = " \
imx6dl-sabresd.dtb \
"
-UBOOT_MACHINE ?= "mx6sabresd_defconfig"
+### u-boot-fslc settings ###
-# Use fslc u-boot by default. See also imx-base.inc.
-UBOOT_MAKE_TARGET = "all"
-UBOOT_SUFFIX = "img"
-SPL_BINARY = "SPL"
-WKS_FILE = "imx-uboot-spl-bootpart.wks.in"
+SPL_BINARY_pn-u-boot-fslc = "SPL"
+UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabresd_defconfig"
+UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+
+### u-boot-imx settings ###
+
+# The u-boot-imx does not provide unified functionality for DL/Q/QP SoC
+# variants. Change the defconfig to the targeted SoC variant.
+SPL_BINARY_pn-u-boot-imx = ""
+UBOOT_MACHINE_pn-u-boot-imx ?= "mx6qsabresd_defconfig"
+UBOOT_MAKE_TARGET_pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+
+WKS_FILE = " \
+ ${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
+ 'u-boot-fslc', 'imx-uboot-spl-bootpart.wks.in', \
+ 'imx-uboot-bootpart.wks.in', d)}"
SERIAL_CONSOLES = "115200;ttymxc0"
diff --git a/conf/machine/imx6slevk.conf b/conf/machine/imx6slevk.conf
index 5d81272f..1e8c403b 100644
--- a/conf/machine/imx6slevk.conf
+++ b/conf/machine/imx6slevk.conf
@@ -9,18 +9,31 @@ MACHINEOVERRIDES =. "mx6:mx6sl:"
include conf/machine/include/imx-base.inc
include conf/machine/include/tune-cortexa9.inc
-KERNEL_DEVICETREE = "imx6sl-evk.dtb imx6sl-evk-csi.dtb imx6sl-evk-ldo.dtb \
- imx6sl-evk-uart.dtb imx6sl-evk-btwifi.dtb"
-KERNEL_DEVICETREE_use-mainline-bsp = "imx6sl-evk.dtb"
+KERNEL_DEVICETREE = "imx6sl-evk.dtb"
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+ imx6sl-evk-btwifi.dtb \
+ imx6sl-evk-csi.dtb \
+ imx6sl-evk-ldo.dtb \
+ imx6sl-evk-uart.dtb \
+"
-UBOOT_CONFIG ??= "sd"
-UBOOT_CONFIG[sd] = "mx6slevk_config,sdcard"
-UBOOT_CONFIG[epdc] = "mx6slevk_epdc_config"
-UBOOT_CONFIG[spinor] = "mx6slevk_spinor_config"
-UBOOT_CONFIG[mfgtool] = "mx6slevk_config"
+UBOOT_MAKE_TARGET = "u-boot.imx"
+UBOOT_SUFFIX = "imx"
+
+UBOOT_CONFIG ??= " \
+ sd \
+ ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee', '', d)} \
+"
+UBOOT_CONFIG[sd] = "mx6slevk_config,sdcard"
+UBOOT_CONFIG[sd-optee] = "mx6slevk_optee_config,sdcard"
+UBOOT_CONFIG[epdc] = "mx6slevk_epdc_config"
+UBOOT_CONFIG[spinor] = "mx6slevk_spinor_config"
+UBOOT_CONFIG[mfgtool] = "mx6slevk_config"
+
+OPTEE_BIN_EXT = "6slevk"
SERIAL_CONSOLES = "115200;ttymxc0"
-MACHINE_FEATURES += " pci wifi bluetooth"
+MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"
MACHINE_FIRMWARE += "linux-firmware-ath6k firmware-imx-epdc"
diff --git a/conf/machine/imx6sllevk.conf b/conf/machine/imx6sllevk.conf
index 7981a457..30b537f1 100644
--- a/conf/machine/imx6sllevk.conf
+++ b/conf/machine/imx6sllevk.conf
@@ -11,14 +11,23 @@ include conf/machine/include/tune-cortexa9.inc
KERNEL_DEVICETREE = "imx6sll-evk.dtb"
-UBOOT_CONFIG ??= "sd"
-UBOOT_CONFIG[sd] = "mx6sllevk_config,sdcard"
-UBOOT_CONFIG[epdc] = "mx6sllevk_epdc_config"
-UBOOT_CONFIG[mfgtool] = "mx6sllevk_config"
+UBOOT_MAKE_TARGET = "u-boot.imx"
+UBOOT_SUFFIX = "imx"
+
+UBOOT_CONFIG ??= " \
+ sd \
+ ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee', '', d)} \
+"
+UBOOT_CONFIG[sd] = "mx6sllevk_config,sdcard"
+UBOOT_CONFIG[sd-optee] = "mx6sllevk_optee_config,sdcard"
+UBOOT_CONFIG[epdc] = "mx6sllevk_epdc_config"
+UBOOT_CONFIG[mfgtool] = "mx6sllevk_config"
+
+OPTEE_BIN_EXT_imx6sllevk = "6sllevk"
SERIAL_CONSOLES = "115200;ttymxc0"
-MACHINE_FEATURES += " pci wifi bluetooth"
+MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455"
# MESA DRI library
XSERVER += "mesa-driver-swrast"
diff --git a/conf/machine/imx6sxsabreauto.conf b/conf/machine/imx6sxsabreauto.conf
index 43cabea2..f7031ccb 100644
--- a/conf/machine/imx6sxsabreauto.conf
+++ b/conf/machine/imx6sxsabreauto.conf
@@ -12,14 +12,20 @@ require conf/machine/include/tune-cortexa9.inc
KERNEL_DEVICETREE = "imx6sx-sabreauto.dtb"
KERNEL_DEVICETREE_use-mainline-bsp = "imx6sx-sabreauto.dtb"
-PREFERRED_PROVIDER_u-boot = "u-boot-fslc"
-PREFERRED_PROVIDER_virtual/bootloader = "u-boot-fslc"
-
-UBOOT_CONFIG ??= "sd"
-UBOOT_CONFIG[sd] = "mx6sxsabreauto_config,sdcard"
-UBOOT_CONFIG[qspi1] = "mx6sxsabreauto_qspi1_config"
-UBOOT_CONFIG[nand] = "mx6sxsabreauto_nand_config,ubifs"
-UBOOT_CONFIG[mfgtool] = "mx6sxsabreauto_config"
+UBOOT_MAKE_TARGET = "u-boot.imx"
+UBOOT_SUFFIX = "imx"
+
+UBOOT_CONFIG ??= " \
+ sd \
+ ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee', '', d)} \
+"
+UBOOT_CONFIG[sd] = "mx6sxsabreauto_config,sdcard"
+UBOOT_CONFIG[sd-optee] = "mx6sxsabreauto_optee_config,sdcard"
+UBOOT_CONFIG[qspi1] = "mx6sxsabreauto_qspi1_config"
+UBOOT_CONFIG[nand] = "mx6sxsabreauto_nand_config,ubifs"
+UBOOT_CONFIG[mfgtool] = "mx6sxsabreauto_config"
+
+OPTEE_BIN_EXT = "6sxauto"
SERIAL_CONSOLES = "115200;ttymxc3"
diff --git a/conf/machine/imx6sxsabresd.conf b/conf/machine/imx6sxsabresd.conf
index 5793a0b0..ff7d6ae6 100644
--- a/conf/machine/imx6sxsabresd.conf
+++ b/conf/machine/imx6sxsabresd.conf
@@ -9,21 +9,40 @@ MACHINEOVERRIDES =. "mx6:mx6sx:"
require conf/machine/include/imx-base.inc
require conf/machine/include/tune-cortexa9.inc
-KERNEL_DEVICETREE = "imx6sx-sdb.dtb imx6sx-sdb-emmc.dtb imx6sx-sdb-m4.dtb \
- imx6sx-sdb-sai.dtb imx6sx-sdb-lcdif1.dtb imx6sx-sdb-ldo.dtb \
- imx6sx-sdb-reva-ldo.dtb imx6sx-sdb-reva.dtb \
- imx6sx-sdb-btwifi.dtb imx6sx-sdb-mqs.dtb"
-KERNEL_DEVICETREE_use-mainline-bsp = "imx6sx-sdb.dtb imx6sx-sdb-sai.dtb imx6sx-sdb-reva.dtb"
-
-UBOOT_CONFIG ??= "sd"
-UBOOT_CONFIG[sd] = "mx6sxsabresd_config,sdcard"
-UBOOT_CONFIG[emmc] = "mx6sxsabresd_emmc_config,sdcard"
-UBOOT_CONFIG[qspi2] = "mx6sxsabresd_qspi2_config"
+KERNEL_DEVICETREE = " \
+ imx6sx-sdb.dtb \
+ imx6sx-sdb-reva.dtb \
+ imx6sx-sdb-sai.dtb \
+"
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+ imx6sx-sdb-btwifi.dtb \
+ imx6sx-sdb-emmc.dtb \
+ imx6sx-sdb-lcdif1.dtb \
+ imx6sx-sdb-ldo.dtb \
+ imx6sx-sdb-m4.dtb \
+ imx6sx-sdb-mqs.dtb \
+ imx6sx-sdb-pcie-ep.dtb \
+ imx6sx-sdb-reva-ldo.dtb \
+"
+
+UBOOT_MAKE_TARGET = "u-boot.imx"
+UBOOT_SUFFIX = "imx"
+
+UBOOT_CONFIG ??= " \
+ sd \
+ ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee', '', d)} \
+"
+UBOOT_CONFIG[sd] = "mx6sxsabresd_config,sdcard"
+UBOOT_CONFIG[sd-optee] = "mx6sxsabresd_optee_config,sdcard"
+UBOOT_CONFIG[emmc] = "mx6sxsabresd_emmc_config,sdcard"
+UBOOT_CONFIG[qspi2] = "mx6sxsabresd_qspi2_config"
UBOOT_CONFIG[m4fastup] = "mx6sxsabresd_m4fastup_config"
-UBOOT_CONFIG[mfgtool] = "mx6sxsabresd_config"
+UBOOT_CONFIG[mfgtool] = "mx6sxsabresd_config"
+
+OPTEE_BIN_EXT = "6sxsdb"
SERIAL_CONSOLES = "115200;ttymxc0"
MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
-MACHINE_FEATURES += " pci wifi bluetooth"
+MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"
diff --git a/conf/machine/imx6ulevk.conf b/conf/machine/imx6ulevk.conf
index 18b6b04b..f7c5d8ae 100644
--- a/conf/machine/imx6ulevk.conf
+++ b/conf/machine/imx6ulevk.conf
@@ -9,7 +9,7 @@ MACHINEOVERRIDES =. "mx6:mx6ul:"
include conf/machine/include/imx-base.inc
include conf/machine/include/tune-cortexa7.inc
-MACHINE_FEATURES += " pci wifi bluetooth"
+MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455"
KERNEL_DEVICETREE = " \
imx6ul-14x14-evk-btwifi.dtb \
@@ -23,14 +23,31 @@ KERNEL_DEVICETREE = " \
"
KERNEL_DEVICETREE_use-mainline-bsp = "imx6ul-14x14-evk.dtb"
-# Use fslc u-boot by default. See also imx-base.inc.
-UBOOT_MAKE_TARGET = ""
-UBOOT_SUFFIX = "img"
-SPL_BINARY = "SPL"
-WKS_FILE = "imx-uboot-spl-bootpart.wks.in"
-
-UBOOT_CONFIG ??= "sd"
-UBOOT_CONFIG[sd] = "mx6ul_14x14_evk_config,sdcard"
-UBOOT_CONFIG[emmc] = "mx6ul_14x14_evk_emmc_config,sdcard"
-UBOOT_CONFIG[qspi1] = "mx6ul_14x14_evk_qspi1_config"
-UBOOT_CONFIG[mfgtool] = "mx6ul_14x14_evk_config"
+### u-boot-fslc settings ###
+
+SPL_BINARY_pn-u-boot-fslc = "SPL"
+UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+
+### u-boot-imx settings ###
+
+# The u-boot-imx does not provide SPL support
+SPL_BINARY_pn-u-boot-imx = ""
+UBOOT_MAKE_TARGET_pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+
+WKS_FILE = " \
+ ${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
+ 'u-boot-fslc', 'imx-uboot-spl-bootpart.wks.in', \
+ 'imx-uboot-bootpart.wks.in', d)}"
+
+UBOOT_CONFIG ??= " \
+ sd \
+ ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee', '', d)} \
+"
+UBOOT_CONFIG[sd] = "mx6ul_14x14_evk_config,sdcard"
+UBOOT_CONFIG[sd-optee] = "mx6ul_14x14_evk_optee_config,sdcard"
+UBOOT_CONFIG[emmc] = "mx6ul_14x14_evk_emmc_config,sdcard"
+UBOOT_CONFIG[qspi1] = "mx6ul_14x14_evk_qspi1_config"
+UBOOT_CONFIG[mfgtool] = "mx6ul_14x14_evk_config"
+
+OPTEE_BIN_EXT = "6ulevk"
diff --git a/conf/machine/imx6ullevk.conf b/conf/machine/imx6ullevk.conf
index 1b31c2f7..bd592a20 100644
--- a/conf/machine/imx6ullevk.conf
+++ b/conf/machine/imx6ullevk.conf
@@ -2,13 +2,15 @@
#@NAME: NXP i.MX6ULL Evaluation Kit
#@SOC: i.MX6ULL
#@DESCRIPTION: Machine configuration for NXP i.MX6ULL EVK
-#@MAINTAINER: Alexandru Palalau <ioan-alexandru.palalau@nxp.com>
+#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
MACHINEOVERRIDES =. "mx6:mx6ull:"
include conf/machine/include/imx-base.inc
include conf/machine/include/tune-cortexa7.inc
+MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455"
+
KERNEL_DEVICETREE = " \
imx6ull-14x14-evk.dtb \
"
@@ -20,10 +22,18 @@ KERNEL_DEVICETREE_append_use-nxp-bsp = " \
imx6ull-14x14-evk-gpmi-weim.dtb \
"
-UBOOT_CONFIG ??= "sd"
-UBOOT_CONFIG[sd] = "mx6ull_14x14_evk_config,sdcard"
-UBOOT_CONFIG[mfgtool] = "mx6ull_14x14_evk_config"
+UBOOT_MAKE_TARGET = "u-boot.imx"
+UBOOT_SUFFIX = "imx"
-SERIAL_CONSOLES = "115200;ttymxc0"
+UBOOT_CONFIG ??= " \
+ sd \
+ ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee', '', d)} \
+"
+UBOOT_CONFIG[sd] = "mx6ull_14x14_evk_config,sdcard"
+UBOOT_CONFIG[sd-optee] = "mx6ull_14x14_evk_optee_config,sdcard"
+UBOOT_CONFIG[emmc] = "mx6ull_14x14_evk_emmc_config,sdcard"
+UBOOT_CONFIG[nand] = "mx6ull_14x14_evk_nand_config,ubifs"
+UBOOT_CONFIG[qspi1] = "mx6ull_14x14_evk_qspi1_config"
+UBOOT_CONFIG[mfgtool] = "mx6ull_14x14_evk_config"
-MACHINE_FEATURES += "wifi bluetooth"
+OPTEE_BIN_EXT = "6ullevk"
diff --git a/conf/machine/imx6ulz-14x14-evk.conf b/conf/machine/imx6ulz-14x14-evk.conf
new file mode 100644
index 00000000..7b794e7c
--- /dev/null
+++ b/conf/machine/imx6ulz-14x14-evk.conf
@@ -0,0 +1,36 @@
+#@TYPE: Machine
+#@NAME: NXP i.MX6ULZ 14x14 Evaluation Kit
+#@SOC: i.MX6ULZ
+#@DESCRIPTION: Machine configuration for NXP i.MX6ULZ 14x14 EVK
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+MACHINEOVERRIDES =. "mx6:mx6ul:mx6ull:mx6ulz:"
+
+include conf/machine/include/imx-base.inc
+include conf/machine/include/tune-cortexa7.inc
+
+MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455"
+
+KERNEL_DEVICETREE = " \
+ imx6ulz-14x14-evk.dtb \
+"
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+ imx6ulz-14x14-evk-btwifi.dtb \
+ imx6ulz-14x14-evk-emmc.dtb \
+ imx6ulz-14x14-evk-gpmi-weim.dtb \
+"
+
+UBOOT_MAKE_TARGET = "u-boot.imx"
+UBOOT_SUFFIX = "imx"
+
+UBOOT_CONFIG ??= " \
+ sd \
+ ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee', '', d)} \
+"
+UBOOT_CONFIG[sd] = "mx6ulz_14x14_evk_config,sdcard"
+UBOOT_CONFIG[sd-optee] = "mx6ulz_14x14_evk_optee_config,sdcard"
+UBOOT_CONFIG[emmc] = "mx6ulz_14x14_evk_emmc_config,sdcard"
+UBOOT_CONFIG[nand] = "mx6ulz_14x14_evk_nand_config,ubifs"
+UBOOT_CONFIG[qspi1] = "mx6ulz_14x14_evk_qspi1_config"
+
+OPTEE_BIN_EXT = "6ulzevk"
diff --git a/conf/machine/imx7dsabresd.conf b/conf/machine/imx7dsabresd.conf
index 84de3862..e848f294 100644
--- a/conf/machine/imx7dsabresd.conf
+++ b/conf/machine/imx7dsabresd.conf
@@ -9,25 +9,36 @@ MACHINEOVERRIDES =. "mx7:mx7d:"
require conf/machine/include/imx-base.inc
require conf/machine/include/tune-cortexa7.inc
-MACHINE_FEATURES += " pci wifi bluetooth"
+MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"
-KERNEL_DEVICETREE = " \
- imx7d-sdb.dtb \
+KERNEL_DEVICETREE = "imx7d-sdb.dtb"
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
imx7d-sdb-epdc.dtb \
imx7d-sdb-gpmi-weim.dtb \
imx7d-sdb-m4.dtb \
imx7d-sdb-mipi-dsi.dtb \
+ imx7d-sdb-pcie-ep.dtb \
imx7d-sdb-qspi.dtb \
imx7d-sdb-reva.dtb \
imx7d-sdb-sht11.dtb \
+ imx7d-sdb-usd-wifi.dtb \
"
-KERNEL_DEVICETREE_use-mainline-bsp = "imx7d-sdb.dtb"
+UBOOT_MAKE_TARGET = "u-boot.imx"
+UBOOT_SUFFIX = "imx"
-UBOOT_CONFIG ??= "sd"
-UBOOT_CONFIG[sd] = "mx7dsabresd_config,sdcard"
-UBOOT_CONFIG[qspi1] = "mx7dsabresd_qspi1_config"
-UBOOT_CONFIG[nand] = "mx7dsabresd_nand_config,ubifs"
-UBOOT_CONFIG[epdc] = "mx7dsabresd_epdc_config"
-UBOOT_CONFIG[mfgtool] = "mx7dsabresd_config"
+UBOOT_CONFIG ??= " \
+ sd \
+ ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee', '', d)} \
+"
+UBOOT_CONFIG[sd] = "mx7dsabresd_config,sdcard"
+UBOOT_CONFIG[sd-optee] = "mx7dsabresd_optee_config,sdcard"
+UBOOT_CONFIG[nonsec] = "mx7dsabresd_nonsec_config,sdcard"
+UBOOT_CONFIG[qspi1] = "mx7dsabresd_qspi1_config"
+UBOOT_CONFIG[nand] = "mx7dsabresd_nand_config,ubifs"
+UBOOT_CONFIG[epdc] = "mx7dsabresd_epdc_config"
+UBOOT_CONFIG[mfgtool] = "mx7dsabresd_config"
+
+OPTEE_BIN_EXT = "7dsdb"
+XSERVER += "mesa-driver-swrast"
diff --git a/conf/machine/imx7ulpevk.conf b/conf/machine/imx7ulpevk.conf
index d9d2a559..a587f44b 100644
--- a/conf/machine/imx7ulpevk.conf
+++ b/conf/machine/imx7ulpevk.conf
@@ -9,9 +9,17 @@ MACHINEOVERRIDES =. "mx7:mx7ulp:"
require conf/machine/include/imx-base.inc
require conf/machine/include/tune-cortexa7.inc
-MACHINE_FEATURES += " pci wifi bluetooth qca9377"
+MACHINE_FEATURES += "pci wifi bluetooth bcm43430"
KERNEL_DEVICETREE = " \
+ imx7ulp-evk.dtb \
+"
+KERNEL_DEVICETREE_append_use-mainline-bsp = " \
+ imx7ulp-com.dtb \
+"
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+ imx7ulp-evk-ft5416.dtb \
+ imx7ulp-evk-mipi.dtb \
imx7ulp-evkb.dtb \
imx7ulp-evkb-emmc.dtb \
imx7ulp-evkb-lpuart.dtb \
@@ -21,15 +29,21 @@ KERNEL_DEVICETREE = " \
imx7ulp-evkb-sd1.dtb \
imx7ulp-evkb-sensors-to-i2c5.dtb \
imx7ulp-evkb-spi-slave.dtb \
- imx7ulp-evk.dtb \
- imx7ulp-evk-ft5416.dtb \
- imx7ulp-evk-mipi.dtb \
"
-UBOOT_CONFIG ??= "sd"
-UBOOT_CONFIG[sd] = "mx7ulp_evk_config,sdcard"
-UBOOT_CONFIG[emmc] = "mx7ulp_evk_emmc_config,sdcard"
-UBOOT_CONFIG[mfgtool] = "mx7ulp_evk_config"
+UBOOT_MAKE_TARGET = "u-boot.imx"
+UBOOT_SUFFIX = "imx"
+
+UBOOT_CONFIG ??= " \
+ sd \
+ ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee', '', d)} \
+"
+UBOOT_CONFIG[sd] = "mx7ulp_evk_config,sdcard"
+UBOOT_CONFIG[sd-optee] = "mx7ulp_evk_optee_config,sdcard"
+UBOOT_CONFIG[emmc] = "mx7ulp_evk_emmc_config,sdcard"
+UBOOT_CONFIG[mfgtool] = "mx7ulp_evk_config"
+
+OPTEE_BIN_EXT = "7ulp"
# Set Serial console
SERIAL_CONSOLES = "115200;ttyLP0"
diff --git a/conf/machine/imx8dx-mek.conf b/conf/machine/imx8dx-mek.conf
new file mode 100644
index 00000000..842ba1fa
--- /dev/null
+++ b/conf/machine/imx8dx-mek.conf
@@ -0,0 +1,12 @@
+#@TYPE: Machine
+#@NAME: i.MX 8DXP MEK
+#@DESCRIPTION: i.MX 8DualXPlus Multisensory Enablement Kit board
+#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
+
+MACHINEOVERRIDES =. "mx8qxp:mx8dx:"
+
+require include/imx8x-mek.inc
+
+KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
+
+UBOOT_CONFIG_BASENAME = "imx8dx_mek"
diff --git a/conf/machine/imx8dxl-evk.conf b/conf/machine/imx8dxl-evk.conf
new file mode 100644
index 00000000..5d177aa3
--- /dev/null
+++ b/conf/machine/imx8dxl-evk.conf
@@ -0,0 +1,64 @@
+#@TYPE: Machine
+#@NAME: i.MX 8DXL EVK
+#@DESCRIPTION: i.MX 8DXLite Evaluation Kit (EVK) board
+#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
+
+MACHINEOVERRIDES =. "mx8:mx8x:mx8dxl:"
+
+require conf/machine/include/imx-base.inc
+require conf/machine/include/tune-cortexa35.inc
+
+MACHINE_FEATURES += "pci bcm43455 bcm4356"
+MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+
+# Don't include kernels in standard images
+RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
+
+LOADADDR = ""
+
+# Disable the serial console due to auto-serial-console
+SERIAL_CONSOLES = "115200;ttyLP0"
+
+# we do not want to have getty running on tty1 as we run
+# auto-serial-console there
+USE_VT = "0"
+
+KERNEL_DEVICETREE = "freescale/imx8dxl-evk.dtb"
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+ freescale/imx8dxl-evk-enet0.dtb \
+ freescale/imx8dxl-evk-enet0-tja1100.dtb \
+ freescale/imx8dxl-evk-inmate.dtb \
+ freescale/imx8dxl-evk-lpspi-slave.dtb \
+ freescale/imx8dxl-evk-pcie-ep.dtb \
+ freescale/imx8dxl-evk-root.dtb \
+ freescale/imx8dxl-evk-rpmsg.dtb \
+"
+
+ATF_PLATFORM = "imx8dxl"
+IMX_BOOT_SOC_TARGET = "iMX8DXL"
+
+# This machine is not supported by u-boot-fslc, so we force it to use
+# u-boot-imx here.
+IMX_DEFAULT_BOOTLOADER = "u-boot-imx"
+
+UBOOT_MAKE_TARGET = "all"
+SPL_BINARY = "spl/u-boot-spl.bin"
+UBOOT_SUFFIX = "bin"
+
+UBOOT_CONFIG ??= "sd"
+UBOOT_CONFIG[sd] = "imx8dxl_evk_defconfig,sdcard"
+UBOOT_CONFIG[fspi] = "imx8dxl_evk_fspi_defconfig"
+
+IMX_BOOT_SEEK = "32"
+
+IMXBOOT_TARGETS_SD = \
+ "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl', \
+ 'flash', d)}"
+IMXBOOT_TARGETS_FSPI = \
+ "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl_flexspi', \
+ 'flash_flexspi', d)}"
+IMXBOOT_TARGETS = \
+ "${@bb.utils.contains('UBOOT_CONFIG', 'sd', '${IMXBOOT_TARGETS_SD}', \
+ '${IMXBOOT_TARGETS_FSPI}', d)}"
+
+BOARD_TYPE = "evk"
diff --git a/conf/machine/imx8mm-ddr4-evk.conf b/conf/machine/imx8mm-ddr4-evk.conf
new file mode 100644
index 00000000..3901bb92
--- /dev/null
+++ b/conf/machine/imx8mm-ddr4-evk.conf
@@ -0,0 +1,25 @@
+#@TYPE: Machine
+#@NAME: NXP i.MX 8M Mini EVK with DDR4
+#@SOC: i.MX8MM
+#@DESCRIPTION: Machine configuration for NXP i.MX 8M Mini Evaluation Kit with DDR4
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+require include/imx8mm-evk.inc
+
+KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67191.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-revb.dtb \
+"
+
+UBOOT_CONFIG_BASENAME = "imx8mm_ddr4_evk"
+UBOOT_CONFIG[nand] = "${UBOOT_CONFIG_BASENAME}_nand_defconfig,ubifs"
+
+DDR_FIRMWARE_NAME = " \
+ ddr4_imem_1d.bin \
+ ddr4_dmem_1d.bin \
+ ddr4_imem_2d.bin \
+ ddr4_dmem_2d.bin \
+"
+
+IMXBOOT_TARGETS_BASENAME = "flash_ddr4_evk"
diff --git a/conf/machine/imx8mm-lpddr4-evk.conf b/conf/machine/imx8mm-lpddr4-evk.conf
new file mode 100644
index 00000000..6007c540
--- /dev/null
+++ b/conf/machine/imx8mm-lpddr4-evk.conf
@@ -0,0 +1,36 @@
+#@TYPE: Machine
+#@NAME: NXP i.MX 8M Mini EVK with LPDDR4
+#@SOC: i.MX8MM
+#@DESCRIPTION: Machine configuration for NXP i.MX 8M Mini Evaluation Kit with LPDDR4
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+require include/imx8mm-evk.inc
+
+# The device tree name is implicit for LPDDR4, so can't use MACHINE here
+KERNEL_DEVICETREE_BASENAME = "imx8mm-evk"
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-revE.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-swpdm.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-ak4497.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-ak5558.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-audio-tdm.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-qca-wifi.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-revb-qca-wifi.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-root.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-usd-wifi.dtb \
+"
+
+
+UBOOT_CONFIG_BASENAME = "imx8mm_evk"
+UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_fspi_defconfig"
+
+DDR_FIRMWARE_NAME = " \
+ lpddr4_pmu_train_1d_imem.bin \
+ lpddr4_pmu_train_1d_dmem.bin \
+ lpddr4_pmu_train_2d_imem.bin \
+ lpddr4_pmu_train_2d_dmem.bin \
+"
+
+IMXBOOT_TARGETS_BASENAME = "flash_evk"
diff --git a/conf/machine/imx8mmevk.conf b/conf/machine/imx8mmevk.conf
deleted file mode 100644
index db722c72..00000000
--- a/conf/machine/imx8mmevk.conf
+++ /dev/null
@@ -1,58 +0,0 @@
-#@TYPE: Machine
-#@NAME: NXP i.MX8MM LPDDR4 Evaluation Kit and i.MX8MM DDR4 Evaluation Kit
-#@SOC: i.MX8MM
-#@DESCRIPTION: Machine configuration for NXP i.MX8MMini LPDDR4 EVK and i.MX8MMini DDR4 EVK
-#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
-
-MACHINEOVERRIDES =. "mx8:mx8m:mx8mm:"
-
-require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa53.inc
-
-IMX_DEFAULT_BSP = "nxp"
-
-MACHINE_FEATURES += " pci wifi bluetooth optee qca9377"
-
-KERNEL_DEVICETREE = " \
- freescale/imx8mm-ddr4-evk.dtb \
- freescale/imx8mm-ddr4-evk-revb.dtb \
- freescale/imx8mm-ddr4-evk-revb-rm67191.dtb \
- freescale/imx8mm-ddr4-evk-rm67191.dtb \
- freescale/imx8mm-evk-ak4497.dtb \
- freescale/imx8mm-evk-ak5558.dtb \
- freescale/imx8mm-evk-audio-tdm.dtb \
- freescale/imx8mm-evk.dtb \
- freescale/imx8mm-evk-inmate.dtb \
- freescale/imx8mm-evk-revb.dtb \
- freescale/imx8mm-evk-rm67191.dtb \
- freescale/imx8mm-evk-root.dtb \
- freescale/imx8mm-evk-rpmsg.dtb \
-"
-
-UBOOT_CONFIG ??= "sd"
-UBOOT_CONFIG[sd] = "imx8mm_evk_config,sdcard"
-UBOOT_CONFIG[fspi] = "imx8mm_evk_fspi_defconfig"
-UBOOT_CONFIG[mfgtool] = "imx8mm_evk_config"
-SPL_BINARY = "spl/u-boot-spl.bin"
-
-# Set DDR FIRMWARE
-DDR_FIRMWARE_NAME = "lpddr4_pmu_train_1d_imem.bin lpddr4_pmu_train_1d_dmem.bin lpddr4_pmu_train_2d_imem.bin lpddr4_pmu_train_2d_dmem.bin"
-
-# Set u-boot DTB
-UBOOT_DTB_NAME = "imx8mm-evk.dtb"
-
-# Set imx-mkimage boot target
-IMXBOOT_TARGETS = "${@bb.utils.contains('UBOOT_CONFIG', 'fspi', 'flash_evk_flexspi', 'flash_evk', d)}"
-
-# Set Serial console
-SERIAL_CONSOLES = "115200;ttymxc1"
-
-LOADADDR = ""
-UBOOT_SUFFIX = "bin"
-UBOOT_MAKE_TARGET = ""
-IMX_BOOT_SEEK = "33"
-
-OPTEE_BIN_EXT = "8mm"
-
-# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
diff --git a/conf/machine/imx8mn-ddr4-evk.conf b/conf/machine/imx8mn-ddr4-evk.conf
new file mode 100644
index 00000000..442afdbd
--- /dev/null
+++ b/conf/machine/imx8mn-ddr4-evk.conf
@@ -0,0 +1,22 @@
+#@TYPE: Machine
+#@NAME: NXP i.MX 8M Nano Evaluation Kit with DDR4
+#@SOC: i.MX8MM
+#@DESCRIPTION: Machine configuration for NXP i.MX 8M Nano EVK with DDR4
+#@MAINTAINER: Andrey Zhizhikin <andrey.z@gmail.com>
+
+require include/imx8mn-evk.inc
+
+KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-usd-wifi.dtb \
+"
+UBOOT_CONFIG_BASENAME = "imx8mn_ddr4_evk"
+
+DDR_FIRMWARE_VERSION = "201810"
+DDR_FIRMWARE_NAME = " \
+ ddr4_imem_1d_${DDR_FIRMWARE_VERSION}.bin \
+ ddr4_dmem_1d_${DDR_FIRMWARE_VERSION}.bin \
+ ddr4_imem_2d_${DDR_FIRMWARE_VERSION}.bin \
+ ddr4_dmem_2d_${DDR_FIRMWARE_VERSION}.bin \
+"
+IMXBOOT_TARGETS_BASENAME = "flash_ddr4_evk"
diff --git a/conf/machine/imx8mn-lpddr4-evk.conf b/conf/machine/imx8mn-lpddr4-evk.conf
new file mode 100644
index 00000000..7c58bc19
--- /dev/null
+++ b/conf/machine/imx8mn-lpddr4-evk.conf
@@ -0,0 +1,21 @@
+#@TYPE: Machine
+#@NAME: NXP i.MX 8M Nano Evaluation Kit with LPDDR4
+#@SOC: i.MX8MN
+#@DESCRIPTION: Machine configuration for NXP i.MX 8M Nano EVK with LPDDR4
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+require include/imx8mn-evk.inc
+
+# The device tree name is implicit for LPDDR4, so can't use MACHINE here
+KERNEL_DEVICETREE_BASENAME = "imx8mn-evk"
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-revE.dtb \
+"
+UBOOT_CONFIG_BASENAME = "imx8mn_evk"
+DDR_FIRMWARE_NAME = " \
+ lpddr4_pmu_train_1d_imem.bin \
+ lpddr4_pmu_train_1d_dmem.bin \
+ lpddr4_pmu_train_2d_imem.bin \
+ lpddr4_pmu_train_2d_dmem.bin \
+"
+IMXBOOT_TARGETS_BASENAME = "flash_evk"
diff --git a/conf/machine/imx8mnevk.conf b/conf/machine/imx8mnevk.conf
deleted file mode 100644
index 80d77ac8..00000000
--- a/conf/machine/imx8mnevk.conf
+++ /dev/null
@@ -1,60 +0,0 @@
-#@TYPE: Machine
-#@NAME: NXP i.MX8M Nano DDR4 Evaluation Kit
-#@SOC: i.MX8MM
-#@DESCRIPTION: Machine configuration for NXP i.MX8M Nano DDR4 EVK
-#@MAINTAINER: Andrey Zhizhikin <andrey.z@gmail.com>
-
-MACHINEOVERRIDES =. "mx8:mx8m:mx8mn:"
-
-require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa53.inc
-
-IMX_DEFAULT_BSP = "nxp"
-
-MACHINE_FEATURES += "wifi bluetooth optee bcm43455"
-
-KERNEL_DEVICETREE = " \
- freescale/imx8mn-ddr4-evk-ak5558.dtb \
- freescale/imx8mn-ddr4-evk.dtb \
- freescale/imx8mn-ddr4-evk-inmate.dtb \
- freescale/imx8mn-ddr4-evk-rm67191.dtb \
- freescale/imx8mn-ddr4-evk-root.dtb \
- freescale/imx8mn-ddr4-evk-rpmsg.dtb \
- freescale/imx8mn-evk.dtb \
- freescale/imx8mn-evk-rm67191.dtb \
-"
-
-UBOOT_CONFIG ??= "sd"
-UBOOT_CONFIG[sd] = "imx8mn_ddr4_evk_defconfig,sdcard"
-UBOOT_CONFIG[mfgtool] = "imx8mn_ddr4_evk_defconfig"
-SPL_BINARY = "spl/u-boot-spl.bin"
-
-# Set DDR FIRMWARE
-DDR_FIRMWARE_NAME = "ddr4_imem_1d_201810.bin \
- ddr4_dmem_1d_201810.bin \
- ddr4_imem_2d_201810.bin \
- ddr4_dmem_2d_201810.bin"
-
-# Set u-boot DTB
-UBOOT_DTB_NAME = "imx8mn-ddr4-evk.dtb"
-
-# Set imx-mkimage boot target
-IMXBOOT_TARGETS = "${@bb.utils.contains('UBOOT_CONFIG', 'fspi', 'flash_ddr4_evk_flexspi', 'flash_ddr4_evk', d)}"
-
-# Set Serial console
-SERIAL_CONSOLES = "115200;ttymxc1"
-
-BOOT_SPACE = "65536"
-LOADADDR = ""
-UBOOT_SUFFIX = "bin"
-UBOOT_MAKE_TARGET = ""
-
-# Image boot offset as defined in section 6.1.6.1 "Primary image offset and IVT offset" of
-# i.MX 8M Nano Applications Processor Reference Manual, Rev. 0, 12/2019
-# Doc ID: IMX8MNRM
-IMX_BOOT_SEEK = "32"
-
-OPTEE_BIN_EXT = "8mn"
-
-# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
diff --git a/conf/machine/imx8mp-ddr4-evk.conf b/conf/machine/imx8mp-ddr4-evk.conf
new file mode 100644
index 00000000..09517769
--- /dev/null
+++ b/conf/machine/imx8mp-ddr4-evk.conf
@@ -0,0 +1,27 @@
+#@TYPE: Machine
+#@NAME: NXP i.MX 8M Plus EVK with DDR4
+#@SOC: i.MX8MP
+#@DESCRIPTION: Machine configuration for NXP i.MX 8M Plus Evaluation Kit with DDR4
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+require include/imx8mp-evk.inc
+
+# FIXME: This machine is not yet supported by u-boot-fslc, so for now
+# use u-boot-imx for mainline.
+IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-imx"
+
+KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
+
+UBOOT_CONFIG_BASENAME = "imx8mp_ddr4_evk"
+UBOOT_CONFIG[nand] = "${UBOOT_CONFIG_BASENAME}_nand_defconfig"
+
+# Set DDR FIRMWARE
+DDR_FIRMWARE_VERSION = "202006"
+DDR_FIRMWARE_NAME = " \
+ ddr4_dmem_1d_${DDR_FIRMWARE_VERSION}.bin \
+ ddr4_imem_1d_${DDR_FIRMWARE_VERSION}.bin \
+ ddr4_dmem_2d_${DDR_FIRMWARE_VERSION}.bin \
+ ddr4_imem_2d_${DDR_FIRMWARE_VERSION}.bin \
+"
+
+IMXBOOT_TARGETS_BASENAME = "flash_ddr4_evk"
diff --git a/conf/machine/imx8mp-lpddr4-evk.conf b/conf/machine/imx8mp-lpddr4-evk.conf
new file mode 100644
index 00000000..6484da7c
--- /dev/null
+++ b/conf/machine/imx8mp-lpddr4-evk.conf
@@ -0,0 +1,47 @@
+#@TYPE: Machine
+#@NAME: NXP i.MX 8M Plus EVK with LPDDR4
+#@SOC: i.MX8MP
+#@DESCRIPTION: Machine configuration for NXP i.MX 8M Plus Evaluation Kit with LPDDR4
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+require include/imx8mp-evk.inc
+
+# The device tree name is implicit for LPDDR4, so can't use MACHINE here
+KERNEL_DEVICETREE_BASENAME = "imx8mp-evk"
+
+# NXP kernel has additional DTB files for various board configuration and
+# derivates. Include them here for NXP BSP only
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+ freescale/imx8mp-ab2.dtb \
+ freescale/imx8mp-evk-basler.dtb \
+ freescale/imx8mp-evk-basler-ov5640.dtb \
+ freescale/imx8mp-evk-dsp.dtb \
+ freescale/imx8mp-evk-dsp-lpa.dtb \
+ freescale/imx8mp-evk-dual-ov2775.dtb \
+ freescale/imx8mp-evk-flexcan2.dtb \
+ freescale/imx8mp-evk-inmate.dtb \
+ freescale/imx8mp-evk-it6263-lvds-dual-channel.dtb \
+ freescale/imx8mp-evk-jdi-wuxga-lvds-panel.dtb \
+ freescale/imx8mp-evk-ov2775.dtb \
+ freescale/imx8mp-evk-ov2775-ov5640.dtb \
+ freescale/imx8mp-evk-pcie-ep.dtb \
+ freescale/imx8mp-evk-rm67191.dtb \
+ freescale/imx8mp-evk-root.dtb \
+ freescale/imx8mp-evk-rpmsg.dtb \
+ freescale/imx8mp-evk-sof-wm8960.dtb \
+ freescale/imx8mp-evk-spdif-lb.dtb \
+"
+
+UBOOT_CONFIG_BASENAME = "imx8mp_evk"
+UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_defconfig"
+
+# Set DDR FIRMWARE
+DDR_FIRMWARE_VERSION = "202006"
+DDR_FIRMWARE_NAME = " \
+ lpddr4_pmu_train_1d_dmem_${DDR_FIRMWARE_VERSION}.bin \
+ lpddr4_pmu_train_1d_imem_${DDR_FIRMWARE_VERSION}.bin \
+ lpddr4_pmu_train_2d_dmem_${DDR_FIRMWARE_VERSION}.bin \
+ lpddr4_pmu_train_2d_imem_${DDR_FIRMWARE_VERSION}.bin \
+"
+
+IMXBOOT_TARGETS_BASENAME = "flash_evk"
diff --git a/conf/machine/imx8mqevk.conf b/conf/machine/imx8mq-evk.conf
index 2c9c8c29..9907ef4b 100644
--- a/conf/machine/imx8mqevk.conf
+++ b/conf/machine/imx8mq-evk.conf
@@ -1,8 +1,8 @@
#@TYPE: Machine
-#@NAME: NXP i.MX8MQ Evaluation Kit
+#@NAME: NXP i.MX 8M Quad EVK
#@SOC: i.MX8MQ
-#@DESCRIPTION: Machine configuration for NXP i.MX8MQ EVK
-#@MAINTAINER: Alexandru Palalau <ioan-alexandru.palalau@nxp.com>
+#@DESCRIPTION: Machine configuration for NXP i.MX 8M Quad Evaluation Kit
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
MACHINEOVERRIDES =. "mx8:mx8m:mx8mq:"
@@ -11,43 +11,63 @@ require conf/machine/include/tune-cortexa53.inc
IMX_DEFAULT_BSP = "nxp"
-MACHINE_FEATURES += "pci wifi bluetooth optee qca6174"
+MACHINE_FEATURES += "pci wifi bluetooth optee bcm43455 bcm4356"
+MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
MACHINE_SOCARCH_FILTER_append_mx8mq = " virtual/libopenvg virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa virtual/libgl virtual/libg2d"
KERNEL_DEVICETREE = " \
+ freescale/imx8mq-evk.dtb \
+"
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
freescale/imx8mq-evk-ak4497.dtb \
freescale/imx8mq-evk-audio-tdm.dtb \
freescale/imx8mq-evk-dcss-adv7535.dtb \
freescale/imx8mq-evk-dcss-rm67191.dtb \
+ freescale/imx8mq-evk-dcss-rm67199.dtb \
freescale/imx8mq-evk-dp.dtb \
- freescale/imx8mq-evk.dtb \
freescale/imx8mq-evk-dual-display.dtb \
freescale/imx8mq-evk-inmate.dtb \
freescale/imx8mq-evk-lcdif-adv7535.dtb \
freescale/imx8mq-evk-lcdif-rm67191.dtb \
+ freescale/imx8mq-evk-lcdif-rm67199.dtb \
+ freescale/imx8mq-evk-pcie-ep.dtb \
freescale/imx8mq-evk-pcie1-m2.dtb \
freescale/imx8mq-evk-pdm.dtb \
freescale/imx8mq-evk-root.dtb \
freescale/imx8mq-evk-rpmsg.dtb \
+ freescale/imx8mq-evk-usd-wifi.dtb \
+ freescale/imx8mq-evk-usdhc2-m2.dtb \
"
+IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+
+UBOOT_SUFFIX = "bin"
+
UBOOT_CONFIG ??= "sd"
-UBOOT_CONFIG[sd] = "imx8mq_evk_config,sdcard"
-UBOOT_CONFIG[mfgtool] = "imx8mq_evk_config"
+UBOOT_CONFIG[sd] = "imx8mq_evk_config,sdcard"
+UBOOT_CONFIG[mfgtool] = "imx8mq_evk_config"
+
SPL_BINARY = "spl/u-boot-spl.bin"
# Set DDR FIRMWARE
-DDR_FIRMWARE_NAME = "lpddr4_pmu_train_1d_imem.bin lpddr4_pmu_train_1d_dmem.bin lpddr4_pmu_train_2d_imem.bin lpddr4_pmu_train_2d_dmem.bin"
+DDR_FIRMWARE_NAME = " \
+ lpddr4_pmu_train_1d_imem.bin \
+ lpddr4_pmu_train_1d_dmem.bin \
+ lpddr4_pmu_train_2d_imem.bin \
+ lpddr4_pmu_train_2d_dmem.bin \
+"
# Set u-boot DTB
UBOOT_DTB_NAME = "imx8mq-evk.dtb"
+# Set ATF platform name
+ATF_PLATFORM = "imx8mq"
+
# Set imx-mkimage boot target
IMXBOOT_TARGETS = "flash_evk flash_evk_no_hdmi flash_dp_evk"
-
-# Set Serial console
-SERIAL_CONSOLES = "115200;ttymxc0"
+IMX_BOOT_SOC_TARGET = "iMX8M"
LOADADDR = ""
UBOOT_SUFFIX = "bin"
diff --git a/conf/machine/imx8qm-mek.conf b/conf/machine/imx8qm-mek.conf
new file mode 100644
index 00000000..5ceb6b8b
--- /dev/null
+++ b/conf/machine/imx8qm-mek.conf
@@ -0,0 +1,89 @@
+#@TYPE: Machine
+#@NAME: i.MX 8QM MEK
+#@DESCRIPTION: i.MX 8QuadMax Multisensory Enablement Kit board, rev B0
+#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
+
+MACHINEOVERRIDES =. "mx8:mx8qm:"
+
+require conf/machine/include/imx-base.inc
+require conf/machine/include/tune-cortexa72-cortexa53.inc
+
+IMX_DEFAULT_BSP = "nxp"
+
+MACHINE_FEATURES += "pci optee bcm43455 bcm4356"
+MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+
+# Don't include kernels in standard images
+RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
+
+LOADADDR = ""
+
+# We have to disable SERIAL_CONSOLE due to auto-serial-console
+SERIAL_CONSOLES = "115200;ttyAMA0"
+
+# we do not want to have getty running on tty1 as we run
+# auto-serial-console there
+USE_VT = "0"
+
+KERNEL_DEVICETREE = " \
+ freescale/imx8qm-mek.dtb \
+ freescale/imx8qm-mek-ca53.dtb \
+ freescale/imx8qm-mek-ca72.dtb \
+ freescale/imx8qm-mek-dom0.dtb \
+ freescale/imx8qm-mek-domu.dtb \
+ freescale/imx8qm-mek-dsi-rm67191.dtb \
+ freescale/imx8qm-mek-dsp.dtb \
+ freescale/imx8qm-mek-enet2-tja1100.dtb \
+ freescale/imx8qm-mek-esai.dtb \
+ freescale/imx8qm-mek-hdmi.dtb \
+ freescale/imx8qm-mek-inmate.dtb \
+ freescale/imx8qm-mek-jdi-wuxga-lvds1-panel.dtb \
+ freescale/imx8qm-mek-jdi-wuxga-lvds1-panel-rpmsg.dtb \
+ freescale/imx8qm-mek-ov5640.dtb \
+ freescale/imx8qm-mek-pcie-ep.dtb \
+ freescale/imx8qm-mek-root.dtb \
+ freescale/imx8qm-mek-rpmsg.dtb \
+ freescale/imx8qm-mek-sof-cs42888.dtb \
+ freescale/imx8qm-mek-sof-wm8960.dtb \
+ freescale/imx8qm-mek-usd-wifi.dtb \
+ freescale/imx8qm-mek-usdhc3-m2.dtb \
+"
+
+UBOOT_MAKE_TARGET = \
+ "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '', \
+ 'u-boot.bin', d)}"
+SPL_BINARY = \
+ "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'spl/u-boot-spl.bin', \
+ '', d)}"
+IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+
+UBOOT_SUFFIX = "bin"
+
+UBOOT_CONFIG ??= "sd"
+UBOOT_CONFIG[sd] = "imx8qm_mek_defconfig,sdcard"
+UBOOT_CONFIG[fspi] = "imx8qm_mek_fspi_defconfig"
+UBOOT_CONFIG[mfgtool] = "imx8qm_mek_defconfig"
+
+IMX_BOOT_SEEK = "32"
+
+IMAGE_BOOT_FILES += "hdmitxfw.bin hdmirxfw.bin dpfw.bin"
+
+# Set ATF platform name
+ATF_PLATFORM = "imx8qm"
+
+IMXBOOT_TARGETS_SD = \
+ "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl', \
+ 'flash flash_ca72', d)}"
+IMXBOOT_TARGETS_FSPI = \
+ "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl_flexspi', \
+ 'flash_flexspi', d)}"
+IMXBOOT_TARGETS = \
+ "${@bb.utils.contains('UBOOT_CONFIG', 'sd', '${IMXBOOT_TARGETS_SD}', \
+ '${IMXBOOT_TARGETS_FSPI}', d)}"
+IMX_BOOT_SOC_TARGET = "iMX8QM"
+
+BOARD_TYPE = "mek"
+
+# Add additional firmware
+MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
diff --git a/conf/machine/imx8qmmek.conf b/conf/machine/imx8qmmek.conf
deleted file mode 100644
index 4e459a5e..00000000
--- a/conf/machine/imx8qmmek.conf
+++ /dev/null
@@ -1,63 +0,0 @@
-#@TYPE: Machine
-#@NAME: i.MX 8QM MEK
-#@DESCRIPTION: i.MX 8QuadMax MEK board
-#@MAINTAINER: Alexandru Palalau <ioan-alexandru.palalau@nxp.com>
-
-MACHINEOVERRIDES =. "mx8:mx8qm:"
-
-require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa72-cortexa53.inc
-
-IMX_DEFAULT_BSP = "nxp"
-
-MACHINE_FEATURES_append = " qca6174"
-
-# Don't include kernels in standard images
-RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
-
-LOADADDR = ""
-
-# We have to disable SERIAL_CONSOLE due to auto-serial-console
-SERIAL_CONSOLES = "115200;ttyAMA0"
-
-# we do not want to have getty running on tty1 as we run
-# auto-serial-console there
-USE_VT = "0"
-
-KERNEL_DEVICETREE = " \
- freescale/imx8qm-mek-ca53.dtb \
- freescale/imx8qm-mek-ca72.dtb \
- freescale/imx8qm-mek-dom0.dtb \
- freescale/imx8qm-mek-domu.dtb \
- freescale/imx8qm-mek-dsi-rm67191.dtb \
- freescale/imx8qm-mek-dsp.dtb \
- freescale/imx8qm-mek.dtb \
- freescale/imx8qm-mek-enet2-tja1100.dtb \
- freescale/imx8qm-mek-hdmi.dtb \
- freescale/imx8qm-mek-inmate.dtb \
- freescale/imx8qm-mek-jdi-wuxga-lvds1-panel.dtb \
- freescale/imx8qm-mek-ov5640.dtb \
- freescale/imx8qm-mek-root.dtb \
- freescale/imx8qm-mek-rpmsg.dtb \
-"
-
-UBOOT_MAKE_TARGET = "u-boot.bin"
-UBOOT_SUFFIX = "bin"
-UBOOT_CONFIG ??= "sd"
-UBOOT_CONFIG[sd] = "imx8qm_mek_defconfig,sdcard"
-UBOOT_CONFIG[fspi] = "imx8qm_mek_fspi_defconfig"
-UBOOT_CONFIG[mfgtool] = "imx8qm_mek_defconfig"
-
-IMX_BOOT_SEEK = "33"
-
-WKS_FILE_DEPENDS_append = " firmware-imx-8"
-IMAGE_BOOT_FILES += "hdmitxfw.bin hdmirxfw.bin dpfw.bin"
-
-IMXBOOT_TARGETS = \
- "${@bb.utils.contains('UBOOT_CONFIG', 'sd', 'flash', \
- 'flash_flexspi', d)}"
-
-BOARD_TYPE = "mek"
-
-# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
diff --git a/conf/machine/imx8qxp-mek.conf b/conf/machine/imx8qxp-mek.conf
new file mode 100644
index 00000000..fe0f6727
--- /dev/null
+++ b/conf/machine/imx8qxp-mek.conf
@@ -0,0 +1,26 @@
+#@TYPE: Machine
+#@NAME: i.MX 8QXP MEK
+#@DESCRIPTION: i.MX 8QuadXPlus Multisensory Enablement Kit board
+#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
+
+MACHINEOVERRIDES =. "mx8qxp:"
+
+require include/imx8x-mek.inc
+
+KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-a0.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-dom0.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-dpu-lcdif.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-dpu-lcdif-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-enet2.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lcdif.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lcdif-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-pcie-ep.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-root.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-sof-cs42888.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-sof-wm8960.dtb \
+"
+
+UBOOT_CONFIG_BASENAME = "imx8qxp_mek"
diff --git a/conf/machine/imx8qxpmek.conf b/conf/machine/imx8qxpmek.conf
deleted file mode 100644
index 9b96c711..00000000
--- a/conf/machine/imx8qxpmek.conf
+++ /dev/null
@@ -1,63 +0,0 @@
-#@TYPE: Machine
-#@NAME: i.MX 8QXP MEK
-#@DESCRIPTION: i.MX 8QXP Multisensory Enablement Kit (MEK) board
-#@MAINTAINER: Cristinel Panfir <cristinel.panfir@nxp.com>
-
-MACHINEOVERRIDES =. "mx8:mx8x:mx8qxp:"
-
-require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa35.inc
-
-IMX_DEFAULT_BSP = "nxp"
-
-MACHINE_FEATURES_append = " qca6174"
-
-# Don't include kernels in standard images
-RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
-
-LOADADDR = ""
-
-# We have to disable SERIAL_CONSOLE due to auto-serial-console
-SERIAL_CONSOLES = "115200;ttyAMA0"
-
-# we do not want to have getty running on tty1 as we run
-# auto-serial-console there
-USE_VT = "0"
-
-KERNEL_DEVICETREE = " \
- freescale/imx8qxp-mek-a0.dtb \
- freescale/imx8qxp-mek-dom0.dtb \
- freescale/imx8qxp-mek-dsi-rm67191.dtb \
- freescale/imx8qxp-mek-dsp.dtb \
- freescale/imx8qxp-mek.dtb \
- freescale/imx8qxp-mek-enet2.dtb \
- freescale/imx8qxp-mek-enet2-tja1100.dtb \
- freescale/imx8qxp-mek-inmate.dtb \
- freescale/imx8qxp-mek-it6263-lvds0-dual-channel.dtb \
- freescale/imx8qxp-mek-it6263-lvds1-dual-channel.dtb \
- freescale/imx8qxp-mek-jdi-wuxga-lvds0-panel.dtb \
- freescale/imx8qxp-mek-jdi-wuxga-lvds1-panel.dtb \
- freescale/imx8qxp-mek-ov5640.dtb \
- freescale/imx8qxp-mek-root.dtb \
- freescale/imx8qxp-mek-rpmsg.dtb \
- freescale/imx8qxp-mek-sof-cs42888.dtb \
- freescale/imx8qxp-mek-sof-wm8960.dtb \
-"
-
-UBOOT_MAKE_TARGET = "u-boot.bin"
-UBOOT_SUFFIX = "bin"
-UBOOT_CONFIG ??= "sd"
-UBOOT_CONFIG[sd] = "imx8qxp_mek_config,sdcard"
-UBOOT_CONFIG[fspi] = "imx8qxp_mek_fspi_defconfig"
-
-IMX_BOOT_SEEK = "32"
-
-IMXBOOT_TARGETS = \
- "${@bb.utils.contains('UBOOT_CONFIG', 'sd', 'flash', \
- bb.utils.contains('UBOOT_CONFIG', 'fspi', 'flash_flexspi', \
- 'UNKNOWN', d), d)}"
-
-BOARD_TYPE = "mek"
-
-# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx-base.inc b/conf/machine/include/imx-base.inc
index 4d01bae6..d52123e2 100644
--- a/conf/machine/include/imx-base.inc
+++ b/conf/machine/include/imx-base.inc
@@ -5,10 +5,6 @@ include conf/machine/include/fsl-default-versions.inc
require conf/machine/include/utilities.inc
-# Set specific make target and binary suffix
-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.
@@ -22,40 +18,84 @@ IMX_DEFAULT_BSP_mx5 ?= "mainline"
MACHINEOVERRIDES =. "use-${IMX_DEFAULT_BSP}-bsp:"
+# UBOOT_BINARY is used inside the wks files to dynamically find the required
+# U-Boot file.
+UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
+
+# Using the 'IMX_DEFAULT_BOOTLOADER' the machine can support multiple bootloader
+# versions. This is done for NXP reference board where we support 'u-boot-fslc'
+# and 'u-boot-imx'.
+#
+# So, for example in imx6qdlsabresd, we support both flavor and for this we
+# define:
+#
+# ,----[ imx6qdlsabresd.conf ]
+# | ### u-boot-fslc settings ###
+# |
+# | SPL_BINARY_pn-u-boot-fslc = "SPL"
+# | UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabresd_defconfig"
+# | UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+# |
+# | ### u-boot-imx settings ###
+# |
+# | # The u-boot-imx does not provide unified functionality for DL/Q/QP SoC
+# | # variants. Change the defconfig to the targeted SoC variant.
+# | UBOOT_MACHINE_pn-u-boot-imx ?= "mx6qsabresd_defconfig"
+# | UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+# `----
+#
+# As result, the 'UBOOT_SUFFIX' is dynamically set based on the preferred U-Boot
+# flavor to use.
+#
+# For machines where one of the flavors is required, we can force it. An example
+# is the imx53qsb, which we define:
+#
+# ,----[ imx53qsb.conf ]
+# | # This machine is not supported by u-boot-imx as it is not tested by NXP on this
+# | # board. So we force it to use u-boot-fslc which is based on mainline here.
+# | IMX_DEFAULT_BOOTLOADER = "u-boot-fslc"
+# |
+# | UBOOT_MAKE_TARGET = "u-boot.imx"
+# | UBOOT_SUFFIX = "imx"
+# |
+# | UBOOT_MACHINE = "mx53loco_config"
+# `----
+IMX_DEFAULT_BOOTLOADER ??= "u-boot-fslc"
+UBOOT_SUFFIX ?= "${UBOOT_SUFFIX_pn-${IMX_DEFAULT_BOOTLOADER}}"
+
+IMX_DEFAULT_UBOOTTOOLS = "${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', 'u-boot-imx','u-boot-imx-tools', 'u-boot-tools', d)}"
+
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_u-boot-mfgtool ??= "${IMX_DEFAULT_BOOTLOADER}-mfgtool"
+PREFERRED_PROVIDER_u-boot-tools-native ??= "${IMX_DEFAULT_UBOOTTOOLS}-native"
+PREFERRED_PROVIDER_nativesdk-u-boot-tools ??= "nativesdk-${IMX_DEFAULT_UBOOTTOOLS}"
+PREFERRED_PROVIDER_u-boot-mkimage-native ??= "${IMX_DEFAULT_UBOOTTOOLS}-native"
+PREFERRED_PROVIDER_nativesdk-u-boot-mkimage ??= "nativesdk-${IMX_DEFAULT_UBOOTTOOLS}"
PREFERRED_PROVIDER_virtual/bootloader ??= "${IMX_DEFAULT_BOOTLOADER}"
PREFERRED_PROVIDER_u-boot-mxsboot-native ??= "u-boot-fslc-mxsboot-native"
-UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
-UBOOT_MAKE_TARGET ?= "u-boot.${UBOOT_SUFFIX}"
-UBOOT_MAKE_TARGET_mxs ?= "u-boot.sb"
-UBOOT_MAKE_TARGET_mx8 ?= ""
-
-UBOOT_SUFFIX ?= "imx"
-UBOOT_SUFFIX_mxs ?= "sb"
-UBOOT_SUFFIX_mx8 ?= "bin"
-
-UBOOT_ENTRYPOINT_mxs = "0x40008000"
-UBOOT_ENTRYPOINT_mx51 = "0x90008000"
-UBOOT_ENTRYPOINT_mx53 = "0x70008000"
-UBOOT_ENTRYPOINT_mx6 = "0x10008000"
-UBOOT_ENTRYPOINT_mx6sl = "0x80008000"
+UBOOT_ENTRYPOINT_mxs = "0x40008000"
+UBOOT_ENTRYPOINT_mx51 = "0x90008000"
+UBOOT_ENTRYPOINT_mx53 = "0x70008000"
+UBOOT_ENTRYPOINT_mx6 = "0x10008000"
+UBOOT_ENTRYPOINT_mx6sl = "0x80008000"
UBOOT_ENTRYPOINT_mx6sll = "0x80008000"
-UBOOT_ENTRYPOINT_mx6sx = "0x80008000"
+UBOOT_ENTRYPOINT_mx6sx = "0x80008000"
UBOOT_ENTRYPOINT_mx6ul = "0x10008000"
-UBOOT_ENTRYPOINT_mx6ull = "0x10008000"
-UBOOT_ENTRYPOINT_mx7 = "0x80008000"
+UBOOT_ENTRYPOINT_mx6ull = "0x10008000"
+UBOOT_ENTRYPOINT_mx6ulz = "0x10008000"
+UBOOT_ENTRYPOINT_mx7 = "0x80008000"
UBOOT_ENTRYPOINT_mx7ulp = "0x60008000"
-UBOOT_ENTRYPOINT_mx8mm = "0x40480000"
-UBOOT_ENTRYPOINT_mx8mn = "0x40480000"
-UBOOT_ENTRYPOINT_mx8mq = "0x40480000"
+UBOOT_ENTRYPOINT_mx8m = "0x40480000"
UBOOT_ENTRYPOINT_vf = "0x80008000"
+# Some derivates can utilize the boot container provided by U-Boot,
+# below variable sets that those machines which have a imx-boot-container
+# in their MACHINEOVERRIDES can inherit a imx-boot-container class
+UBOOT_PROVIDES_BOOT_CONTAINER = "0"
+UBOOT_PROVIDES_BOOT_CONTAINER_imx-boot-container = "1"
+
PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
XSERVER_DRIVER = "xf86-video-fbdev"
XSERVER_DRIVER_imxgpu2d = "xf86-video-imx-vivante"
@@ -79,12 +119,11 @@ MACHINE_EXTRA_RRECOMMENDS = "kernel-modules"
DEFAULTTUNE_mx6 ?= "cortexa9thf-neon"
DEFAULTTUNE_mx6ul ?= "cortexa7thf-neon"
DEFAULTTUNE_mx6ull ?= "cortexa7thf-neon"
+DEFAULTTUNE_mx6ulz ?= "cortexa7thf-neon"
DEFAULTTUNE_mx7 ?= "cortexa7thf-neon"
DEFAULTTUNE_vf ?= "cortexa5thf-neon"
-DEFAULTTUNE_mx8mm ?= "cortexa53-crypto"
-DEFAULTTUNE_mx8mn ?= "cortexa53-crypto"
-DEFAULTTUNE_mx8mq ?= "cortexa53-crypto"
+DEFAULTTUNE_mx8m ?= "cortexa53-crypto"
DEFAULTTUNE_mx8qm ?= "cortexa72-cortexa53-crypto"
DEFAULTTUNE_mx8qxp ?= "cortexa35-crypto"
@@ -98,13 +137,16 @@ MACHINEOVERRIDES_EXTENDER_mx6sl = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxepdc"
MACHINEOVERRIDES_EXTENDER_mx6sll = "imxfbdev:imxpxp:imxepdc"
MACHINEOVERRIDES_EXTENDER_mx6ul = "imxfbdev:imxpxp"
MACHINEOVERRIDES_EXTENDER_mx6ull = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER_mx6ulz = "imxfbdev:imxpxp:imxepdc"
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_mx8mp = "imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
MACHINEOVERRIDES_EXTENDER_mx8mq = "imxdrm:imxvpu:imxgpu:imxgpu3d"
MACHINEOVERRIDES_EXTENDER_mx8qxp = "imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER_mx8dxl = "imxfbdev"
MACHINEOVERRIDES_EXTENDER_FILTER_OUT_use-mainline-bsp = " \
imx \
@@ -117,17 +159,21 @@ MACHINEOVERRIDES_EXTENDER_FILTER_OUT_use-mainline-bsp = " \
mx6sll \
mx6ul \
mx6ull \
+ mx6ulz \
\
mx7 \
mx7d \
mx7ulp \
\
mx8 \
+ mx8m \
mx8qm \
mx8mm \
mx8mn \
+ mx8mp \
mx8mq \
mx8qxp \
+ mx8dxl \
"
# Sub-architecture support
@@ -143,11 +189,14 @@ MACHINE_SOCARCH_SUFFIX_vf60 = "-vf60"
MACHINE_SOCARCH_SUFFIX_vf50 = "-vf50"
MACHINE_SOCARCH_SUFFIX_mx6ul = "-mx6ul"
MACHINE_SOCARCH_SUFFIX_mx6ull = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX_mx6ulz = "-mx6ul"
MACHINE_SOCARCH_SUFFIX_mx8qm = "-mx8"
MACHINE_SOCARCH_SUFFIX_mx8mm = "-mx8mm"
MACHINE_SOCARCH_SUFFIX_mx8mn = "-mx8mn"
+MACHINE_SOCARCH_SUFFIX_mx8mp = "-mx8mp"
MACHINE_SOCARCH_SUFFIX_mx8mq = "-mx8m"
MACHINE_SOCARCH_SUFFIX_mx8qxp = "-mx8"
+MACHINE_SOCARCH_SUFFIX_mx8dxl = "-mx8dxl"
MACHINE_SOCARCH_SUFFIX_use-mainline-bsp = "-imx"
MACHINE_ARCH_FILTER = "virtual/kernel"
@@ -169,6 +218,7 @@ MACHINE_SOCARCH_FILTER_append_imxgpu = " \
libdrm \
cairo \
libgal-imx \
+ opencv \
pango \
"
MACHINE_SOCARCH_FILTER_append_imxgpu2d = " \
@@ -192,11 +242,13 @@ MACHINE_SOCARCH_FILTER_append_use-mainline-bsp = " \
qtbase \
"
MACHINE_SOCARCH_FILTER_append_mx6q = " \
- virtual/opencl-icd \
+ opencl-icd-loader \
+ opencl-clhpp \
opencl-headers \
"
MACHINE_SOCARCH_FILTER_append_mx8 = " \
- virtual/opencl-icd \
+ opencl-icd-loader \
+ opencl-clhpp \
opencl-headers \
"
MACHINE_SOCARCH_FILTER_append_mx8qm = " \
@@ -226,11 +278,14 @@ MACHINE_FIRMWARE_append_mx6sll = " firmware-imx-epdc"
MACHINE_FIRMWARE_append_mx6ull = " firmware-imx-epdc"
MACHINE_FIRMWARE_append_mx53 = " firmware-imx-vpu-imx53 firmware-imx-sdma-imx53"
MACHINE_FIRMWARE_append_mx51 = " firmware-imx-vpu-imx51 firmware-imx-sdma-imx51"
+MACHINE_FIRMWARE_append_mx8mm = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE_append_mx8mn = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE_append_mx8mp = " linux-firmware-imx-sdma-imx7d firmware-imx-easrc-imx8mn firmware-imx-xcvr-imx8mp firmware-sof-imx"
+MACHINE_FIRMWARE_append_mx8mq = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE_append_mx8qm = " firmware-imx-vpu-imx8"
+MACHINE_FIRMWARE_append_mx8qxp = " firmware-imx-vpu-imx8"
MACHINE_FIRMWARE_append_use-mainline-bsp = " linux-firmware-imx-sdma-imx6q linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx6q firmware-imx-vpu-imx6d"
-# FIXME: Needs addition of firmware-imx of official BSPs
-#MACHINE_FIRMWARE_append_mx8qxp = " firmware-imx-vpu-imx8qxp"
-
MACHINE_EXTRA_RRECOMMENDS += "${MACHINE_FIRMWARE}"
# Extra audio support
@@ -260,14 +315,26 @@ MACHINE_EXTRA_RRECOMMENDS += " \
"
# GStreamer 1.0 plugins
-MACHINE_GSTREAMER_1_0_PLUGIN ?= ""
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6dl ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6q ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6sl ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6sx ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6ul ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN ?= ""
+MACHINE_GSTREAMER_1_0_PLUGIN_mx6dl ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx6q ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx6sl ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx6sx ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx6ul ?= "gstreamer1.0-plugins-imx-meta"
MACHINE_GSTREAMER_1_0_PLUGIN_mx6ull ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx7d ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx7d ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx8mm ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx8mn ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx8mp ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx8mq ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx8qm ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN_mx8qxp ?= "imx-gst1.0-plugin"
+
+PREFERRED_VERSION_gstreamer1.0_mx8 ?= "1.16.2.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-base_mx8 ?= "1.16.2.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-good_mx8 ?= "1.16.3.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-bad_mx8 ?= "1.16.3.imx"
+PREFERRED_VERSION_gstreamer1.0-libav_mx8 ?= "1.16.0"
# Determines if the SoC has support for Vivante kernel driver
SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT = "0"
@@ -290,23 +357,29 @@ 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_PROVIDER_opencl-clhpp_imxgpu ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_opencl-headers_imxgpu ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_opencl-icd-loader_imxgpu ?= "imx-gpu-viv"
-PREFERRED_VERSION_weston_imx ?= "8.0.0.imx"
+PREFERRED_VERSION_weston_imx ?= "9.0.0.imx"
PREFERRED_VERSION_weston_use-mainline-bsp = ""
-PREFERRED_VERSION_wayland-protocols_mx6 ?= "1.18.imx"
-PREFERRED_VERSION_wayland-protocols_mx7 ?= "1.18.imx"
-PREFERRED_VERSION_wayland-protocols_mx8 ?= "1.18.imx"
+PREFERRED_VERSION_wayland-protocols_mx6 ?= "1.20.imx"
+PREFERRED_VERSION_wayland-protocols_mx7 ?= "1.20.imx"
+PREFERRED_VERSION_wayland-protocols_mx8 ?= "1.20.imx"
# Use i.MX libdrm Version
-PREFERRED_VERSION_libdrm_mx6 ?= "2.4.99.imx"
-PREFERRED_VERSION_libdrm_mx7 ?= "2.4.99.imx"
-PREFERRED_VERSION_libdrm_mx8 ?= "2.4.99.imx"
+PREFERRED_VERSION_libdrm_mx6 ?= "2.4.102.imx"
+PREFERRED_VERSION_libdrm_mx7 ?= "2.4.102.imx"
+PREFERRED_VERSION_libdrm_mx8 ?= "2.4.102.imx"
# Use i.MX optee Version
-PREFERRED_VERSION_optee-os_mx8 ?= "3.7.0.imx"
-PREFERRED_VERSION_optee-client_mx8 ?= "3.7.0.imx"
-PREFERRED_VERSION_optee-test_mx8 ?= "3.7.0.imx"
+PREFERRED_VERSION_optee-os_mx8 ?= "3.10.0.imx"
+PREFERRED_VERSION_optee-client_mx8 ?= "3.10.0.imx"
+PREFERRED_VERSION_optee-test_mx8 ?= "3.10.0.imx"
+
+#Use i.MX opencv Version for mx8
+PREFERRED_VERSION_opencv_mx8 ?= "4.4.0.imx"
# Handle default kernel
IMX_DEFAULT_KERNEL = "linux-fslc-imx"
@@ -352,25 +425,43 @@ WKS_FILE_DEPENDS ?= " \
${@bb.utils.contains('MACHINE_FEATURES', 'optee', '${OPTEE_WKS_FILE_DEPENDS}', '', d)} \
"
-WKS_FILE_DEPENDS_append_mx8 = " imx-boot "
+WKS_FILE_DEPENDS_append_mx8 = " imx-boot"
+WKS_FILE_DEPENDS_append_mx8m = " imx-boot"
+
+# We need to restrict the append so we don't add this for other i.MX SoC's.
+# Derivatives that are not yet adopted the usage of boot container provided
+# by U-Boot build are still targeted to use 'imx-boot' package provided by
+# NXP. Moving those derivatives to mainline BSP would require to define an
+# 'imx-boot-container' override, and test if the U-Boot built 'flash.bin'
+# binary is used a replacement.
+# Note, that the results binary name of the boot container is set to 'imx-boot'
+# for both NXP and Mainline BSP.
+# For Mainline BSP: the 'flash.bin' boot container is renamed during the
+# deployment task extesion execution defined in imx-boot-container class.
+# For NXP BSP: rename is done in 'imx-boot' recipe at the execution of compile
+# task.
+WKS_FILE_DEPENDS_append_use-mainline-bsp_aarch64 = " \
+ ${@oe.utils.ifelse(d.getVar('UBOOT_PROVIDES_BOOT_CONTAINER') == '0', 'imx-boot', '')} \
+"
SOC_DEFAULT_WKS_FILE ?= "imx-uboot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE_mx8m ?= "imx-imx-boot-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"
-WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"
+# Boot container built as a part of mainline U-Boot uses the same WKS
+# file as the entire mx8m series, as it renames flash.bin binary to
+# imx-boot before it is packed into the boot partition.
+# This operation is performed in imx-boot-container class as a part of
+# delopyment task.
+# flash.bin binary is produced by U-Boot build itself, and is serves as a
+# direct replacement of imx-boot from NXP.
+# Creation of the flash.bin is controlled by UBOOT_PROVIDES_BOOT_CONTAINER
+# variable defined above
+SOC_DEFAULT_WKS_FILE_imx-boot-container ?= "imx-imx-boot-bootpart.wks.in"
-# Certain machines override the default fsl u-boot with the
-# fslc u-boot. To restore the fsl u-boot, add use-fsl-bsp like this:
-# MACHINEOVERRIDES_prepend_imx6ulevk = "use-fsl-bsp:"
-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.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.in"
+WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"
SERIAL_CONSOLES = "115200;ttymxc0"
SERIAL_CONSOLES_mxs = "115200;ttyAMA0"
diff --git a/conf/machine/include/imx8mm-evk.inc b/conf/machine/include/imx8mm-evk.inc
new file mode 100644
index 00000000..9b590fe0
--- /dev/null
+++ b/conf/machine/include/imx8mm-evk.inc
@@ -0,0 +1,57 @@
+MACHINEOVERRIDES =. "imx-boot-container:mx8:mx8m:mx8mm:"
+
+require conf/machine/include/imx-base.inc
+require conf/machine/include/tune-cortexa53.inc
+
+MACHINE_FEATURES += "pci wifi bluetooth bcm43455 bcm4356"
+
+# NXP BSP can consume BCM4359 and QCA9377 driver and firmware
+# Since the firmware is not available publicly, and rather distributed
+# under "Proprietary" license - we opt-out from using it in all BSPs
+# and pin it to NXP BSP only
+# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
+# a full support for it yet.
+MACHINE_FEATURES_append_use-nxp-bsp = " optee bcm4359 qca9377"
+
+KERNEL_DEVICETREE = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
+"
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-pcie-ep.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
+"
+UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"
+
+IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+
+UBOOT_SUFFIX = "bin"
+
+UBOOT_CONFIG ??= "sd"
+UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_defconfig,sdcard"
+UBOOT_CONFIG[mfgtool] = "${UBOOT_CONFIG_BASENAME}_defconfig"
+
+SPL_BINARY = "spl/u-boot-spl.bin"
+
+ATF_PLATFORM = "imx8mm"
+ATF_LOAD_ADDR = "0x920000"
+
+# Extra firmware package name, that is required to build boot container for fslc bsp
+IMX_EXTRA_FIRMWARE = "firmware-imx-8m"
+
+IMXBOOT_TARGETS = "${@bb.utils.contains('UBOOT_CONFIG', 'fspi', '${IMXBOOT_TARGETS_BASENAME}_flexspi', '${IMXBOOT_TARGETS_BASENAME}', d)}"
+
+IMX_BOOT_SOC_TARGET = "iMX8MM"
+
+SERIAL_CONSOLES = "115200;ttymxc1"
+
+LOADADDR = ""
+UBOOT_SUFFIX = "bin"
+UBOOT_MAKE_TARGET = "all"
+IMX_BOOT_SEEK = "33"
+
+OPTEE_BIN_EXT = "8mm"
+TEE_LOAD_ADDR = "0xbe000000"
+
+# Add additional firmware
+MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8mn-evk.inc b/conf/machine/include/imx8mn-evk.inc
new file mode 100644
index 00000000..6a5b31f7
--- /dev/null
+++ b/conf/machine/include/imx8mn-evk.inc
@@ -0,0 +1,63 @@
+MACHINEOVERRIDES =. "imx-boot-container:mx8:mx8m:mx8mn:"
+
+require conf/machine/include/imx-base.inc
+require conf/machine/include/tune-cortexa53.inc
+
+MACHINE_FEATURES += "wifi bluetooth bcm43455 bcm4356"
+
+# NXP BSP can consume proprietary jailhouse and Broadcom drivers
+# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
+# a full support for it yet.
+MACHINE_FEATURES_append_use-nxp-bsp = " optee jailhouse bcm4359"
+
+KERNEL_DEVICETREE = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
+"
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-ak5558.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-root.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \
+"
+UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"
+
+IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+
+UBOOT_SUFFIX = "bin"
+
+UBOOT_CONFIG ??= "sd"
+UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_defconfig,sdcard"
+UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_defconfig"
+UBOOT_CONFIG[mfgtool] = "${UBOOT_CONFIG_BASENAME}_defconfig"
+
+SPL_BINARY = "spl/u-boot-spl.bin"
+
+ATF_PLATFORM = "imx8mn"
+ATF_LOAD_ADDR = "0x960000"
+
+# Extra firmware package name, that is required to build boot container for fslc bsp
+IMX_EXTRA_FIRMWARE = "firmware-imx-8m"
+
+IMXBOOT_TARGETS = "${@bb.utils.contains('UBOOT_CONFIG', 'fspi', '${IMXBOOT_TARGETS_BASENAME}_flexspi', '${IMXBOOT_TARGETS_BASENAME}', d)}"
+
+IMX_BOOT_SOC_TARGET = "iMX8MN"
+
+SERIAL_CONSOLES = "115200;ttymxc1"
+
+BOOT_SPACE = "65536"
+LOADADDR = ""
+UBOOT_SUFFIX = "bin"
+UBOOT_MAKE_TARGET = "all"
+
+# Image boot offset as defined in section 6.1.6.1 "Primary image offset and IVT offset" of
+# i.MX 8M Nano Applications Processor Reference Manual, Rev. 0, 12/2019
+# Doc ID: IMX8MNRM
+IMX_BOOT_SEEK = "32"
+
+OPTEE_BIN_EXT = "8mn"
+TEE_LOAD_ADDR = "0x56000000"
+
+# Add additional firmware
+MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8mp-evk.inc b/conf/machine/include/imx8mp-evk.inc
new file mode 100644
index 00000000..872d07a0
--- /dev/null
+++ b/conf/machine/include/imx8mp-evk.inc
@@ -0,0 +1,55 @@
+MACHINEOVERRIDES =. "imx-boot-container:mx8:mx8m:mx8mp:"
+
+require conf/machine/include/imx-base.inc
+require conf/machine/include/tune-cortexa53.inc
+
+MACHINE_FEATURES += "pci wifi bluetooth jailhouse"
+
+# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
+# a full support for it yet.
+MACHINE_FEATURES_append_use-nxp-bsp = " optee mrvl8997"
+
+# Mainline kernel contains only one DTB file for
+# imx8mpevk machine
+KERNEL_DEVICETREE = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
+"
+
+UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"
+
+IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+
+UBOOT_SUFFIX = "bin"
+
+UBOOT_CONFIG ??= "sd"
+UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_defconfig,sdcard"
+UBOOT_CONFIG[ecc] = "${UBOOT_CONFIG_BASENAME}_inline_ecc_defconfig"
+UBOOT_CONFIG[mfgtool] = "${UBOOT_CONFIG_BASENAME}_defconfig"
+
+SPL_BINARY = "spl/u-boot-spl.bin"
+
+ATF_PLATFORM = "imx8mp"
+ATF_LOAD_ADDR = "0x970000"
+
+# Extra firmware package name, that is required to build boot container for fslc bsp
+IMX_EXTRA_FIRMWARE = "firmware-imx-8m"
+
+IMXBOOT_TARGETS = \
+ "${@bb.utils.contains('UBOOT_CONFIG', 'fspi', '${IMXBOOT_TARGETS_BASENAME}_flexspi', \
+ '${IMXBOOT_TARGETS_BASENAME}', d)}"
+
+IMX_BOOT_SOC_TARGET = "iMX8MP"
+
+SERIAL_CONSOLES = "115200;ttymxc1"
+
+LOADADDR = ""
+UBOOT_SUFFIX = "bin"
+UBOOT_MAKE_TARGET = "all"
+IMX_BOOT_SEEK = "32"
+
+OPTEE_BIN_EXT = "8mp"
+TEE_LOAD_ADDR = "0x56000000"
+
+# Add additional firmware
+MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8x-mek.inc b/conf/machine/include/imx8x-mek.inc
new file mode 100644
index 00000000..814a34c1
--- /dev/null
+++ b/conf/machine/include/imx8x-mek.inc
@@ -0,0 +1,79 @@
+MACHINEOVERRIDES =. "mx8:mx8x:"
+
+require conf/machine/include/imx-base.inc
+require conf/machine/include/tune-cortexa35.inc
+
+IMX_DEFAULT_BSP = "nxp"
+
+MACHINE_FEATURES += "pci optee bcm43455 bcm4356"
+MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+
+# Don't include kernels in standard images
+RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
+
+LOADADDR = ""
+
+# We have to disable SERIAL_CONSOLE due to auto-serial-console
+SERIAL_CONSOLES = "115200;ttyAMA0"
+
+# we do not want to have getty running on tty1 as we run
+# auto-serial-console there
+USE_VT = "0"
+
+KERNEL_DEVICETREE = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
+"
+KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-dsi-rm67191.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-dsi-rm67191-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-dsp.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-enet2-tja1100.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-it6263-lvds0-dual-channel.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-it6263-lvds0-dual-channel-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-it6263-lvds1-dual-channel.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-it6263-lvds1-dual-channel-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-jdi-wuxga-lvds0-panel.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-jdi-wuxga-lvds0-panel-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-jdi-wuxga-lvds1-panel.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-jdi-wuxga-lvds1-panel-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-ov5640.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-ov5640-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \
+"
+
+UBOOT_MAKE_TARGET = \
+ "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '', \
+ 'u-boot.bin', d)}"
+SPL_BINARY = \
+ "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'spl/u-boot-spl.bin', \
+ '', d)}"
+
+UBOOT_CONFIG ??= "sd"
+UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_defconfig,sdcard"
+UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_fspi_defconfig"
+
+IMX_BOOT_SEEK = "32"
+
+# This machine is not supported by u-boot-fslc, so we force it to use
+# u-boot-imx here.
+IMX_DEFAULT_BOOTLOADER = "u-boot-imx"
+UBOOT_SUFFIX = "bin"
+
+# Set ATF platform name
+ATF_PLATFORM = "imx8qx"
+
+IMXBOOT_TARGETS_SD = \
+ "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl', \
+ 'flash', d)}"
+IMXBOOT_TARGETS_FSPI = \
+ "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl_flexspi', \
+ 'flash_flexspi', d)}"
+IMXBOOT_TARGETS = \
+ "${@bb.utils.contains('UBOOT_CONFIG', 'sd', '${IMXBOOT_TARGETS_SD}', \
+ '${IMXBOOT_TARGETS_FSPI}', d)}"
+IMX_BOOT_SOC_TARGET = "iMX8QX"
+
+BOARD_TYPE = "mek"
+
+# Add additional firmware
+MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/qoriq-base.inc b/conf/machine/include/qoriq-base.inc
index 93e48505..e482b857 100644
--- a/conf/machine/include/qoriq-base.inc
+++ b/conf/machine/include/qoriq-base.inc
@@ -1,12 +1,12 @@
# common providers of QorIQ targets
-PREFERRED_PROVIDER_cryptodev-linux = "cryptodev-qoriq-linux"
-PREFERRED_PROVIDER_cryptodev-module = "cryptodev-qoriq-module"
-PREFERRED_PROVIDER_cryptodev-tests = "cryptodev-qoriq-tests"
PREFERRED_PROVIDER_u-boot ?= "u-boot-qoriq"
PREFERRED_PROVIDER_virtual/bootloader ?= "${PREFERRED_PROVIDER_u-boot}"
PREFERRED_PROVIDER_virtual/kernel ?= "linux-qoriq"
+PREFERRED_PROVIDER_u-boot-tools-native ??= "u-boot-tools-native"
+PREFERRED_PROVIDER_u-boot-mkimage-native ??= "u-boot-tools-native"
+PREFERRED_PROVIDER_u-boot-mkimage ??= "u-boot-tools"
+PREFERRED_PROVIDER_nativesdk-u-boot-mkimage ??= "nativesdk-u-boot-tools"
PREFERRED_VERSION_testfloat = "2a"
-PREFERRED_PROVIDER_ptpd = "ptpd-qoriq"
SOC_DEFAULT_IMAGE_FSTYPES = "tar.gz ext2.gz.u-boot ext2.gz"
IMAGE_FSTYPES ?= "${SOC_DEFAULT_IMAGE_FSTYPES}"
@@ -32,6 +32,5 @@ MACHINE_SOCARCH_SUFFIX ?= ""
MACHINE_SOCARCH_SUFFIX_qoriq = "-qoriq"
MACHINE_ARCH_FILTER = "virtual/kernel"
-MACHINE_SOCARCH_FILTER_append_qoriq = " cryptodev-qoriq-linux cryptodev-qoriq-module cryptodev-qoriq-test"
INHERIT += "fsl-dynamic-packagearch"
diff --git a/conf/machine/ls1012afrwy.conf b/conf/machine/ls1012afrwy.conf
index 449e518c..72605cc1 100644
--- a/conf/machine/ls1012afrwy.conf
+++ b/conf/machine/ls1012afrwy.conf
@@ -27,5 +27,5 @@ RCWQSPI ?= "N_SSNP_3305/rcw_1000"
KERNEL_DEVICETREE ?= "freescale/fsl-ls1012a-frwy.dtb"
KERNEL_DEFCONFIG ?= "defconfig"
-EXTRA_IMAGEDEPENDS += "ppfe-firmware rcw atf"
+EXTRA_IMAGEDEPENDS += "ppfe-firmware rcw qoriq-atf"
USE_VT = "0"
diff --git a/conf/machine/ls1012ardb.conf b/conf/machine/ls1012ardb.conf
index 6efd6b3d..b4bfc571 100644
--- a/conf/machine/ls1012ardb.conf
+++ b/conf/machine/ls1012ardb.conf
@@ -28,5 +28,5 @@ RCWQSPISEC ?= "R_SPNH_3508/rcw_1000"
KERNEL_DEVICETREE ?= "freescale/fsl-ls1012a-rdb.dtb freescale/fsl-ls1012a-qds.dtb"
KERNEL_DEFCONFIG ?= "defconfig"
-EXTRA_IMAGEDEPENDS += "ppfe-firmware rcw atf"
+EXTRA_IMAGEDEPENDS += "ppfe-firmware rcw qoriq-atf"
USE_VT = "0"
diff --git a/conf/machine/ls1028ardb.conf b/conf/machine/ls1028ardb.conf
index b0bbc5b8..7647bf41 100644
--- a/conf/machine/ls1028ardb.conf
+++ b/conf/machine/ls1028ardb.conf
@@ -34,5 +34,5 @@ RCWSD ?= "R_SQPP_0x85bb/rcw_1500_gpu600"
RCWXSPI ?= "R_SQPP_0x85bb/rcw_1500_gpu600"
RCWEMMC ?= "R_SQPP_0x85bb/rcw_1500_gpu600"
-EXTRA_IMAGEDEPENDS += "rcw atf dp-firmware-cadence"
+EXTRA_IMAGEDEPENDS += "rcw qoriq-atf dp-firmware-cadence"
USE_VT = "0"
diff --git a/conf/machine/ls1043ardb.conf b/conf/machine/ls1043ardb.conf
index 6f1f7ea4..369abdcf 100644
--- a/conf/machine/ls1043ardb.conf
+++ b/conf/machine/ls1043ardb.conf
@@ -40,5 +40,5 @@ RCWSD ?= "RR_FQPP_1455/rcw_1600_sdboot"
RCWNAND ?= "RR_FQPP_1455/rcw_1600_nandboot"
QE_UCODE = "iram_Type_A_LS1021a_r1.0.bin"
-EXTRA_IMAGEDEPENDS += "fm-ucode rcw qe-ucode uefi atf ls2-phy"
+EXTRA_IMAGEDEPENDS += "fm-ucode rcw qe-ucode uefi qoriq-atf ls2-phy"
USE_VT = "0"
diff --git a/conf/machine/ls1046afrwy.conf b/conf/machine/ls1046afrwy.conf
index 884f7666..f6854a0c 100644
--- a/conf/machine/ls1046afrwy.conf
+++ b/conf/machine/ls1046afrwy.conf
@@ -37,5 +37,5 @@ SERIAL_CONSOLES_CHECK ?= "${SERIAL_CONSOLES}"
RCWQSPI ?= "NN_NNQNNPNP_3040_0506/rcw_1600_qspiboot"
RCWSD ?= "NN_NNQNNPNP_3040_0506/rcw_1600_sdboot"
-EXTRA_IMAGEDEPENDS += "fm-ucode rcw atf ls2-phy qe-ucode"
+EXTRA_IMAGEDEPENDS += "fm-ucode rcw qoriq-atf ls2-phy qe-ucode"
USE_VT = "0"
diff --git a/conf/machine/ls1046ardb.conf b/conf/machine/ls1046ardb.conf
index e8773366..64f26792 100644
--- a/conf/machine/ls1046ardb.conf
+++ b/conf/machine/ls1046ardb.conf
@@ -40,5 +40,5 @@ UEFI_QSPIBOOT ?= "LS1046ARDB_EFI_QSPIBOOT.fd"
RCWQSPI ?= "RR_FFSSPPPH_1133_5559/rcw_1800_qspiboot"
RCWSD ?= "RR_FFSSPPPH_1133_5559/rcw_1800_sdboot"
-EXTRA_IMAGEDEPENDS += "fm-ucode rcw uefi atf qe-ucode ls2-phy"
+EXTRA_IMAGEDEPENDS += "fm-ucode rcw uefi qoriq-atf qe-ucode ls2-phy"
USE_VT = "0"
diff --git a/conf/machine/ls1088ardb-pb.conf b/conf/machine/ls1088ardb-pb.conf
index 2e456f1b..1ae5693b 100644
--- a/conf/machine/ls1088ardb-pb.conf
+++ b/conf/machine/ls1088ardb-pb.conf
@@ -31,5 +31,5 @@ RCWSD ?= "FCSSRR_PPPP_0x1d_0x13/rcw_1600_sd"
RCWQSPI ?= "FCSSRR_PPPP_0x1d_0x13/rcw_1600_qspi"
-EXTRA_IMAGEDEPENDS += "mc-utils rcw management-complex atf"
+EXTRA_IMAGEDEPENDS += "mc-utils rcw management-complex qoriq-atf"
USE_VT = "0"
diff --git a/conf/machine/ls1088ardb.conf b/conf/machine/ls1088ardb.conf
index 8f47f284..9922248f 100644
--- a/conf/machine/ls1088ardb.conf
+++ b/conf/machine/ls1088ardb.conf
@@ -30,5 +30,5 @@ SERIAL_CONSOLES_CHECK ?= "${SERIAL_CONSOLES}"
RCWSD ?= "FCQQQQQQQQ_PPP_H_0x1d_0x0d/rcw_1600_sd"
RCWQSPI ?= "FCQQQQQQQQ_PPP_H_0x1d_0x0d/rcw_1600_qspi"
-EXTRA_IMAGEDEPENDS += "mc-utils rcw management-complex atf"
+EXTRA_IMAGEDEPENDS += "mc-utils rcw management-complex qoriq-atf"
USE_VT = "0"
diff --git a/conf/machine/ls2088ardb.conf b/conf/machine/ls2088ardb.conf
index f920d601..92c99326 100644
--- a/conf/machine/ls2088ardb.conf
+++ b/conf/machine/ls2088ardb.conf
@@ -31,5 +31,5 @@ KERNEL_DEFCONFIG ?= "defconfig"
SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyAMA0"
SERIAL_CONSOLES_CHECK ?= "${SERIAL_CONSOLES}"
-EXTRA_IMAGEDEPENDS += "mc-utils ls2-phy rcw management-complex uefi atf"
+EXTRA_IMAGEDEPENDS += "mc-utils ls2-phy rcw management-complex uefi qoriq-atf"
USE_VT = "0"
diff --git a/conf/machine/lx2160ardb.conf b/conf/machine/lx2160ardb.conf
index a8bbdbda..5e68a9fd 100644
--- a/conf/machine/lx2160ardb.conf
+++ b/conf/machine/lx2160ardb.conf
@@ -32,5 +32,5 @@ RCWXSPI ?= "XGGFF_PP_HHHH_RR_19_5_2/rcw_2000_700_2900_19_5_2"
RCWSD ?= "XGGFF_PP_HHHH_RR_19_5_2/rcw_2000_700_2900_19_5_2"
RCWEMMC ?= "XGGFF_PP_HHHH_RR_19_5_2/rcw_2000_700_2900_19_5_2"
-EXTRA_IMAGEDEPENDS += "management-complex mc-utils rcw ls2-phy ddr-phy uefi atf inphi"
+EXTRA_IMAGEDEPENDS += "management-complex mc-utils rcw ls2-phy ddr-phy uefi qoriq-atf inphi"
USE_VT = "0"
diff --git a/conf/machine/lx2162aqds.conf b/conf/machine/lx2162aqds.conf
new file mode 100644
index 00000000..c7ab95fb
--- /dev/null
+++ b/conf/machine/lx2162aqds.conf
@@ -0,0 +1,36 @@
+#@TYPE: Machine
+#@NAME: NXP LX2162AQDS
+#@SOC: LSCH3
+#@DESCRIPTION: Machine configuration for running LX2162AQDS in 64-bit mode
+#@MAINTAINER: Zongchun Yu <Zongchun.Yu@nxp.com>
+
+require conf/machine/include/qoriq-arm64.inc
+require conf/machine/include/arm/arch-arm64.inc
+
+MACHINEOVERRIDES =. "fsl-lsch3:lx2162a:"
+
+MACHINE_FEATURES += "optee"
+
+KERNEL_CLASSES = " kernel-fitimage "
+KERNEL_IMAGETYPES = "fitImage"
+
+DTB_LOAD = "0x90000000"
+UBOOT_ENTRYPOINT = "0x80080000"
+
+UBOOT_CONFIG ??= "tfa-verified-boot tfa-secure-boot tfa"
+UBOOT_CONFIG[tfa] = "lx2162aqds_tfa_defconfig,,u-boot-dtb.bin"
+UBOOT_CONFIG[tfa-secure-boot] = "lx2162aqds_tfa_SECURE_BOOT_defconfig,,u-boot-dtb.bin"
+UBOOT_CONFIG[tfa-verified-boot] = "lx2162aqds_tfa_verified_boot_defconfig,,u-boot-nodtb.bin"
+
+KERNEL_DEVICETREE ?= "freescale/fsl-lx2162a-qds.dtb"
+KERNEL_DEFCONFIG ?= "defconfig"
+
+SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyAMA0"
+SERIAL_CONSOLES_CHECK ?= "${SERIAL_CONSOLES}"
+
+RCWXSPI ?= "GGGG_NNNN_PPPP_PPPP_RR_17_2/rcw_2000_650_2900_17_2"
+RCWSD ?= "GGGG_NNNN_PPPP_PPPP_RR_17_2/rcw_2000_650_2900_17_2"
+RCWEMMC ?= "GGGG_NNNN_PPPP_PPPP_RR_17_2/rcw_2000_650_2900_17_2"
+
+EXTRA_IMAGEDEPENDS += "management-complex mc-utils rcw ls2-phy ddr-phy qoriq-atf inphi"
+USE_VT = "0"