aboutsummaryrefslogtreecommitdiffstats
path: root/conf
diff options
context:
space:
mode:
Diffstat (limited to 'conf')
-rw-r--r--conf/layer.conf23
-rw-r--r--conf/machine/imx23evk.conf6
-rw-r--r--conf/machine/imx25pdk.conf31
-rw-r--r--conf/machine/imx28evk.conf6
-rw-r--r--conf/machine/imx51evk.conf4
-rw-r--r--conf/machine/imx53ard.conf29
-rw-r--r--conf/machine/imx53qsb.conf6
-rw-r--r--conf/machine/imx6qdlsabreauto.conf68
-rw-r--r--conf/machine/imx6qdlsabresd.conf75
-rw-r--r--conf/machine/imx6slevk.conf21
-rw-r--r--conf/machine/imx6sllevk.conf14
-rw-r--r--conf/machine/imx6sxsabreauto.conf13
-rw-r--r--conf/machine/imx6sxsabresd.conf33
-rw-r--r--conf/machine/imx6ulevk.conf37
-rw-r--r--conf/machine/imx6ullevk.conf18
-rw-r--r--conf/machine/imx6ulz-14x14-evk.conf16
-rw-r--r--conf/machine/imx7dsabresd.conf32
-rw-r--r--conf/machine/imx7ulpevk.conf34
-rw-r--r--conf/machine/imx8dx-mek.conf11
-rw-r--r--conf/machine/imx8dxl-a1-ddr3l-evk.conf9
-rw-r--r--conf/machine/imx8dxl-a1-lpddr4-evk.conf9
-rw-r--r--conf/machine/imx8dxl-b0-ddr3l-evk.conf11
-rw-r--r--conf/machine/imx8dxl-b0-lpddr4-evk.conf11
-rw-r--r--conf/machine/imx8dxl-ddr3l-evk.conf11
-rw-r--r--conf/machine/imx8mm-ddr4-evk.conf10
-rw-r--r--conf/machine/imx8mm-lpddr4-evk.conf37
-rw-r--r--conf/machine/imx8mn-ddr4-evk.conf9
-rw-r--r--conf/machine/imx8mn-lpddr4-evk.conf11
-rw-r--r--conf/machine/imx8mnul-ddr3l-evk.conf69
-rw-r--r--conf/machine/imx8mp-ddr4-evk.conf7
-rw-r--r--conf/machine/imx8mp-lpddr4-evk.conf69
-rw-r--r--conf/machine/imx8mq-evk.conf51
-rw-r--r--conf/machine/imx8mq-lpddr4-wevk.conf19
-rw-r--r--conf/machine/imx8qm-mek.conf57
-rw-r--r--conf/machine/imx8qxp-mek.conf33
-rw-r--r--conf/machine/imx8ulp-lpddr4-evk.conf27
-rw-r--r--conf/machine/imx93-11x11-lpddr4x-evk.conf34
-rw-r--r--conf/machine/imx93-14x14-lpddr4x-evk.conf31
-rw-r--r--conf/machine/imx93-9x9-lpddr4-qsb.conf30
-rw-r--r--conf/machine/include/e500mc.inc2
-rw-r--r--conf/machine/include/e500v2.inc2
-rw-r--r--conf/machine/include/e5500-64b.inc4
-rw-r--r--conf/machine/include/e5500.inc2
-rw-r--r--conf/machine/include/e6500-64b.inc4
-rw-r--r--conf/machine/include/e6500.inc4
-rw-r--r--conf/machine/include/imx-base.inc664
-rw-r--r--conf/machine/include/imx8dxl-ddr3l-evk.inc9
-rw-r--r--conf/machine/include/imx8dxl-evk.inc16
-rw-r--r--conf/machine/include/imx8dxl-lpddr4-evk.inc (renamed from conf/machine/imx8dxl-lpddr4-evk.conf)17
-rw-r--r--conf/machine/include/imx8mm-evk.inc51
-rw-r--r--conf/machine/include/imx8mn-evk.inc58
-rw-r--r--conf/machine/include/imx8mp-evk.inc42
-rw-r--r--conf/machine/include/imx8ulp-evk.inc44
-rw-r--r--conf/machine/include/imx8x-mek.inc20
-rw-r--r--conf/machine/include/imx93-evk.inc39
-rw-r--r--conf/machine/include/qoriq-arm.inc2
-rw-r--r--conf/machine/include/qoriq-base.inc18
-rw-r--r--conf/machine/include/utilities.inc2
-rw-r--r--conf/machine/ls1012afrwy.conf4
-rw-r--r--conf/machine/ls1012ardb.conf4
-rw-r--r--conf/machine/ls1021atwr.conf35
-rw-r--r--conf/machine/ls1028ardb.conf10
-rw-r--r--conf/machine/ls1043ardb.conf6
-rw-r--r--conf/machine/ls1046afrwy.conf6
-rw-r--r--conf/machine/ls1046ardb.conf7
-rw-r--r--conf/machine/ls1088ardb-pb.conf8
-rw-r--r--conf/machine/ls1088ardb.conf8
-rw-r--r--conf/machine/ls2080ardb.conf20
-rw-r--r--conf/machine/ls2088ardb.conf6
-rw-r--r--conf/machine/lx2160ardb.conf10
-rw-r--r--conf/machine/lx2162aqds.conf4
-rw-r--r--conf/machine/mpc8548cds.conf1
72 files changed, 1341 insertions, 810 deletions
diff --git a/conf/layer.conf b/conf/layer.conf
index df898924..ef4e3e6e 100644
--- a/conf/layer.conf
+++ b/conf/layer.conf
@@ -8,7 +8,8 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "freescale-layer"
BBFILE_PATTERN_freescale-layer := "^${LAYERDIR}/"
BBFILE_PRIORITY_freescale-layer = "5"
-LAYERSERIES_COMPAT_freescale-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_freescale-layer = "kirkstone langdale mickledore nanbield scarthgap"
+LAYERDEPENDS_freescale-layer = "core"
# Add the Freescale-specific licenses into the metadata
LICENSE_PATH += "${LAYERDIR}/custom-licenses"
@@ -23,6 +24,15 @@ FSL_MIRROR ?= "${IMX_MIRROR}"
MIRRORS += " \
${IMX_MIRROR} http://download.ossystems.com.br/bsp/freescale/source/ \n \
"
+# Needs gbm_bo_create_with_modifiers2() API which is not
+# implemented in imx GL driver implementation
+COMPATIBLE_HOST:pn-xdg-desktop-portal-wlr:imxgpu = "(null)"
+
+# For compatibility with layers before scarthgap
+PROVIDES:pn-bmap-tools-native = "bmaptool-native"
+RPROVIDES:pn-bmap-tools-native:bmap-tools-native = "bmaptool-native"
+PROVIDES:pn-bmap-tools = "bmaptool"
+RPROVIDES:pn-bmap-tools:bmap-tools = "bmaptool"
BBFILES_DYNAMIC += " \
aglprofilegraphical:${LAYERDIR}/dynamic-layers/aglprofilegraphical/*/*/*.bb \
@@ -34,9 +44,17 @@ BBFILES_DYNAMIC += " \
filesystem-layer:${LAYERDIR}/dynamic-layers/filesystem-layer/*/*/*.bb \
filesystem-layer:${LAYERDIR}/dynamic-layers/filesystem-layer/*/*/*.bbappend \
\
+ gnome-layer:${LAYERDIR}/dynamic-layers/gnome-layer/*/*/*.bb \
+ gnome-layer:${LAYERDIR}/dynamic-layers/gnome-layer/*/*/*.bbappend \
+ \
ivi:${LAYERDIR}/dynamic-layers/ivi/*/*/*.bb \
ivi:${LAYERDIR}/dynamic-layers/ivi/*/*/*.bbappend \
\
+ meta-arm:${LAYERDIR}/dynamic-layers/meta-arm/*/*/*.bbappend \
+ \
+ multimedia-layer:${LAYERDIR}/dynamic-layers/multimedia-layer/*/*/*.bb \
+ multimedia-layer:${LAYERDIR}/dynamic-layers/multimedia-layer/*/*/*.bbappend \
+ \
openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bb \
openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bbappend \
\
@@ -46,6 +64,9 @@ BBFILES_DYNAMIC += " \
qt5-layer:${LAYERDIR}/dynamic-layers/qt5-layer/*/*/*.bb \
qt5-layer:${LAYERDIR}/dynamic-layers/qt5-layer/*/*/*.bbappend \
\
+ qt6-layer:${LAYERDIR}/dynamic-layers/qt6-layer/*/*/*.bb \
+ qt6-layer:${LAYERDIR}/dynamic-layers/qt6-layer/*/*/*.bbappend \
+ \
virtualization-layer:${LAYERDIR}/dynamic-layers/virtualization-layer/*/*/*.bb \
virtualization-layer:${LAYERDIR}/dynamic-layers/virtualization-layer/*/*/*.bbappend \
"
diff --git a/conf/machine/imx23evk.conf b/conf/machine/imx23evk.conf
index 8abc5a95..4e2fe980 100644
--- a/conf/machine/imx23evk.conf
+++ b/conf/machine/imx23evk.conf
@@ -7,7 +7,7 @@
MACHINEOVERRIDES =. "mxs:mx23:"
include conf/machine/include/imx-base.inc
-include conf/machine/include/tune-arm926ejs.inc
+include conf/machine/include/arm/armv5/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.
@@ -18,6 +18,4 @@ UBOOT_SUFFIX = "sb"
UBOOT_MACHINE = "mx23evk_config"
-KERNEL_DEVICETREE = "imx23-evk.dtb"
-
-MACHINE_FEATURES = "usbgadget usbhost vfat touchscreen"
+KERNEL_DEVICETREE = "nxp/mxs/imx23-evk.dtb"
diff --git a/conf/machine/imx25pdk.conf b/conf/machine/imx25pdk.conf
deleted file mode 100644
index 5721e845..00000000
--- a/conf/machine/imx25pdk.conf
+++ /dev/null
@@ -1,31 +0,0 @@
-#@TYPE: Machine
-#@NAME: NXP i.MX25 Evaluation Kit
-#@SOC: i.MX25
-#@DESCRIPTION: Machine configuration for NXP i.MX25 Evaluation Kit
-#@MAINTAINER: Otavio Salvador <otavio@ossystems.com.br>
-
-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"
-
-SERIAL_CONSOLES = "115200;ttymxc0"
-
-MACHINE_FEATURES = "usbgadget usbhost vfat alsa touchscreen"
-
-WKS_FILE = "imx-uboot.wks"
-MACHINE_ESSENTIAL_EXTRA_RDEPENDS += " \
- kernel-image \
- kernel-devicetree \
-"
diff --git a/conf/machine/imx28evk.conf b/conf/machine/imx28evk.conf
index 4f69dae4..cecb97d2 100644
--- a/conf/machine/imx28evk.conf
+++ b/conf/machine/imx28evk.conf
@@ -7,7 +7,7 @@
MACHINEOVERRIDES =. "mxs:mx28:"
include conf/machine/include/imx-base.inc
-include conf/machine/include/tune-arm926ejs.inc
+include conf/machine/include/arm/armv5/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.
@@ -21,12 +21,10 @@ UBOOT_CONFIG[sd] = "mx28evk_config,sdcard"
UBOOT_CONFIG[nand] = "mx28evk_nand_config,ubifs"
UBOOT_CONFIG[sd-auart-console] = "mx28evk_auart_console_config,sdcard"
-KERNEL_DEVICETREE = "imx28-evk.dtb"
+KERNEL_DEVICETREE = "nxp/mxs/imx28-evk.dtb"
SERIAL_CONSOLES = "115200;ttyAMA0"
-MACHINE_FEATURES = "usbgadget usbhost vfat alsa touchscreen"
-
## Parameters for NAND IC part-# K9LBG08U0D-PCB0
MKUBIFS_ARGS = "--min-io-size 4096 --leb-size 516096 --max-leb-cnt 8139"
diff --git a/conf/machine/imx51evk.conf b/conf/machine/imx51evk.conf
index 80d7b386..5934afa1 100644
--- a/conf/machine/imx51evk.conf
+++ b/conf/machine/imx51evk.conf
@@ -7,9 +7,9 @@
MACHINEOVERRIDES =. "mx5:mx51:"
include conf/machine/include/imx-base.inc
-include conf/machine/include/tune-cortexa8.inc
+include conf/machine/include/arm/armv7a/tune-cortexa8.inc
-KERNEL_DEVICETREE = "imx51-babbage.dtb"
+KERNEL_DEVICETREE = "nxp/imx/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.
diff --git a/conf/machine/imx53ard.conf b/conf/machine/imx53ard.conf
deleted file mode 100644
index af5aeb3b..00000000
--- a/conf/machine/imx53ard.conf
+++ /dev/null
@@ -1,29 +0,0 @@
-#@TYPE: Machine
-#@NAME: NXP i.MX53 SABRE Automotive Board
-#@SOC: i.MX53
-#@DESCRIPTION: Machine configuration for NXP i.MX53 SABRE Automotive Board
-#@MAINTAINER: Daiane Angolini <daiane.angolini@nxp.com>
-
-MACHINEOVERRIDES =. "mx5:mx53:"
-
-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 = "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"
-
-MACHINE_FIRMWARE += "linux-firmware-ar3k \
- linux-firmware-ath6k"
-MACHINE_FEATURES += "wifi bluetooth"
diff --git a/conf/machine/imx53qsb.conf b/conf/machine/imx53qsb.conf
index 06d4a756..60ac75d6 100644
--- a/conf/machine/imx53qsb.conf
+++ b/conf/machine/imx53qsb.conf
@@ -2,14 +2,14 @@
#@NAME: NXP i.MX53 Quick Start Board
#@SOC: i.MX53
#@DESCRIPTION: Machine configuration for NXP i.MX53 Quick Start Board
-#@MAINTAINER: Trevor Woerner <trevor.woerner@linaro.org>
+#@MAINTAINER: Trevor Woerner <twoerner@gmail.com>
MACHINEOVERRIDES =. "mx5:mx53:"
include conf/machine/include/imx-base.inc
-include conf/machine/include/tune-cortexa8.inc
+include conf/machine/include/arm/armv7a/tune-cortexa8.inc
-KERNEL_DEVICETREE = "imx53-qsb.dtb imx53-qsrb.dtb"
+KERNEL_DEVICETREE = "nxp/imx/imx53-qsb.dtb nxp/imx/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.
diff --git a/conf/machine/imx6qdlsabreauto.conf b/conf/machine/imx6qdlsabreauto.conf
index b7aec8c2..61d81ab6 100644
--- a/conf/machine/imx6qdlsabreauto.conf
+++ b/conf/machine/imx6qdlsabreauto.conf
@@ -11,49 +11,73 @@
# * imx6solosabreauto
# and is able to work for all the machines.
-MACHINEOVERRIDES =. "mx6:mx6q:mx6dl:"
+MACHINEOVERRIDES =. "mx6q:mx6dl:"
require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa9.inc
+require conf/machine/include/arm/armv7a/tune-cortexa9.inc
KERNEL_DEVICETREE = " \
- imx6qp-sabreauto.dtb imx6qp-sabreauto-ecspi.dtb imx6qp-sabreauto-flexcan1.dtb \
- imx6qp-sabreauto-gpmi-weim.dtb \
+ nxp/imx/imx6qp-sabreauto.dtb \
+ nxp/imx/imx6qp-sabreauto-ecspi.dtb \
+ nxp/imx/imx6qp-sabreauto-flexcan1.dtb \
+ nxp/imx/imx6qp-sabreauto-gpmi-weim.dtb \
\
- imx6q-sabreauto.dtb imx6q-sabreauto-gpmi-weim.dtb imx6q-sabreauto-ecspi.dtb \
- imx6q-sabreauto-flexcan1.dtb imx6q-sabreauto-enetirq.dtb \
+ nxp/imx/imx6q-sabreauto.dtb \
+ nxp/imx/imx6q-sabreauto-gpmi-weim.dtb \
+ nxp/imx/imx6q-sabreauto-ecspi.dtb \
+ nxp/imx/imx6q-sabreauto-flexcan1.dtb \
+ nxp/imx/imx6q-sabreauto-enetirq.dtb \
\
- imx6dl-sabreauto.dtb imx6dl-sabreauto-gpmi-weim.dtb imx6dl-sabreauto-ecspi.dtb \
- imx6dl-sabreauto-flexcan1.dtb imx6dl-sabreauto-enetirq.dtb \
+ nxp/imx/imx6dl-sabreauto.dtb \
+ nxp/imx/imx6dl-sabreauto-gpmi-weim.dtb \
+ nxp/imx/imx6dl-sabreauto-ecspi.dtb \
+ nxp/imx/imx6dl-sabreauto-flexcan1.dtb \
+ nxp/imx/imx6dl-sabreauto-enetirq.dtb \
"
-KERNEL_DEVICETREE_use-mainline-bsp = " \
- imx6qp-sabreauto.dtb \
- imx6q-sabreauto.dtb \
- imx6dl-sabreauto.dtb \
+KERNEL_DEVICETREE:use-mainline-bsp = " \
+ nxp/imx/imx6qp-sabreauto.dtb \
+ nxp/imx/imx6q-sabreauto.dtb \
+ nxp/imx/imx6dl-sabreauto.dtb \
"
-### u-boot-fslc settings ###
+UBOOT_CONFIG ??= " \
+ sd \
+ ${@oe.utils.ifelse(d.getVar('IMX_DEFAULT_BOOTLOADER') == 'u-boot-imx', \
+ bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee', '', d), '')}"
-SPL_BINARY_pn-u-boot-fslc = "SPL"
-UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabreauto_defconfig"
-UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+### u-boot-fslc settings ###
+SPL_BINARY:pn-u-boot-fslc = "SPL"
+UBOOT_SUFFIX:pn-u-boot-fslc = "img"
### u-boot-imx settings ###
+SPL_BINARY:pn-u-boot-imx = ""
+UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx = "imx"
+UBOOT_MAKE_TARGET:pn-u-boot-imx-mfgtool = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx-mfgtool = "imx"
+
+UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_MACHINE_NAME}_defconfig,sdcard"
+UBOOT_CONFIG[sd-optee] = "${UBOOT_CONFIG_MACHINE_NAME}_optee_defconfig,sdcard"
+UBOOT_CONFIG[eimnor] = "${UBOOT_CONFIG_MACHINE_NAME}_eimnor_defconfig"
+UBOOT_CONFIG[nand] = "${UBOOT_CONFIG_MACHINE_NAME}_nand_defconfig,ubifs"
+UBOOT_CONFIG[spinor] = "${UBOOT_CONFIG_MACHINE_NAME}_spinor_defconfig"
+UBOOT_CONFIG[sata] = "${UBOOT_CONFIG_MACHINE_NAME}_sata_defconfig"
# 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"
+UBOOT_CONFIG_MACHINE_NAME = "mx6sabreauto"
+UBOOT_CONFIG_MACHINE_NAME:pn-u-boot-imx = "mx6qpsabreauto"
+UBOOT_CONFIG_MACHINE_NAME:pn-u-boot-imx-mfgtool = "mx6qpsabreauto"
WKS_FILE = " \
${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
'u-boot-fslc', 'imx-uboot-spl-bootpart.wks.in', \
'imx-uboot-bootpart.wks.in', d)}"
+OPTEE_BIN_EXT = "6qpauto"
+
SERIAL_CONSOLES = "115200;ttymxc3"
-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"
-MACHINE_FEATURES += " pci wifi bluetooth"
+MACHINE_FEATURES += " pci wifi bluetooth nxp8987-sdio"
diff --git a/conf/machine/imx6qdlsabresd.conf b/conf/machine/imx6qdlsabresd.conf
index b3d09e93..1ab1d9df 100644
--- a/conf/machine/imx6qdlsabresd.conf
+++ b/conf/machine/imx6qdlsabresd.conf
@@ -11,58 +11,71 @@
# * imx6solosabresd
# and is able to work for all the machines.
-MACHINEOVERRIDES =. "mx6:mx6q:mx6dl:"
+MACHINEOVERRIDES =. "mx6q:mx6dl:"
require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa9.inc
+require conf/machine/include/arm/armv7a/tune-cortexa9.inc
KERNEL_DEVICETREE = " \
- imx6qp-sabresd-btwifi.dtb \
- imx6qp-sabresd.dtb \
- imx6qp-sabresd-hdcp.dtb \
- imx6qp-sabresd-ldo.dtb \
+ nxp/imx/imx6qp-sabresd-btwifi.dtb \
+ nxp/imx/imx6qp-sabresd.dtb \
+ nxp/imx/imx6qp-sabresd-hdcp.dtb \
+ nxp/imx/imx6qp-sabresd-ldo.dtb \
\
- imx6q-sabresd-btwifi.dtb \
- imx6q-sabresd.dtb \
- imx6q-sabresd-enetirq.dtb \
- imx6q-sabresd-hdcp.dtb \
- imx6q-sabresd-ldo.dtb \
- imx6q-sabresd-uart.dtb \
+ nxp/imx/imx6q-sabresd-btwifi.dtb \
+ nxp/imx/imx6q-sabresd.dtb \
+ nxp/imx/imx6q-sabresd-enetirq.dtb \
+ nxp/imx/imx6q-sabresd-hdcp.dtb \
+ nxp/imx/imx6q-sabresd-ldo.dtb \
+ nxp/imx/imx6q-sabresd-uart.dtb \
\
- imx6dl-sabresd-btwifi.dtb \
- imx6dl-sabresd.dtb \
- imx6dl-sabresd-enetirq.dtb \
- imx6dl-sabresd-hdcp.dtb \
- imx6dl-sabresd-ldo.dtb \
+ nxp/imx/imx6dl-sabresd-btwifi.dtb \
+ nxp/imx/imx6dl-sabresd.dtb \
+ nxp/imx/imx6dl-sabresd-enetirq.dtb \
+ nxp/imx/imx6dl-sabresd-hdcp.dtb \
+ nxp/imx/imx6dl-sabresd-ldo.dtb \
"
-KERNEL_DEVICETREE_use-mainline-bsp = " \
- imx6qp-sabresd.dtb \
- imx6q-sabresd.dtb \
- imx6dl-sabresd.dtb \
+KERNEL_DEVICETREE:use-mainline-bsp = " \
+ nxp/imx/imx6qp-sabresd.dtb \
+ nxp/imx/imx6q-sabresd.dtb \
+ nxp/imx/imx6dl-sabresd.dtb \
"
-### u-boot-fslc settings ###
+UBOOT_CONFIG ??= " \
+ sd \
+ ${@oe.utils.ifelse(d.getVar('IMX_DEFAULT_BOOTLOADER') == 'u-boot-imx', \
+ bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee', '', d), '')}"
-SPL_BINARY_pn-u-boot-fslc = "SPL"
-UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabresd_defconfig"
-UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+### u-boot-fslc settings ###
+SPL_BINARY:pn-u-boot-fslc = "SPL"
+UBOOT_SUFFIX:pn-u-boot-fslc = "img"
### u-boot-imx settings ###
+SPL_BINARY:pn-u-boot-imx = ""
+UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx = "imx"
+UBOOT_MAKE_TARGET:pn-u-boot-imx-mfgtool = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx-mfgtool = "imx"
+
+UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_MACHINE_NAME}_defconfig,sdcard"
+UBOOT_CONFIG[sd-optee] = "${UBOOT_CONFIG_MACHINE_NAME}_optee_defconfig,sdcard"
+UBOOT_CONFIG[sata] = "${UBOOT_CONFIG_MACHINE_NAME}_sata_defconfig"
# 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"
+UBOOT_CONFIG_MACHINE_NAME = "mx6sabresd"
+UBOOT_CONFIG_MACHINE_NAME:pn-u-boot-imx = "mx6qsabresd"
+UBOOT_CONFIG_MACHINE_NAME:pn-u-boot-imx-mfgtool = "mx6qsabresd"
WKS_FILE = " \
${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
'u-boot-fslc', 'imx-uboot-spl-bootpart.wks.in', \
'imx-uboot-bootpart.wks.in', d)}"
+OPTEE_BIN_EXT = "6qsdb"
+
SERIAL_CONSOLES = "115200;ttymxc0"
-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"
-MACHINE_FEATURES += " pci wifi bluetooth"
+MACHINE_FEATURES += " pci wifi bluetooth nxp8987-sdio"
diff --git a/conf/machine/imx6slevk.conf b/conf/machine/imx6slevk.conf
index 1e8c403b..af196eab 100644
--- a/conf/machine/imx6slevk.conf
+++ b/conf/machine/imx6slevk.conf
@@ -4,17 +4,17 @@
#@DESCRIPTION: Machine configuration for NXP i.MX6SL Evaluation Kit
#@MAINTAINER: Otavio Salvador <otavio@ossystems.com.br>
-MACHINEOVERRIDES =. "mx6:mx6sl:"
+MACHINEOVERRIDES =. "mx6sl:"
include conf/machine/include/imx-base.inc
-include conf/machine/include/tune-cortexa9.inc
-
-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 \
+require conf/machine/include/arm/armv7a/tune-cortexa9.inc
+
+KERNEL_DEVICETREE = "nxp/imx/imx6sl-evk.dtb"
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ nxp/imx/imx6sl-evk-btwifi.dtb \
+ nxp/imx/imx6sl-evk-csi.dtb \
+ nxp/imx/imx6sl-evk-ldo.dtb \
+ nxp/imx/imx6sl-evk-uart.dtb \
"
UBOOT_MAKE_TARGET = "u-boot.imx"
@@ -28,12 +28,11 @@ 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 bcm4339 bcm43455"
+MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455 nxp8987-sdio"
MACHINE_FIRMWARE += "linux-firmware-ath6k firmware-imx-epdc"
diff --git a/conf/machine/imx6sllevk.conf b/conf/machine/imx6sllevk.conf
index 30b537f1..5a1dc666 100644
--- a/conf/machine/imx6sllevk.conf
+++ b/conf/machine/imx6sllevk.conf
@@ -4,12 +4,15 @@
#@DESCRIPTION: Machine configuration for NXP i.MX6SLL EVK
#@MAINTAINER: Alexandru Palalau ioan-alexandru.palalau@nxp.com
-MACHINEOVERRIDES =. "mx6:mx6sll:"
+MACHINEOVERRIDES =. "mx6sll:"
include conf/machine/include/imx-base.inc
-include conf/machine/include/tune-cortexa9.inc
+require conf/machine/include/arm/armv7a/tune-cortexa9.inc
-KERNEL_DEVICETREE = "imx6sll-evk.dtb"
+KERNEL_DEVICETREE = "nxp/imx/imx6sll-evk.dtb"
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ nxp/imx/imx6sll-evk-btwifi.dtb \
+ nxp/imx/imx6sll-evk-reva.dtb"
UBOOT_MAKE_TARGET = "u-boot.imx"
UBOOT_SUFFIX = "imx"
@@ -21,13 +24,12 @@ UBOOT_CONFIG ??= " \
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"
+OPTEE_BIN_EXT:imx6sllevk = "6sllevk"
SERIAL_CONSOLES = "115200;ttymxc0"
-MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455"
+MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455 nxp8987-sdio"
# MESA DRI library
XSERVER += "mesa-driver-swrast"
diff --git a/conf/machine/imx6sxsabreauto.conf b/conf/machine/imx6sxsabreauto.conf
index f7031ccb..cbb20d56 100644
--- a/conf/machine/imx6sxsabreauto.conf
+++ b/conf/machine/imx6sxsabreauto.conf
@@ -4,13 +4,13 @@
#@DESCRIPTION: Machine configuration for NXP i.MX6SoloX Sabre Automotive
#@MAINTAINER: Lauren Post <Lauren.Post@nxp.com>
-MACHINEOVERRIDES =. "mx6:mx6sx:"
+MACHINEOVERRIDES =. "mx6sx:"
require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa9.inc
+require conf/machine/include/arm/armv7a/tune-cortexa9.inc
-KERNEL_DEVICETREE = "imx6sx-sabreauto.dtb"
-KERNEL_DEVICETREE_use-mainline-bsp = "imx6sx-sabreauto.dtb"
+KERNEL_DEVICETREE = "nxp/imx/imx6sx-sabreauto.dtb"
+KERNEL_DEVICETREE:use-mainline-bsp = "nxp/imx/imx6sx-sabreauto.dtb"
UBOOT_MAKE_TARGET = "u-boot.imx"
UBOOT_SUFFIX = "imx"
@@ -23,12 +23,11 @@ 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"
-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"
-MACHINE_FEATURES += " pci wifi bluetooth"
+MACHINE_FEATURES += " pci wifi bluetooth nxp8987-sdio"
diff --git a/conf/machine/imx6sxsabresd.conf b/conf/machine/imx6sxsabresd.conf
index ff7d6ae6..8d597c55 100644
--- a/conf/machine/imx6sxsabresd.conf
+++ b/conf/machine/imx6sxsabresd.conf
@@ -4,25 +4,25 @@
#@DESCRIPTION: Machine configuration for NXP i.MX6SoloX Sabre SD
#@MAINTAINER: Lauren Post <Lauren.Post@nxp.com>
-MACHINEOVERRIDES =. "mx6:mx6sx:"
+MACHINEOVERRIDES =. "mx6sx:"
require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa9.inc
+require conf/machine/include/arm/armv7a/tune-cortexa9.inc
KERNEL_DEVICETREE = " \
- imx6sx-sdb.dtb \
- imx6sx-sdb-reva.dtb \
- imx6sx-sdb-sai.dtb \
+ nxp/imx/imx6sx-sdb.dtb \
+ nxp/imx/imx6sx-sdb-reva.dtb \
+ nxp/imx/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 \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ nxp/imx/imx6sx-sdb-btwifi.dtb \
+ nxp/imx/imx6sx-sdb-emmc.dtb \
+ nxp/imx/imx6sx-sdb-lcdif1.dtb \
+ nxp/imx/imx6sx-sdb-ldo.dtb \
+ nxp/imx/imx6sx-sdb-m4.dtb \
+ nxp/imx/imx6sx-sdb-mqs.dtb \
+ nxp/imx/imx6sx-sdb-pcie-ep.dtb \
+ nxp/imx/imx6sx-sdb-reva-ldo.dtb \
"
UBOOT_MAKE_TARGET = "u-boot.imx"
@@ -37,12 +37,11 @@ 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"
OPTEE_BIN_EXT = "6sxsdb"
SERIAL_CONSOLES = "115200;ttymxc0"
-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"
-MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"
+MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455 nxp8987-sdio"
diff --git a/conf/machine/imx6ulevk.conf b/conf/machine/imx6ulevk.conf
index f7c5d8ae..b06e3031 100644
--- a/conf/machine/imx6ulevk.conf
+++ b/conf/machine/imx6ulevk.conf
@@ -4,36 +4,38 @@
#@DESCRIPTION: Machine configuration for NXP i.MX6UL EVK
#@MAINTAINER: Alexandru Palalau <ioan-alexandru.palalau@nxp.com>
-MACHINEOVERRIDES =. "mx6:mx6ul:"
+MACHINEOVERRIDES =. "mx6ul:"
include conf/machine/include/imx-base.inc
-include conf/machine/include/tune-cortexa7.inc
+include conf/machine/include/arm/armv7a/tune-cortexa7.inc
-MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455"
+MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455 nxp8987-sdio"
KERNEL_DEVICETREE = " \
- imx6ul-14x14-evk-btwifi.dtb \
- imx6ul-14x14-evk-btwifi-oob.dtb \
- imx6ul-14x14-evk-csi.dtb \
- imx6ul-14x14-evk.dtb \
- imx6ul-14x14-evk-ecspi.dtb \
- imx6ul-14x14-evk-ecspi-slave.dtb \
- imx6ul-14x14-evk-emmc.dtb \
- imx6ul-14x14-evk-gpmi-weim.dtb \
+ nxp/imx/imx6ul-14x14-evk-btwifi.dtb \
+ nxp/imx/imx6ul-14x14-evk-btwifi-sdio3_0.dtb \
+ nxp/imx/imx6ul-14x14-evk-csi.dtb \
+ nxp/imx/imx6ul-14x14-evk.dtb \
+ nxp/imx/imx6ul-14x14-evk-ecspi.dtb \
+ nxp/imx/imx6ul-14x14-evk-ecspi-slave.dtb \
+ nxp/imx/imx6ul-14x14-evk-emmc.dtb \
+ nxp/imx/imx6ul-14x14-evk-gpmi-weim.dtb \
"
-KERNEL_DEVICETREE_use-mainline-bsp = "imx6ul-14x14-evk.dtb"
+KERNEL_DEVICETREE:use-mainline-bsp = "nxp/imx/imx6ul-14x14-evk.dtb"
### u-boot-fslc settings ###
-SPL_BINARY_pn-u-boot-fslc = "SPL"
-UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+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"
+SPL_BINARY:pn-u-boot-imx = ""
+UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_MAKE_TARGET:pn-u-boot-imx-mfgtool = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx = "imx"
+UBOOT_SUFFIX:pn-u-boot-imx-mfgtool = "imx"
WKS_FILE = " \
${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
@@ -48,6 +50,5 @@ 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 bd592a20..a8d76a2c 100644
--- a/conf/machine/imx6ullevk.conf
+++ b/conf/machine/imx6ullevk.conf
@@ -4,22 +4,21 @@
#@DESCRIPTION: Machine configuration for NXP i.MX6ULL EVK
#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
-MACHINEOVERRIDES =. "mx6:mx6ull:"
+MACHINEOVERRIDES =. "mx6ull:"
include conf/machine/include/imx-base.inc
-include conf/machine/include/tune-cortexa7.inc
+include conf/machine/include/arm/armv7a/tune-cortexa7.inc
-MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455"
+MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455 nxp8801-sdio nxp8987-sdio"
KERNEL_DEVICETREE = " \
- imx6ull-14x14-evk.dtb \
+ nxp/imx/imx6ull-14x14-evk.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
- imx6ull-14x14-evk-btwifi.dtb \
- imx6ull-14x14-evk-btwifi-oob.dtb \
- imx6ull-14x14-evk-emmc.dtb \
- imx6ull-14x14-evk-gpmi-weim.dtb \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ nxp/imx/imx6ull-14x14-evk-btwifi.dtb \
+ nxp/imx/imx6ull-14x14-evk-emmc.dtb \
+ nxp/imx/imx6ull-14x14-evk-gpmi-weim.dtb \
"
UBOOT_MAKE_TARGET = "u-boot.imx"
@@ -34,6 +33,5 @@ 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"
OPTEE_BIN_EXT = "6ullevk"
diff --git a/conf/machine/imx6ulz-14x14-evk.conf b/conf/machine/imx6ulz-14x14-evk.conf
index 7b794e7c..d1dcae99 100644
--- a/conf/machine/imx6ulz-14x14-evk.conf
+++ b/conf/machine/imx6ulz-14x14-evk.conf
@@ -4,20 +4,20 @@
#@DESCRIPTION: Machine configuration for NXP i.MX6ULZ 14x14 EVK
#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
-MACHINEOVERRIDES =. "mx6:mx6ul:mx6ull:mx6ulz:"
+MACHINEOVERRIDES =. "mx6ulz:"
include conf/machine/include/imx-base.inc
-include conf/machine/include/tune-cortexa7.inc
+include conf/machine/include/arm/armv7a/tune-cortexa7.inc
-MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455"
+MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455 nxp8987-sdio"
KERNEL_DEVICETREE = " \
- imx6ulz-14x14-evk.dtb \
+ nxp/imx/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 \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ nxp/imx/imx6ulz-14x14-evk-btwifi.dtb \
+ nxp/imx/imx6ulz-14x14-evk-emmc.dtb \
+ nxp/imx/imx6ulz-14x14-evk-gpmi-weim.dtb \
"
UBOOT_MAKE_TARGET = "u-boot.imx"
diff --git a/conf/machine/imx7dsabresd.conf b/conf/machine/imx7dsabresd.conf
index e848f294..4b4a6012 100644
--- a/conf/machine/imx7dsabresd.conf
+++ b/conf/machine/imx7dsabresd.conf
@@ -7,21 +7,22 @@
MACHINEOVERRIDES =. "mx7:mx7d:"
require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa7.inc
-
-MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"
-
-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 \
+include conf/machine/include/arm/armv7a/tune-cortexa7.inc
+
+MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455 nxp8987-sdio"
+
+KERNEL_DEVICETREE = "nxp/imx/imx7d-sdb.dtb"
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ nxp/imx/imx7d-sdb-epdc.dtb \
+ nxp/imx/imx7d-sdb-gpmi-weim.dtb \
+ nxp/imx/imx7d-sdb-m4.dtb \
+ nxp/imx/imx7d-sdb-mipi-dsi.dtb \
+ nxp/imx/imx7d-sdb-mqs.dtb \
+ nxp/imx/imx7d-sdb-pcie-ep.dtb \
+ nxp/imx/imx7d-sdb-qspi.dtb \
+ nxp/imx/imx7d-sdb-reva.dtb \
+ nxp/imx/imx7d-sdb-sht11.dtb \
+ nxp/imx/imx7d-sdb-usd-wifi.dtb \
"
UBOOT_MAKE_TARGET = "u-boot.imx"
@@ -37,7 +38,6 @@ 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"
diff --git a/conf/machine/imx7ulpevk.conf b/conf/machine/imx7ulpevk.conf
index a587f44b..2e39a0c7 100644
--- a/conf/machine/imx7ulpevk.conf
+++ b/conf/machine/imx7ulpevk.conf
@@ -7,28 +7,25 @@
MACHINEOVERRIDES =. "mx7:mx7ulp:"
require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa7.inc
+include conf/machine/include/arm/armv7a/tune-cortexa7.inc
-MACHINE_FEATURES += "pci wifi bluetooth bcm43430"
+MACHINE_FEATURES += "pci wifi bluetooth bcm43430 nxp8987-sdio"
KERNEL_DEVICETREE = " \
- imx7ulp-evk.dtb \
+ nxp/imx/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 \
- imx7ulp-evkb-mipi.dtb \
- imx7ulp-evkb-rm68191-qhd.dtb \
- imx7ulp-evkb-rm68200-wxga.dtb \
- imx7ulp-evkb-sd1.dtb \
- imx7ulp-evkb-sensors-to-i2c5.dtb \
- imx7ulp-evkb-spi-slave.dtb \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ nxp/imx/imx7ulp-evk-ft5416.dtb \
+ nxp/imx/imx7ulp-evk-mipi.dtb \
+ nxp/imx/imx7ulp-evkb.dtb \
+ nxp/imx/imx7ulp-evkb-emmc.dtb \
+ nxp/imx/imx7ulp-evkb-lpuart.dtb \
+ nxp/imx/imx7ulp-evkb-mipi.dtb \
+ nxp/imx/imx7ulp-evkb-rm68191-qhd.dtb \
+ nxp/imx/imx7ulp-evkb-rm68200-wxga.dtb \
+ nxp/imx/imx7ulp-evkb-sd1.dtb \
+ nxp/imx/imx7ulp-evkb-sensors-to-i2c5.dtb \
+ nxp/imx/imx7ulp-evkb-spi-slave.dtb \
"
UBOOT_MAKE_TARGET = "u-boot.imx"
@@ -41,7 +38,6 @@ UBOOT_CONFIG ??= " \
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"
diff --git a/conf/machine/imx8dx-mek.conf b/conf/machine/imx8dx-mek.conf
index 842ba1fa..f7abd89a 100644
--- a/conf/machine/imx8dx-mek.conf
+++ b/conf/machine/imx8dx-mek.conf
@@ -1,12 +1,17 @@
#@TYPE: Machine
-#@NAME: i.MX 8DXP MEK
-#@DESCRIPTION: i.MX 8DualXPlus Multisensory Enablement Kit board
+#@NAME: i.MX 8DX MEK
+#@SOC: i.MX8DX
+#@DESCRIPTION: i.MX 8DualX Multisensory Enablement Kit board
#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
-MACHINEOVERRIDES =. "mx8qxp:mx8dx:"
+MACHINEOVERRIDES =. "mx8dx:"
require include/imx8x-mek.inc
KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
UBOOT_CONFIG_BASENAME = "imx8dx_mek"
+
+ATF_PLATFORM = "imx8dx"
+
+IMX_BOOT_SOC_TARGET = "iMX8DX"
diff --git a/conf/machine/imx8dxl-a1-ddr3l-evk.conf b/conf/machine/imx8dxl-a1-ddr3l-evk.conf
new file mode 100644
index 00000000..e2be4277
--- /dev/null
+++ b/conf/machine/imx8dxl-a1-ddr3l-evk.conf
@@ -0,0 +1,9 @@
+#@TYPE: Machine
+#@NAME: i.MX 8DXL A1 EVK with DDR3L
+#@SOC: i.MX8DXL A1
+#@DESCRIPTION: Machine configuration for NXP i.MX 8DualXLite A1 Evaluation Kit with DDR3L
+#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
+
+require conf/machine/include/imx8dxl-ddr3l-evk.inc
+
+IMX_SOC_REV = "A1"
diff --git a/conf/machine/imx8dxl-a1-lpddr4-evk.conf b/conf/machine/imx8dxl-a1-lpddr4-evk.conf
new file mode 100644
index 00000000..24942cf4
--- /dev/null
+++ b/conf/machine/imx8dxl-a1-lpddr4-evk.conf
@@ -0,0 +1,9 @@
+#@TYPE: Machine
+#@NAME: i.MX 8DXL A1 EVK with LPDDR4
+#@SOC: i.MX8DXL A1
+#@DESCRIPTION: Machine configuration for NXP i.MX 8DualXLite A1 Evaluation Kit with LPDDR4
+#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
+
+require conf/machine/include/imx8dxl-lpddr4-evk.inc
+
+IMX_SOC_REV = "A1"
diff --git a/conf/machine/imx8dxl-b0-ddr3l-evk.conf b/conf/machine/imx8dxl-b0-ddr3l-evk.conf
new file mode 100644
index 00000000..0ffc176d
--- /dev/null
+++ b/conf/machine/imx8dxl-b0-ddr3l-evk.conf
@@ -0,0 +1,11 @@
+#@TYPE: Machine
+#@NAME: i.MX 8DXL B0 EVK with DDR3L
+#@SOC: i.MX8DXL B0
+#@DESCRIPTION: Machine configuration for NXP i.MX 8DualXLite B0 Evaluation Kit with DDR3L
+#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
+
+require conf/machine/include/imx8dxl-ddr3l-evk.inc
+
+IMX_SOC_REV = "B0"
+
+MACHINE_FEATURES:append:use-nxp-bsp = " optee"
diff --git a/conf/machine/imx8dxl-b0-lpddr4-evk.conf b/conf/machine/imx8dxl-b0-lpddr4-evk.conf
new file mode 100644
index 00000000..2d4d1e0d
--- /dev/null
+++ b/conf/machine/imx8dxl-b0-lpddr4-evk.conf
@@ -0,0 +1,11 @@
+#@TYPE: Machine
+#@NAME: i.MX 8DXL B0 EVK with LPDDR4
+#@SOC: i.MX8DXL B0
+#@DESCRIPTION: Machine configuration for NXP i.MX 8DualXLite B0 Evaluation Kit with LPDDR4
+#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
+
+require conf/machine/include/imx8dxl-lpddr4-evk.inc
+
+IMX_SOC_REV = "B0"
+
+MACHINE_FEATURES:append:use-nxp-bsp = " optee"
diff --git a/conf/machine/imx8dxl-ddr3l-evk.conf b/conf/machine/imx8dxl-ddr3l-evk.conf
deleted file mode 100644
index 1b2bad6b..00000000
--- a/conf/machine/imx8dxl-ddr3l-evk.conf
+++ /dev/null
@@ -1,11 +0,0 @@
-#@TYPE: Machine
-#@NAME: i.MX 8DXL EVK with DDR3
-#@DESCRIPTION: NXP i.MX 8DXLite Evaluation Kit with DDR3
-#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
-
-require conf/machine/include/imx8dxl-evk.inc
-KERNEL_DEVICETREE_BASENAME = "imx8dxl-ddr3-evk"
-UBOOT_CONFIG_BASENAME = "imx8dxl_ddr3_evk"
-UBOOT_CONFIG[nand] = "${UBOOT_CONFIG_BASENAME}_nand_defconfig"
-
-BOARD_TYPE = "val"
diff --git a/conf/machine/imx8mm-ddr4-evk.conf b/conf/machine/imx8mm-ddr4-evk.conf
index 3901bb92..467ca863 100644
--- a/conf/machine/imx8mm-ddr4-evk.conf
+++ b/conf/machine/imx8mm-ddr4-evk.conf
@@ -7,9 +7,12 @@
require include/imx8mm-evk.inc
KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
- freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67191.dtb \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-revb.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67191.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67191-cmd-ram.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67199.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67199-cmd-ram.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8mm_ddr4_evk"
@@ -23,3 +26,6 @@ DDR_FIRMWARE_NAME = " \
"
IMXBOOT_TARGETS_BASENAME = "flash_ddr4_evk"
+
+# Mainline U-Boot doesn't support DDR4 so it must be set to u-boot-imx.
+IMX_DEFAULT_BOOTLOADER = "u-boot-imx"
diff --git a/conf/machine/imx8mm-lpddr4-evk.conf b/conf/machine/imx8mm-lpddr4-evk.conf
index 6007c540..1387e594 100644
--- a/conf/machine/imx8mm-lpddr4-evk.conf
+++ b/conf/machine/imx8mm-lpddr4-evk.conf
@@ -8,18 +8,23 @@ 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 \
+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}-dpdk.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-ecspi-slave.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lk.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}-rpmsg-wm8524.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg-wm8524-lpv.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-usd-wifi.dtb \
"
@@ -27,10 +32,10 @@ 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 \
+ 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/imx8mn-ddr4-evk.conf b/conf/machine/imx8mn-ddr4-evk.conf
index 442afdbd..7a796d38 100644
--- a/conf/machine/imx8mn-ddr4-evk.conf
+++ b/conf/machine/imx8mn-ddr4-evk.conf
@@ -7,11 +7,13 @@
require include/imx8mn-evk.inc
KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-usd-wifi.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8mn_ddr4_evk"
+UBOOT_CONFIG[nom] = "${UBOOT_CONFIG_BASENAME}_nom_defconfig"
+
DDR_FIRMWARE_VERSION = "201810"
DDR_FIRMWARE_NAME = " \
ddr4_imem_1d_${DDR_FIRMWARE_VERSION}.bin \
@@ -20,3 +22,8 @@ DDR_FIRMWARE_NAME = " \
ddr4_dmem_2d_${DDR_FIRMWARE_VERSION}.bin \
"
IMXBOOT_TARGETS_BASENAME = "flash_ddr4_evk"
+
+# Mainline BSP doesn't support DDR4 so it must be set to nxp.
+# Also this machine isn't supported by u-boot-fslc but imx8mn-evk.inc already
+# set the bootloader to u-boot-imx instead when NXP BSP is used.
+IMX_DEFAULT_BSP = "nxp"
diff --git a/conf/machine/imx8mn-lpddr4-evk.conf b/conf/machine/imx8mn-lpddr4-evk.conf
index 7c58bc19..25103706 100644
--- a/conf/machine/imx8mn-lpddr4-evk.conf
+++ b/conf/machine/imx8mn-lpddr4-evk.conf
@@ -8,8 +8,12 @@ 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 = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-root.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-usd-wifi.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-revE.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-swpdm.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8mn_evk"
DDR_FIRMWARE_NAME = " \
@@ -19,3 +23,8 @@ DDR_FIRMWARE_NAME = " \
lpddr4_pmu_train_2d_dmem.bin \
"
IMXBOOT_TARGETS_BASENAME = "flash_evk"
+
+# Mainline BSP doesn't support LPDDR4 so it must be set to nxp.
+# Also this machine isn't supported by u-boot-fslc but imx8mn-evk.inc already
+# set the bootloader to u-boot-imx instead when NXP BSP is used.
+IMX_DEFAULT_BSP = "nxp"
diff --git a/conf/machine/imx8mnul-ddr3l-evk.conf b/conf/machine/imx8mnul-ddr3l-evk.conf
new file mode 100644
index 00000000..de00b6f6
--- /dev/null
+++ b/conf/machine/imx8mnul-ddr3l-evk.conf
@@ -0,0 +1,69 @@
+#@TYPE: Machine
+#@NAME: NXP i.MX 8MNUL EVK with DDR3L
+#@SOC: i.MX8MN
+#@DESCRIPTION: Machine configuration for NXP i.MX 8M Nano UltraLite Evaluation Kit with DDR3L
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+MACHINEOVERRIDES =. "mx8mnul:"
+
+require conf/machine/include/imx-base.inc
+require conf/machine/include/arm/armv8a/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_BASENAME = "imx8mn-ddr3l-evk"
+KERNEL_DEVICETREE = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
+"
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-ak5558.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \
+"
+
+UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"
+
+IMX_DEFAULT_BOOTLOADER = "u-boot-imx"
+IMX_DEFAULT_KERNEL = "linux-imx"
+
+UBOOT_SUFFIX = "bin"
+
+UBOOT_CONFIG ??= "sd"
+UBOOT_CONFIG_BASENAME = "imx8mn_ddr3l_evk"
+UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_config,sdcard"
+UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_defconfig"
+
+SPL_BINARY = "spl/u-boot-spl.bin"
+
+ATF_PLATFORM = "imx8mn"
+
+# Set DDR FIRMWARE
+DDR_FIRMWARE_VERSION = "201810"
+DDR_FIRMWARE_NAME = " \
+ ddr3_dmem_1d_${DDR_FIRMWARE_VERSION}.bin \
+ ddr3_imem_1d_${DDR_FIRMWARE_VERSION}.bin \
+"
+
+# Set imx-mkimage boot target
+IMXBOOT_TARGETS_BASENAME = "flash_ddr3l_evk"
+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"
+
+IMAGE_BOOTLOADER = "imx-boot"
+
+BOOT_SPACE = "65536"
+LOADADDR = ""
+UBOOT_MAKE_TARGET = "all"
+UBOOT_MAKE_TARGET:pn-u-boot-imx = ""
+IMX_BOOT_SEEK = "32"
+
+OPTEE_BIN_EXT = "8mnul"
diff --git a/conf/machine/imx8mp-ddr4-evk.conf b/conf/machine/imx8mp-ddr4-evk.conf
index 09517769..c63c8d68 100644
--- a/conf/machine/imx8mp-ddr4-evk.conf
+++ b/conf/machine/imx8mp-ddr4-evk.conf
@@ -8,7 +8,7 @@ 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"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-imx"
KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
@@ -25,3 +25,8 @@ DDR_FIRMWARE_NAME = " \
"
IMXBOOT_TARGETS_BASENAME = "flash_ddr4_evk"
+
+# Mainline BSP doesn't support DDR4 so it must be set to nxp.
+# Also this machine isn't supported by u-boot-fslc but imx8mp-evk.inc already
+# set the bootloader to u-boot-imx instead when NXP BSP is used.
+IMX_DEFAULT_BSP = "nxp"
diff --git a/conf/machine/imx8mp-lpddr4-evk.conf b/conf/machine/imx8mp-lpddr4-evk.conf
index cf926c08..39108716 100644
--- a/conf/machine/imx8mp-lpddr4-evk.conf
+++ b/conf/machine/imx8mp-lpddr4-evk.conf
@@ -11,39 +11,58 @@ 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-ov2775.dtb \
- freescale/imx8mp-evk-basler-ov5640.dtb \
- freescale/imx8mp-evk-dsp.dtb \
- freescale/imx8mp-evk-dsp-lpa.dtb \
- freescale/imx8mp-evk-dual-basler.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 \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ freescale/imx8mp-ab2.dtb \
+ freescale/imx8mp-evk-basler.dtb \
+ freescale/imx8mp-evk-basler-ov2775.dtb \
+ freescale/imx8mp-evk-basler-ov5640.dtb \
+ freescale/imx8mp-evk-dpdk.dtb \
+ freescale/imx8mp-evk-dsp.dtb \
+ freescale/imx8mp-evk-dual-basler.dtb \
+ freescale/imx8mp-evk-dual-os08a20.dtb \
+ freescale/imx8mp-evk-dual-ov2775.dtb \
+ freescale/imx8mp-evk-ecspi-slave.dtb \
+ freescale/imx8mp-evk-flexcan2.dtb \
+ freescale/imx8mp-evk-hifiberry-dacplus.dtb \
+ freescale/imx8mp-evk-inmate.dtb \
+ freescale/imx8mp-evk-iqaudio-dacplus.dtb \
+ freescale/imx8mp-evk-iqaudio-dacpro.dtb \
+ freescale/imx8mp-evk-it6263-lvds-dual-channel.dtb \
+ freescale/imx8mp-evk-jdi-wuxga-lvds-panel.dtb \
+ freescale/imx8mp-evk-ndm.dtb \
+ freescale/imx8mp-evk-os08a20.dtb \
+ freescale/imx8mp-evk-os08a20-ov5640.dtb \
+ freescale/imx8mp-evk-ov2775.dtb \
+ freescale/imx8mp-evk-ov2775-ov5640.dtb \
+ freescale/imx8mp-evk-pcie-ep.dtb \
+ freescale/imx8mp-evk-revA3-8mic-revE.dtb \
+ freescale/imx8mp-evk-rm67191.dtb \
+ freescale/imx8mp-evk-rm67199.dtb \
+ freescale/imx8mp-evk-root.dtb \
+ freescale/imx8mp-evk-rpmsg.dtb \
+ freescale/imx8mp-evk-rpmsg-lpv.dtb \
+ freescale/imx8mp-evk-sof-wm8960.dtb \
+ freescale/imx8mp-evk-spdif-lb.dtb \
+ freescale/imx8mp-evk-usdhc1-m2.dtb \
+ freescale/imx8mp-evk-8mic-swpdm.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8mp_evk"
UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_defconfig"
+UBOOT_CONFIG[ndm] = "${UBOOT_CONFIG_BASENAME}_ndm_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 \
+ 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"
+
+# Mainline BSP doesn't support LPDDR4 so it must be set to nxp.
+# Also this machine isn't supported by u-boot-fslc but imx8mn-evk.inc already
+# set the bootloader to u-boot-imx instead when NXP BSP is used.
+IMX_DEFAULT_BSP = "nxp"
diff --git a/conf/machine/imx8mq-evk.conf b/conf/machine/imx8mq-evk.conf
index 9907ef4b..92a436e5 100644
--- a/conf/machine/imx8mq-evk.conf
+++ b/conf/machine/imx8mq-evk.conf
@@ -4,22 +4,25 @@
#@DESCRIPTION: Machine configuration for NXP i.MX 8M Quad Evaluation Kit
#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
-MACHINEOVERRIDES =. "mx8:mx8m:mx8mq:"
+MACHINEOVERRIDES =. "mx8mq:"
require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa53.inc
+require conf/machine/include/arm/armv8a/tune-cortexa53.inc
-IMX_DEFAULT_BSP = "nxp"
+# Mainline BSP defaults to "generic" cortexa53 configuration,
+# adjust it here to include crypto extension which enables
+# inline NEON and FPU code generation
+DEFAULTTUNE:use-mainline-bsp = "cortexa53-crypto"
-MACHINE_FEATURES += "pci wifi bluetooth optee bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES += "pci wifi bluetooth bcm43455 bcm4356 nxp8997-pcie nxp8997-sdio nxp9098-pcie nxp9098-sdio"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee bcm4359"
-MACHINE_SOCARCH_FILTER_append_mx8mq = " virtual/libopenvg virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa virtual/libgl virtual/libg2d"
+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 = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/imx8mq-evk-ak4497.dtb \
freescale/imx8mq-evk-audio-tdm.dtb \
freescale/imx8mq-evk-dcss-adv7535.dtb \
@@ -40,14 +43,13 @@ KERNEL_DEVICETREE_append_use-nxp-bsp = " \
freescale/imx8mq-evk-usdhc2-m2.dtb \
"
-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+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"
SPL_BINARY = "spl/u-boot-spl.bin"
@@ -69,19 +71,30 @@ ATF_PLATFORM = "imx8mq"
IMXBOOT_TARGETS = "flash_evk flash_evk_no_hdmi flash_dp_evk"
IMX_BOOT_SOC_TARGET = "iMX8M"
+# Add support for Syslinux to mainline BSP.
+# U-Boot has the Distro Boot mode enabled by default, which
+# require that either Syslinux to be enabled, or a boot script
+# to be used to define the boot process.
+# We opt-in for Syslinux, since it is designated as a preferred
+# distro boot mode according to the U-Boot documentation.
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Quad EVK"
+
+UBOOT_EXTLINUX_MENU_DESCRIPTION:default:use-mainline-bsp = "i.MX8M Quad EVK"
+UBOOT_EXTLINUX_FDT:default:use-mainline-bsp = "../imx8mq-evk.dtb"
+UBOOT_EXTLINUX_CONSOLE:default:use-mainline-bsp = "console=${console}"
+UBOOT_EXTLINUX_ROOT:default:use-mainline-bsp ??= "root=/dev/mmcblk1p2"
+
+# Add extlinux.conf to the lis of files, which are deployed onto the
+# boot partition
+IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
+
LOADADDR = ""
-UBOOT_SUFFIX = "bin"
UBOOT_MAKE_TARGET = ""
IMX_BOOT_SEEK = "33"
OPTEE_BIN_EXT = "8mq"
# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
-
-# Use gstreamer 1.16 from meta-freescale
-PREFERRED_VERSION_gstreamer1.0 ?= "1.16.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-base ?= "1.16.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-good ?= "1.16.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-bad ?= "1.16.imx"
-PREFERRED_VERSION_gstreamer1.0-libav ?= "1.16.0"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/imx8mq-lpddr4-wevk.conf b/conf/machine/imx8mq-lpddr4-wevk.conf
new file mode 100644
index 00000000..6aa8e0ee
--- /dev/null
+++ b/conf/machine/imx8mq-lpddr4-wevk.conf
@@ -0,0 +1,19 @@
+#@TYPE: Machine
+#@NAME: NXP i.MX 8M Quad LPDDR4 WEVK
+#@SOC: i.MX8MQ
+#@DESCRIPTION: Machine configuration for NXP i.MX 8M Quad LPDDR4 EVK with NXP Wi-Fi
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+MACHINEOVERRIDES =. "imx8mq-evk:"
+require conf/machine/imx8mq-evk.conf
+
+UBOOT_CONFIG ??= "sd"
+UBOOT_CONFIG[sd] = "imx8mq_wevk_config,sdcard"
+
+# Set imx-mkimage boot target
+IMXBOOT_TARGETS = "flash_evk flash_evk_no_hdmi"
+
+# Mainline BSP doesn't support LPDDR4 WEVK board so it must be set to nxp.
+# Also this machine isn't supported by u-boot-fslc but imx8mq-evk.conf already
+# set the bootloader to u-boot-imx instead when NXP BSP is used.
+IMX_DEFAULT_BSP = "nxp"
diff --git a/conf/machine/imx8qm-mek.conf b/conf/machine/imx8qm-mek.conf
index 5ceb6b8b..5dea4e41 100644
--- a/conf/machine/imx8qm-mek.conf
+++ b/conf/machine/imx8qm-mek.conf
@@ -1,20 +1,21 @@
#@TYPE: Machine
#@NAME: i.MX 8QM MEK
+#@SOC: i.MX8QM
#@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
+require conf/machine/include/arm/armv8a/tune-cortexa72-cortexa53.inc
IMX_DEFAULT_BSP = "nxp"
-MACHINE_FEATURES += "pci optee bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES += "pci optee bcm43455 bcm4356 nxp8997-pcie nxp9098-pcie"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"
# Don't include kernels in standard images
-RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
+RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = ""
LOADADDR = ""
@@ -26,27 +27,26 @@ SERIAL_CONSOLES = "115200;ttyAMA0"
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 \
+ freescale/imx8qm-mek.dtb \
+ freescale/imx8qm-mek-ca53.dtb \
+ freescale/imx8qm-mek-ca72.dtb \
+ freescale/imx8qm-mek-dsi-rm67191.dtb \
+ freescale/imx8qm-mek-dsi-rm67199.dtb \
+ freescale/imx8qm-mek-enet2-tja1100.dtb \
+ freescale/imx8qm-mek-esai.dtb \
+ freescale/imx8qm-mek-hdmi.dtb \
+ freescale/imx8qm-mek-hdmi-rx.dtb \
+ freescale/imx8qm-mek-hdmi-rx-ov5640.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-rpmsg.dtb \
+ freescale/imx8qm-mek-sof.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 = \
@@ -55,15 +55,14 @@ UBOOT_MAKE_TARGET = \
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"
+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"
@@ -86,4 +85,4 @@ IMX_BOOT_SOC_TARGET = "iMX8QM"
BOARD_TYPE = "mek"
# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/imx8qxp-mek.conf b/conf/machine/imx8qxp-mek.conf
index fe0f6727..72867a95 100644
--- a/conf/machine/imx8qxp-mek.conf
+++ b/conf/machine/imx8qxp-mek.conf
@@ -1,5 +1,6 @@
#@TYPE: Machine
#@NAME: i.MX 8QXP MEK
+#@SOC: i.MX8QXP
#@DESCRIPTION: i.MX 8QuadXPlus Multisensory Enablement Kit board
#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
@@ -8,19 +9,25 @@ 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 \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-a0.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-dpu-lcdif.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-dpu-lcdif-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-dsi-rm67199.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-dsi-rm67199-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-enet2.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-enet2-sja1105.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-enet2-tja1100.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}-sof.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-sof-cs42888.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-sof-wm8960.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8qxp_mek"
+
+ATF_PLATFORM = "imx8qx"
+
+IMX_BOOT_SOC_TARGET = "iMX8QX"
diff --git a/conf/machine/imx8ulp-lpddr4-evk.conf b/conf/machine/imx8ulp-lpddr4-evk.conf
new file mode 100644
index 00000000..273e1569
--- /dev/null
+++ b/conf/machine/imx8ulp-lpddr4-evk.conf
@@ -0,0 +1,27 @@
+#@TYPE: Machine
+#@NAME: i.MX 8ULP EVK
+#@SOC: i.MX8ULP
+#@DESCRIPTION: Machine configuration for NXP i.MX 8ULP Evaluation Kit with LPDDR4
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+require include/imx8ulp-evk.inc
+
+KERNEL_DEVICETREE_BASENAME = "imx8ulp-evk"
+
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-epdc.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-flexio-i2c.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-i3c.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lpa.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lpspi-slave.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-nd.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rk055hdmipi4m.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rk055hdmipi4mv2.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-sof-btsco.dtb \
+"
+
+UBOOT_CONFIG_BASENAME = "imx8ulp_evk"
+
+MACHINE_FEATURES += "soc-reva1"
+UPOWER_FIRMWARE_NAME = "upower_a1.bin"
+IMX_DEFAULT_BSP = "nxp"
diff --git a/conf/machine/imx93-11x11-lpddr4x-evk.conf b/conf/machine/imx93-11x11-lpddr4x-evk.conf
new file mode 100644
index 00000000..159a4472
--- /dev/null
+++ b/conf/machine/imx93-11x11-lpddr4x-evk.conf
@@ -0,0 +1,34 @@
+#@TYPE: Machine
+#@NAME: NXP i.MX 93 11x11 Evaluation Kit with LPDDR4X
+#@SOC: i.MX93
+#@DESCRIPTION: Machine configuration for NXP i.MX 93 11x11 EVK with LPDDR4X
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+require include/imx93-evk.inc
+
+KERNEL_DEVICETREE_BASENAME = "imx93-11x11-evk"
+
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-aud-hat.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-boe-wxga-lvds-panel.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-flexio-i2c.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-flexspi-m2.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-i3c.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lpspi-slave.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lpspi.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lpuart.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-mqs.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-mt9m114.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67199.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-root.dtb \
+ "
+
+UBOOT_CONFIG_BASENAME = "imx93_11x11_evk"
+
+DDR_FIRMWARE_NAME = " \
+ lpddr4_dmem_1d_v202201.bin \
+ lpddr4_dmem_2d_v202201.bin \
+ lpddr4_imem_1d_v202201.bin \
+ lpddr4_imem_2d_v202201.bin \
+"
diff --git a/conf/machine/imx93-14x14-lpddr4x-evk.conf b/conf/machine/imx93-14x14-lpddr4x-evk.conf
new file mode 100644
index 00000000..9ac24b65
--- /dev/null
+++ b/conf/machine/imx93-14x14-lpddr4x-evk.conf
@@ -0,0 +1,31 @@
+#@TYPE: Machine
+#@NAME: NXP i.MX 93 14x14 Evaluation Kit with LPDDR4X
+#@SOC: i.MX93
+#@DESCRIPTION: Machine configuration for NXP i.MX 93 14x14 EVK with LPDDR4X
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+require conf/machine/include/imx93-evk.inc
+
+KERNEL_DEVICETREE_BASENAME = "imx93-14x14-evk"
+
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-aud-hat.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-tja1103.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-mqs.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67199.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lvds-it6263.dtb \
+"
+
+UBOOT_CONFIG_BASENAME = "imx93_14x14_evk"
+IMXBOOT_TARGETS_BASENAME = "flash_singleboot"
+
+DDR_FIRMWARE_NAME = " \
+ lpddr4_dmem_1d_v202201.bin \
+ lpddr4_dmem_2d_v202201.bin \
+ lpddr4_imem_1d_v202201.bin \
+ lpddr4_imem_2d_v202201.bin \
+"
+
+UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_defconfig"
+
+IMXBOOT_TARGETS = "${@bb.utils.contains('UBOOT_CONFIG', 'fspi', '${IMXBOOT_TARGETS_BASENAME}_flexspi', '${IMXBOOT_TARGETS_BASENAME}', d)}"
diff --git a/conf/machine/imx93-9x9-lpddr4-qsb.conf b/conf/machine/imx93-9x9-lpddr4-qsb.conf
new file mode 100644
index 00000000..3ccd6fd7
--- /dev/null
+++ b/conf/machine/imx93-9x9-lpddr4-qsb.conf
@@ -0,0 +1,30 @@
+#@TYPE: Machine
+#@NAME: NXP i.MX93 9x9 Quick Start Board with LPDDR4
+#@SOC: i.MX93
+#@DESCRIPTION: Machine configuration for NXP i.MX93 9x9 QSB with LPDDR4
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+require include/imx93-evk.inc
+
+KERNEL_DEVICETREE_BASENAME = "imx93-9x9-qsb"
+
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-can1.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-flexspi-m2.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-i3c.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lpspi-slave.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lpspi.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-mt9m114.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-ontat-wvga-panel.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg-lpv.dtb \
+"
+
+UBOOT_CONFIG_BASENAME = "imx93_9x9_qsb"
+
+DDR_FIRMWARE_NAME = " \
+ lpddr4_dmem_1d_v202201.bin \
+ lpddr4_dmem_2d_v202201.bin \
+ lpddr4_imem_1d_v202201.bin \
+ lpddr4_imem_2d_v202201.bin \
+"
diff --git a/conf/machine/include/e500mc.inc b/conf/machine/include/e500mc.inc
index a33485be..aa60d95e 100644
--- a/conf/machine/include/e500mc.inc
+++ b/conf/machine/include/e500mc.inc
@@ -1,6 +1,6 @@
TARGET_FPU = "hard"
-require conf/machine/include/tune-ppce500mc.inc
+require conf/machine/include/powerpc/tune-ppce500mc.inc
require conf/machine/include/qoriq-ppc.inc
MACHINEOVERRIDES =. "e500mc:"
diff --git a/conf/machine/include/e500v2.inc b/conf/machine/include/e500v2.inc
index 420f0343..a9af67cd 100644
--- a/conf/machine/include/e500v2.inc
+++ b/conf/machine/include/e500v2.inc
@@ -1,4 +1,4 @@
-require conf/machine/include/tune-ppce500v2.inc
+require conf/machine/include/powerpc/tune-ppce500v2.inc
MACHINEOVERRIDES =. "e500v2:"
require conf/machine/include/qoriq-ppc.inc
diff --git a/conf/machine/include/e5500-64b.inc b/conf/machine/include/e5500-64b.inc
index 72b958cd..42acb2f2 100644
--- a/conf/machine/include/e5500-64b.inc
+++ b/conf/machine/include/e5500-64b.inc
@@ -1,11 +1,11 @@
TARGET_FPU = "hard"
DEFAULTTUNE ?= "ppc64e5500"
-require conf/machine/include/tune-ppce5500.inc
+require conf/machine/include/powerpc/tune-ppce5500.inc
require conf/machine/include/qoriq-ppc.inc
MACHINEOVERRIDES =. "e5500-64b:"
require conf/multilib.conf
MULTILIBS ?= "multilib:lib32"
-DEFAULTTUNE_virtclass-multilib-lib32 ?= "ppce5500"
+DEFAULTTUNE:virtclass-multilib-lib32 ?= "ppce5500"
diff --git a/conf/machine/include/e5500.inc b/conf/machine/include/e5500.inc
index 364ffac4..c6709c16 100644
--- a/conf/machine/include/e5500.inc
+++ b/conf/machine/include/e5500.inc
@@ -1,6 +1,6 @@
TARGET_FPU = "hard"
-require conf/machine/include/tune-ppce5500.inc
+require conf/machine/include/powerpc/tune-ppce5500.inc
require conf/machine/include/qoriq-ppc.inc
MACHINEOVERRIDES =. "e5500:"
diff --git a/conf/machine/include/e6500-64b.inc b/conf/machine/include/e6500-64b.inc
index e0e04dbc..3611d51a 100644
--- a/conf/machine/include/e6500-64b.inc
+++ b/conf/machine/include/e6500-64b.inc
@@ -1,11 +1,11 @@
TARGET_FPU = "hard"
DEFAULTTUNE ?= "ppc64e6500"
-require conf/machine/include/tune-ppce6500.inc
+require conf/machine/include/powerpc/tune-ppce6500.inc
require conf/machine/include/qoriq-ppc.inc
MACHINEOVERRIDES =. "e6500-64b:"
require conf/multilib.conf
MULTILIBS ?= "multilib:lib32"
-DEFAULTTUNE_virtclass-multilib-lib32 ?= "ppce6500"
+DEFAULTTUNE:virtclass-multilib-lib32 ?= "ppce6500"
diff --git a/conf/machine/include/e6500.inc b/conf/machine/include/e6500.inc
index 8d773b6e..565b75ee 100644
--- a/conf/machine/include/e6500.inc
+++ b/conf/machine/include/e6500.inc
@@ -1,6 +1,6 @@
TARGET_FPU = "hard"
-require conf/machine/include/tune-ppce6500.inc
+require conf/machine/include/powerpc/tune-ppce6500.inc
require conf/machine/include/qoriq-ppc.inc
MACHINEOVERRIDES =. "e6500:"
@@ -9,4 +9,4 @@ BUILD_64BIT_KERNEL = "1"
require conf/multilib.conf
MULTILIBS ?= "multilib:lib64"
-DEFAULTTUNE_virtclass-multilib-lib64 ?= "ppc64e6500"
+DEFAULTTUNE:virtclass-multilib-lib64 ?= "ppc64e6500"
diff --git a/conf/machine/include/imx-base.inc b/conf/machine/include/imx-base.inc
index 65b1e6e0..c1243c7f 100644
--- a/conf/machine/include/imx-base.inc
+++ b/conf/machine/include/imx-base.inc
@@ -13,8 +13,8 @@ require conf/machine/include/utilities.inc
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"
+IMX_DEFAULT_BSP:mxs ?= "mainline"
+IMX_DEFAULT_BSP:mx5 ?= "mainline"
MACHINEOVERRIDES =. "use-${IMX_DEFAULT_BSP}-bsp:"
@@ -32,16 +32,16 @@ UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
# ,----[ 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"
+# | 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"
+# | 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
@@ -60,48 +60,82 @@ UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
# |
# | UBOOT_MACHINE = "mx53loco_config"
# `----
+#
+# Please note that UBOOT_SUFFIX must be set in the machine config even
+# if the value is the same for the U-Boot flavors. If the value is not
+# set, then the assignment here is the one used, the value resolves to
+# empty, and the build fails:
+# | cp: cannot stat '/.../tmp/work/imx8qm_mek-fsl-linux/u-boot-imx/2022.04-r0/build/imx8qm_mek_defconfig/u-boot.': No such file or directory
+#| WARNING: /.../tmp/work/imx8qm_mek-fsl-linux/u-boot-imx/2022.04-r0/temp/run.do_compile.21223:186 exit 1 from 'cp /.../tmp/work/imx8qm_mek-fsl-linux/u-boot-imx/2022.04-r0/build/${config}/${binary} /.../tmp/work/imx8qm_mek-fsl-linux/u-boot-imx/2022.04-r0/build/${config}/u-boot-${type}.${UBOOT_SUFFIX:pn-u-boot-imx}'
+#
IMX_DEFAULT_BOOTLOADER ??= "u-boot-fslc"
-UBOOT_SUFFIX ?= "${UBOOT_SUFFIX_pn-${IMX_DEFAULT_BOOTLOADER}}"
+UBOOT_SUFFIX ?= "${UBOOT_SUFFIX:pn-${IMX_DEFAULT_BOOTLOADER}}"
# We need to export the original variable to allow it to be used when generating
# wic based images.
SPL_BINARY ??= "${@get_spl_binary(d)}"
-IMX_DEFAULT_MFGTOOL = "${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', 'u-boot-imx','u-boot-imx-mfgtool', 'u-boot-fslc', d)}"
-
PREFERRED_PROVIDER_u-boot ??= "${IMX_DEFAULT_BOOTLOADER}"
-PREFERRED_PROVIDER_u-boot-mfgtool ??= "${IMX_DEFAULT_MFGTOOL}"
+PREFERRED_PROVIDER_u-boot-mfgtool ??= "${IMX_DEFAULT_BOOTLOADER}"
PREFERRED_PROVIDER_virtual/bootloader ??= "${IMX_DEFAULT_BOOTLOADER}"
PREFERRED_PROVIDER_u-boot-mxsboot-native ??= "u-boot-fslc-mxsboot-native"
-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_mx6ul = "0x80008000"
-UBOOT_ENTRYPOINT_mx6ull = "0x80008000"
-UBOOT_ENTRYPOINT_mx6ulz = "0x80008000"
-UBOOT_ENTRYPOINT_mx7 = "0x80008000"
-UBOOT_ENTRYPOINT_mx7ulp = "0x60008000"
-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_ENTRYPOINT:mxs-generic-bsp ?= "0x40008000"
+UBOOT_ENTRYPOINT:mx51-generic-bsp ?= "0x90008000"
+UBOOT_ENTRYPOINT:mx53-generic-bsp ?= "0x70008000"
+UBOOT_ENTRYPOINT:mx6-generic-bsp ?= "0x10008000"
+UBOOT_ENTRYPOINT:mx6sl-generic-bsp ?= "0x80008000"
+UBOOT_ENTRYPOINT:mx6sll-generic-bsp ?= "0x80008000"
+UBOOT_ENTRYPOINT:mx6sx-generic-bsp ?= "0x80008000"
+UBOOT_ENTRYPOINT:mx6ul-generic-bsp ?= "0x80008000"
+UBOOT_ENTRYPOINT:mx6ull-generic-bsp ?= "0x80008000"
+UBOOT_ENTRYPOINT:mx6ulz-generic-bsp ?= "0x80008000"
+UBOOT_ENTRYPOINT:mx7-generic-bsp ?= "0x80008000"
+UBOOT_ENTRYPOINT:mx7ulp-generic-bsp ?= "0x60008000"
+UBOOT_ENTRYPOINT:mx8m-generic-bsp ?= "0x40480000"
+UBOOT_ENTRYPOINT:vf-generic-bsp ?= "0x80008000"
+
+# Some SoC can utilize the boot container provided by U-Boot,
+# below variable sets that those SoC do use this rather than
+# assembling it in the imx-boot recipe.
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"
-XSERVER_DRIVER_vf = "xf86-video-modesetting"
-XSERVER_DRIVER_append_mx8 = " xf86-video-modesetting"
-XSERVER_DRIVER_use-mainline-bsp = " \
+
+# The boot container should be used only if we're not using u-boot-imx as
+# IMX_DEFAULT_BOOTLOADER.
+UBOOT_PROVIDES_BOOT_CONTAINER:mx8m-generic-bsp = "${@oe.utils.ifelse(d.getVar('IMX_DEFAULT_BOOTLOADER') == 'u-boot-imx', '0', '1')}"
+
+# Trusted Firmware for Cortex-A (TF-A) can have different providers, either
+# from upstream or from NXP downstream fork. Below variable defines which TF-A
+# shall be taken into the build, and will be integrated into runtime image.
+#
+# Upstream TF-A recipe resides in the meta-arm layer and in maintained by OE
+# community. Therefore, in order to add upstream TF-A - additional layer has
+# to be included in the bblayers.con file. Compatible machines are added to
+# this layer via dynamic-layers mechanism.
+#
+# NOTE: Current upstream TF-A version (v2.7) does not support HAB feature of
+# i.MX8M family. If the upstream TF-A version is chosen, then HAB will not be
+# available for all SoCs that are opting-in. This might change with future TF-A
+# release, so this statement shall be kept here until support is added.
+#
+# Default TF-A provider to NXP downstream fork
+IMX_DEFAULT_ATF_PROVIDER ??= "imx-atf"
+
+# Allow setting the UART used during the boot by ATF.
+
+# FIXME: We should return INVALID here but currently only i.MX8M has support to override the UART
+# base address in source code.
+SOC_ATF_BOOT_UART_BASE = ""
+
+SOC_ATF_BOOT_UART_BASE:mx8m-generic-bsp = "0x30890000"
+ATF_BOOT_UART_BASE ?= "${SOC_ATF_BOOT_UART_BASE}"
+
+PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
+XSERVER_DRIVER = "xf86-video-fbdev"
+XSERVER_DRIVER:vf-generic-bsp = "xf86-video-modesetting"
+XSERVER_DRIVER:append:mx8-generic-bsp = " xf86-video-modesetting"
+XSERVER_DRIVER:imx-mainline-bsp = " \
xf86-video-fbdev \
xf86-video-modesetting \
xserver-xorg-extension-glx \
@@ -118,43 +152,120 @@ MACHINE_EXTRA_RRECOMMENDS = "kernel-modules"
# ARM_INSTRUCTION_SET = "thumb"
#
# handled by software
-# DEFAULTTUNE_mx6 ?= "cortexa9t-neon"
+# DEFAULTTUNE:mx6-generic-bsp ?= "cortexa9t-neon"
# handled by hardware
-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_mx8m ?= "cortexa53-crypto"
-DEFAULTTUNE_mx8qm ?= "cortexa72-cortexa53-crypto"
-DEFAULTTUNE_mx8qxp ?= "cortexa35-crypto"
+DEFAULTTUNE:mx6-generic-bsp ?= "cortexa9thf-neon"
+DEFAULTTUNE:mx6ul-generic-bsp ?= "cortexa7thf-neon"
+DEFAULTTUNE:mx6ull-generic-bsp ?= "cortexa7thf-neon"
+DEFAULTTUNE:mx6ulz-generic-bsp ?= "cortexa7thf-neon"
+DEFAULTTUNE:mx7-generic-bsp ?= "cortexa7thf-neon"
+DEFAULTTUNE:vf-generic-bsp ?= "cortexa5thf-neon"
+
+DEFAULTTUNE:mx8m-generic-bsp ?= "cortexa53-crypto"
+DEFAULTTUNE:mx8qm-generic-bsp ?= "cortexa72-cortexa53-crypto"
+DEFAULTTUNE:mx8x-generic-bsp ?= "cortexa35-crypto"
+DEFAULTTUNE:mx8ulp-generic-bsp ?= "cortexa35-crypto"
+DEFAULTTUNE:mx93-generic-bsp ?= "cortexa55"
INHERIT += "machine-overrides-extender"
-MACHINEOVERRIDES_EXTENDER_mx25 = "use-mainline-bsp"
-MACHINEOVERRIDES_EXTENDER_mx6q = "imxfbdev:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx6dl = "imxfbdev:imxpxp:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6sx = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
-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 \
- \
+IMX_SOC_REV ??= "A0"
+IMX_SOC_REV:mx8qm-generic-bsp ??= "B0"
+IMX_SOC_REV:mx8qxp-generic-bsp ??= \
+ "${@bb.utils.contains('MACHINE_FEATURES', 'soc-revb0', 'B0', \
+ 'C0', d)}"
+IMX_SOC_REV:mx8dx-generic-bsp ??= "C0"
+# WARNING: Don't set a default for 8DXL since an image built with A1 can brick a B0 board
+#IMX_SOC_REV:mx8dxl-generic-bsp ??= ""
+IMX_SOC_REV:mx8ulp-generic-bsp ??= \
+ "${@bb.utils.contains('MACHINE_FEATURES', 'soc-reva0', 'A0', \
+ 'A2', d)}"
+IMX_SOC_REV:mx93-generic-bsp ??= "A1"
+
+IMX_SOC_REV_LOWER = "${@d.getVar('IMX_SOC_REV').lower()}"
+IMX_SOC_REV_UPPER = "${@d.getVar('IMX_SOC_REV').upper()}"
+
+#######
+### NXP BSP specific overrides
+#######
+
+MACHINEOVERRIDES_EXTENDER:mx6q:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d:mx6-generic-bsp:mx6-nxp-bsp:mx6q-generic-bsp:mx6q-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx6dl:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:imxpxp:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d:imxepdc:mx6-generic-bsp:mx6-nxp-bsp:mx6dl-generic-bsp:mx6dl-nxp-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx6sx:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d:mx6-generic-bsp:mx6-nxp-bsp:mx6sx-generic-bsp:mx6sx-nxp-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx6sl:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:imxpxp:imxgpu:imxgpu2d:imxepdc:mx6-generic-bsp:mx6-nxp-bsp:mx6sl-generic-bsp:mx6sl-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx6sll:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:imxpxp:imxepdc:mx6-generic-bsp:mx6-nxp-bsp:mx6sl-generic-bsp:mx6sl-nxp-bsp:mx6sll-generic-bsp:mx6sll-nxp-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx6ul:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:imxpxp:mx6-generic-bsp:mx6-nxp-bsp:mx6ul-generic-bsp:mx6ul-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx6ull:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:imxpxp:imxepdc:mx6-generic-bsp:mx6-nxp-bsp:mx6ul-generic-bsp:mx6ul-nxp-bsp:mx6ull-generic-bsp:mx6ull-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx6ulz:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:imxpxp:imxepdc:mx6-generic-bsp:mx6-nxp-bsp:mx6ul-generic-bsp:mx6ul-nxp-bsp:mx6ull-generic-bsp:mx6ull-nxp-bsp:mx6ulz-generic-bsp:mx6ulz-nxp-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx7d:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:imxpxp:imxepdc:mx7-generic-bsp:mx7-nxp-bsp:mx7d-generic-bsp:mx7d-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx7ulp:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d:mx7-generic-bsp:mx7-nxp-bsp:mx7ulp-generic-bsp:mx7ulp-nxp-bsp"
+
+MACHINEOVERRIDES_EXTENDER:vf:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:vf-generic-bsp:vf-nxp-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx8qm:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8qm-generic-bsp:mx8qm-nxp-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx8mm:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mm-generic-bsp:mx8mm-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8mn:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxgpu:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mn-generic-bsp:mx8mn-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8mnul:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mnul-generic-bsp:mx8mnul-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8mp:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mp-generic-bsp:mx8mp-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8mq:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxvpu:imxgpu:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mq-generic-bsp:mx8mq-nxp-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx8qxp:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8x-generic-bsp:mx8x-nxp-bsp:mx8qxp-generic-bsp:mx8qxp-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8dx:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8x-generic-bsp:mx8x-nxp-bsp:mx8dx-generic-bsp:mx8dx-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8dxl:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:mx8-generic-bsp:mx8-nxp-bsp:mx8x-generic-bsp:mx8x-nxp-bsp:mx8dxl-generic-bsp:mx8dxl-nxp-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx8ulp:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxgpu:imxgpu2d:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8ulp-generic-bsp:mx8ulp-nxp-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx93:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxpxp:mx9-generic-bsp:mx9-nxp-bsp:mx93-generic-bsp:mx93-nxp-bsp"
+
+#######
+### Mainline BSP specific overrides
+#######
+
+MACHINEOVERRIDES_EXTENDER:mx23:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mxs-generic-bsp:mxs-mainline-bsp:mx23-generic-bsp:mx23-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx28:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mxs-generic-bsp:mxs-mainline-bsp:mx28-generic-bsp:mx28-mainline-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx51:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx5-generic-bsp:mx5-mainline-bsp:mx51-generic-bsp:mx51-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx53:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx5-generic-bsp:mx5-mainline-bsp:mx53-generic-bsp:mx53-mainline-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx6q:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx6-generic-bsp:mx6-mainline-bsp:mx6q-generic-bsp:mx6q-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx6dl:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx6-generic-bsp:mx6-mainline-bsp:mx6dl-generic-bsp:mx6dl-mainline-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx6sx:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx6-generic-bsp:mx6-mainline-bsp:mx6sx-generic-bsp:mx6sx-mainline-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx6sl:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx6-generic-bsp:mx6-mainline-bsp:mx6sl-generic-bsp:mx6sl-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx6sll:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx6-generic-bsp:mx6-mainline-bsp:mx6sll-generic-bsp:mx6sll-mainline-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx6ul:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx6-generic-bsp:mx6-mainline-bsp:mx6ul-generic-bsp:mx6ul-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx6ull:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx6-generic-bsp:mx6-mainline-bsp:mx6ul-generic-bsp:mx6ul-mainline-bsp:mx6ull-generic-bsp:mx6ull-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx6ulz:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx6-generic-bsp:mx6-mainline-bsp:mx6ul-generic-bsp:mx6ul-mainline-bsp:mx6ull-generic-bsp:mx6ull-mainline-bsp:mx6ulz-generic-bsp:mx6ulz-mainline-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx7d:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx7-generic-bsp:mx7-mainline-bsp:mx7d-generic-bsp:mx7d-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx7ulp:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx7-generic-bsp:mx7-mainline-bsp:mx7ulp-generic-bsp:mx7ulp-mainline-bsp"
+
+MACHINEOVERRIDES_EXTENDER:vf:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:vf-generic-bsp:vf-mainline-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx8qm:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8qm-generic-bsp:mx8qm-mainline-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx8mm:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8m-generic-bsp:mx8m-mainline-bsp:mx8mm-generic-bsp:mx8mm-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8mn:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8m-generic-bsp:mx8m-mainline-bsp:mx8mn-generic-bsp:mx8mn-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8mnul:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8m-generic-bsp:mx8m-mainline-bsp:mx8mnul-generic-bsp:mx8mnul-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8mp:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8m-generic-bsp:mx8m-mainline-bsp:mx8mp-generic-bsp:mx8mp-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8mq:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8m-generic-bsp:mx8m-mainline-bsp:mx8mq-generic-bsp:mx8mq-mainline-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx8qxp:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8x-generic-bsp:mx8x-mainline-bsp:mx8qxp-generic-bsp:mx8qxp-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8dx:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8x-generic-bsp:mx8x-mainline-bsp:mx8dx-generic-bsp:mx8dx-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8dxl:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8x-generic-bsp:mx8x-mainline-bsp:mx8dxl-generic-bsp:mx8dxl-mainline-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx8ulp:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8ulp-generic-bsp:mx8ulp-mainline-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx93:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx9-generic-bsp:mx9-mainline-bsp:mx93-generic-bsp:mx93-mainline-bsp"
+
+MACHINEOVERRIDES_EXTENDER_FILTER_OUT = " \
mx6 \
mx6q \
mx6dl \
@@ -169,71 +280,94 @@ MACHINEOVERRIDES_EXTENDER_FILTER_OUT_use-mainline-bsp = " \
mx7d \
mx7ulp \
\
+ vf \
+ \
mx8 \
mx8m \
mx8qm \
mx8mm \
mx8mn \
+ mx8mnul \
mx8mp \
mx8mq \
mx8qxp \
+ mx8dx \
mx8dxl \
+ mx8ulp \
+ mx93 \
"
+MACHINEOVERRIDES_FILTERED_OUT_QA_ERROR = "%s overrides cannot be used and need conversion to use the new BSP-specific overrides. Check 'meta-freescale/scripts/convert-bsp-specific-overrides'."
+
# Sub-architecture support
MACHINE_SOCARCH_SUFFIX ?= ""
-MACHINE_SOCARCH_SUFFIX_mx6q = "-mx6qdl"
-MACHINE_SOCARCH_SUFFIX_mx6dl = "-mx6qdl"
-MACHINE_SOCARCH_SUFFIX_mx6sx = "-mx6sx"
-MACHINE_SOCARCH_SUFFIX_mx6sl = "-mx6sl"
-MACHINE_SOCARCH_SUFFIX_mx6sll= "-mx6sll"
-MACHINE_SOCARCH_SUFFIX_mx7d = "-mx7d"
-MACHINE_SOCARCH_SUFFIX_mx7ulp = "-mx7ulp"
-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_SOCARCH_SUFFIX:mx6q-nxp-bsp = "-mx6qdl"
+MACHINE_SOCARCH_SUFFIX:mx6dl-nxp-bsp = "-mx6qdl"
+MACHINE_SOCARCH_SUFFIX:mx6sx-nxp-bsp = "-mx6sx"
+MACHINE_SOCARCH_SUFFIX:mx6sl-nxp-bsp = "-mx6sl"
+MACHINE_SOCARCH_SUFFIX:mx6sll-nxp-bsp= "-mx6sll"
+MACHINE_SOCARCH_SUFFIX:mx7d-nxp-bsp = "-mx7d"
+MACHINE_SOCARCH_SUFFIX:mx7ulp-nxp-bsp = "-mx7ulp"
+MACHINE_SOCARCH_SUFFIX:vf-nxp-bsp = "-vf"
+MACHINE_SOCARCH_SUFFIX:mx6ul-nxp-bsp = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX:mx6ull-nxp-bsp = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX:mx6ulz-nxp-bsp = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX:mx8qm-nxp-bsp = "-mx8"
+MACHINE_SOCARCH_SUFFIX:mx8mm-nxp-bsp = "-mx8mm"
+MACHINE_SOCARCH_SUFFIX:mx8mn-nxp-bsp = "-mx8mn"
+MACHINE_SOCARCH_SUFFIX:mx8mnul-nxp-bsp = "-mx8mnl"
+MACHINE_SOCARCH_SUFFIX:mx8mp-nxp-bsp = "-mx8mp"
+MACHINE_SOCARCH_SUFFIX:mx8mq-nxp-bsp = "-mx8m"
+MACHINE_SOCARCH_SUFFIX:mx8qxp-nxp-bsp = "-mx8"
+MACHINE_SOCARCH_SUFFIX:mx8dx-nxp-bsp = "-mx8"
+MACHINE_SOCARCH_SUFFIX:mx8dxl-nxp-bsp = "-mx8xl"
+MACHINE_SOCARCH_SUFFIX:mx8ulp-nxp-bsp = "-mx8ulp"
+MACHINE_SOCARCH_SUFFIX:mx93-nxp-bsp = "-mx93"
+
+# For Mainline we use a single SoC suffix as we don't have different build options
+MACHINE_SOCARCH_SUFFIX:imx-mainline-bsp = "-imx"
MACHINE_ARCH_FILTER = "virtual/kernel"
-MACHINE_SOCARCH_FILTER_append_imx = " \
+MACHINE_SOCARCH_FILTER:append:imx-nxp-bsp = " \
alsa-lib \
gstreamer1.0 \
weston \
"
-MACHINE_SOCARCH_FILTER_append_imxvpu = " \
+MACHINE_SOCARCH_FILTER:append:imxvpu = " \
imx-codec \
imx-vpuwrap \
libimxvpuapi \
virtual/imxvpu \
"
-MACHINE_SOCARCH_FILTER_append_imxgpu = " \
+MACHINE_SOCARCH_FILTER:append:imxvulkan = " \
+ vulkan-headers \
+ vulkan-loader \
+ vulkan-tools \
+ vulkan-validation-layers \
+"
+MACHINE_SOCARCH_FILTER:append:imxgpu = " \
virtual/egl \
- virtual/mesa \
virtual/libopenvg \
+ virtual/mesa \
+ virtual/opencl-icd \
libdrm \
cairo \
libgal-imx \
+ opencl-icd-loader \
+ opencl-clhpp \
+ opencl-headers \
opencv \
pango \
"
-MACHINE_SOCARCH_FILTER_append_imxgpu2d = " \
+MACHINE_SOCARCH_FILTER:append:imxgpu2d = " \
virtual/libg2d \
"
-MACHINE_SOCARCH_FILTER_append_imxgpu3d = " \
+MACHINE_SOCARCH_FILTER:append:imxgpu3d = " \
virtual/libgl \
virtual/libgles1 \
virtual/libgles2 \
"
-MACHINE_SOCARCH_FILTER_append_use-mainline-bsp = " \
+MACHINE_SOCARCH_FILTER:append:imx-mainline-bsp = " \
virtual/egl \
virtual/libopenvg \
virtual/libg2d \
@@ -245,23 +379,13 @@ MACHINE_SOCARCH_FILTER_append_use-mainline-bsp = " \
pango \
qtbase \
"
-MACHINE_SOCARCH_FILTER_append_mx6q = " \
- opencl-icd-loader \
- opencl-clhpp \
- opencl-headers \
-"
-MACHINE_SOCARCH_FILTER_append_mx8 = " \
- opencl-icd-loader \
- opencl-clhpp \
- opencl-headers \
-"
-MACHINE_SOCARCH_FILTER_append_mx8qm = " \
+MACHINE_SOCARCH_FILTER:append:mx8qm-nxp-bsp = " \
virtual/libopenvx \
"
INHERIT += "fsl-dynamic-packagearch"
-SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS_append = " \
+SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS:append = " \
imx-gpu-viv->kernel-module-imx-gpu-viv \
libimxvpuapi->virtual/imxvpu \
imx-vpuwrap->virtual/imxvpu \
@@ -269,80 +393,151 @@ SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS_append = " \
imx-test->virtual/imxvpu \
"
+# Firmware used for boot.
+IMX_EXTRA_FIRMWARE ?= ""
+IMX_EXTRA_FIRMWARE:mx8-generic-bsp = "imx-boot-firmware-files imx-sc-firmware imx-seco"
+IMX_EXTRA_FIRMWARE:mx8m-generic-bsp = "imx-boot-firmware-files"
+IMX_EXTRA_FIRMWARE:mx8x-generic-bsp = "imx-sc-firmware imx-seco"
+IMX_EXTRA_FIRMWARE:mx8ulp-generic-bsp = "firmware-upower firmware-ele-imx"
+IMX_EXTRA_FIRMWARE:mx93-generic-bsp = "imx-boot-firmware-files firmware-ele-imx"
+
# Firmware
MACHINE_FIRMWARE ?= ""
-MACHINE_FIRMWARE_append_mx25 = " firmware-imx-sdma-imx25"
-MACHINE_FIRMWARE_append_mx27 = " firmware-imx-vpu-imx27"
-MACHINE_FIRMWARE_append_mx7d = " linux-firmware-imx-sdma-imx7d firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-imx-sdma-imx6q"
-MACHINE_FIRMWARE_append_mx6q = " firmware-imx-vpu-imx6q"
-MACHINE_FIRMWARE_append_mx6dl = " firmware-imx-vpu-imx6d firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6sl = " firmware-imx-epdc"
-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"
+MACHINE_FIRMWARE:append:mx51-generic-bsp = " firmware-imx-vpu-imx51 firmware-imx-sdma-imx51"
+MACHINE_FIRMWARE:append:mx53-generic-bsp = " firmware-imx-vpu-imx53 firmware-imx-sdma-imx53"
+MACHINE_FIRMWARE:append:mx6-generic-bsp = " linux-firmware-imx-sdma-imx6q"
+MACHINE_FIRMWARE:append:mx6q-generic-bsp = " firmware-imx-vpu-imx6q"
+MACHINE_FIRMWARE:append:mx6dl-generic-bsp = " firmware-imx-vpu-imx6d firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6sl-generic-bsp = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6sll-generic-bsp = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6ull-generic-bsp = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx7d-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx8qm-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx8"
+MACHINE_FIRMWARE:append:mx8mm-generic-bsp = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8mn-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-easrc-imx8mn"
+MACHINE_FIRMWARE:append:mx8mnul-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-easrc-imx8mn"
+MACHINE_FIRMWARE:append:mx8mp-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-easrc-imx8mn firmware-imx-xcvr-imx8mp firmware-sof-imx"
+MACHINE_FIRMWARE:append:mx8mq-generic-bsp = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8qxp-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx8"
+MACHINE_FIRMWARE:append:mx8dx-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx8"
+MACHINE_FIRMWARE:append:imx-mainline-bsp = " linux-firmware-imx-sdma-imx6q linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx6q firmware-imx-vpu-imx6d"
MACHINE_EXTRA_RRECOMMENDS += "${MACHINE_FIRMWARE}"
# Extra audio support
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)}"
+IMX_ALSA_EXTRA:imx-nxp-bsp = "imx-alsa-plugins"
+MACHINE_EXTRA_RRECOMMENDS:append:mx6-nxp-bsp = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append:mx7-nxp-bsp = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append:mx8-nxp-bsp = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append:mx9-nxp-bsp = " ${@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)}"
+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', 'firmware-nxp-wifi-bcm4359-pcie', '', d)}"
+
+# Extra NXP Wi-Fi and Bluetooth driver firmware and driver
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8801-sdio', 'firmware-nxp-wifi-nxp8801-sdio', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8801-sdio', 'kernel-module-nxp-wlan', '', d)}"
+
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8987-sdio', 'firmware-nxp-wifi-nxp8987-sdio', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8987-sdio', 'kernel-module-nxp-wlan', '', d)}"
+PREFERRED_RPROVIDER_linux-firmware-nxp8987-sdio = "firmware-nxp-wifi"
+
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8997-pcie', 'firmware-nxp-wifi-nxp8997-pcie', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8997-pcie', 'kernel-module-nxp-wlan', '', d)}"
+PREFERRED_RPROVIDER_linux-firmware-nxp8997-common = "firmware-nxp-wifi"
+PREFERRED_RPROVIDER_linux-firmware-nxp8997-pcie = "firmware-nxp-wifi"
+
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8997-sdio', 'firmware-nxp-wifi-nxp8997-sdio', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8997-sdio', 'kernel-module-nxp-wlan', '', d)}"
+PREFERRED_RPROVIDER_linux-firmware-nxp8997-sdio = "firmware-nxp-wifi"
+
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp9098-pcie', 'firmware-nxp-wifi-nxp9098-pcie', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp9098-pcie', 'kernel-module-nxp-wlan', '', d)}"
+PREFERRED_RPROVIDER_linux-firmware-nxp9098-common = "firmware-nxp-wifi"
+PREFERRED_RPROVIDER_linux-firmware-nxp9098-pcie = "firmware-nxp-wifi"
+
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp9098-sdio', 'firmware-nxp-wifi-nxp9098-sdio', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp9098-sdio', 'kernel-module-nxp-wlan', '', d)}"
+PREFERRED_RPROVIDER_linux-firmware-nxp9098-sdio = "firmware-nxp-wifi"
+
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxpiw416-sdio', 'firmware-nxp-wifi-nxpiw416-sdio', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxpiw416-sdio', 'kernel-module-nxp-wlan', '', d)}"
+PREFERRED_RPROVIDER_linux-firmware-nxpiw416-sdio = "firmware-nxp-wifi"
+
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxpiw612-sdio', 'firmware-nxp-wifi-nxpiw612-sdio', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxpiw612-sdio', 'kernel-module-nxp-wlan', '', d)}"
+PREFERRED_RPROVIDER_linux-firmware-nxpiw612-sdio = "firmware-nxp-wifi"
# 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)}"
+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
+PREFERRED_PROVIDER_jailhouse:imx-nxp-bsp ?= "jailhouse-imx"
MACHINE_EXTRA_RRECOMMENDS += " \
- ${@bb.utils.contains('COMBINED_FEATURES', 'jailhouse', 'jailhouse', '', d)} \
+ ${@bb.utils.filter('COMBINED_FEATURES', 'jailhouse', d)} \
"
# 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_mx6ull ?= "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"
+MACHINE_GSTREAMER_1_0_PLUGIN ?= ""
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6dl-nxp-bsp ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6q-nxp-bsp ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6sl-nxp-bsp ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6sx-nxp-bsp ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6ul-nxp-bsp ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6ull-nxp-bsp ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx7d-nxp-bsp ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mm-nxp-bsp ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mn-nxp-bsp ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mp-nxp-bsp ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mq-nxp-bsp ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8qm-nxp-bsp ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8qxp-nxp-bsp ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8dx-nxp-bsp ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8ulp-nxp-bsp ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx93-nxp-bsp ?= "imx-gst1.0-plugin"
+
+# GStreamer forked recipes
+PREFERRED_VERSION_gstreamer1.0:mx8-nxp-bsp ??= "1.22.5.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx8-nxp-bsp ??= "1.22.5.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-base:mx8-nxp-bsp ??= "1.22.5.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-good:mx8-nxp-bsp ??= "1.22.5.imx"
+PREFERRED_VERSION_gstreamer1.0:mx9-nxp-bsp ??= "1.22.5.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx9-nxp-bsp ??= "1.22.5.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-base:mx9-nxp-bsp ??= "1.22.5.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-good:mx9-nxp-bsp ??= "1.22.5.imx"
+
+# GStreamer copied recipes
+PREFERRED_VERSION_gst-devtools:mx8-nxp-bsp ??= "1.22.0.imx"
+PREFERRED_VERSION_gstreamer1.0-libav:mx8-nxp-bsp ??= "1.22.0.imx"
+PREFERRED_VERSION_gstreamer1.0-omx:mx8-nxp-bsp ??= "1.22.0.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-ugly:mx8-nxp-bsp ??= "1.22.0.imx"
+PREFERRED_VERSION_gstreamer1.0-python:mx8-nxp-bsp ??= "1.22.0.imx"
+PREFERRED_VERSION_gstreamer1.0-rtsp-server:mx8-nxp-bsp ??= "1.22.0.imx"
+PREFERRED_VERSION_gstreamer1.0-vaapi:mx8-nxp-bsp ??= "1.22.0.imx"
+PREFERRED_VERSION_gst-devtools:mx9-nxp-bsp ??= "1.22.0.imx"
+PREFERRED_VERSION_gstreamer1.0-libav:mx9-nxp-bsp ??= "1.22.0.imx"
+PREFERRED_VERSION_gstreamer1.0-omx:mx9-nxp-bsp ??= "1.22.0.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-ugly:mx9-nxp-bsp ??= "1.22.0.imx"
+PREFERRED_VERSION_gstreamer1.0-python:mx9-nxp-bsp ??= "1.22.0.imx"
+PREFERRED_VERSION_gstreamer1.0-rtsp-server:mx9-nxp-bsp ??= "1.22.0.imx"
+PREFERRED_VERSION_gstreamer1.0-vaapi:mx9-nxp-bsp ??= "1.22.0.imx"
+
+# GStreamer downgrade ffmpeg
+PREFERRED_VERSION_ffmpeg:mx8-nxp-bsp ??= "4.4.1"
+PREFERRED_VERSION_ffmpeg:mx9-nxp-bsp ??= "4.4.1"
# Determines if the SoC has support for Vivante kernel driver
SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT = "0"
-SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT_imxgpu = "1"
+SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT:imxgpu = "1"
# Handle Vivante kernel driver setting:
# 0 - machine does not have Vivante GPU driver support
@@ -355,59 +550,73 @@ PREFERRED_PROVIDER_virtual/libgl ?= "mesa"
PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa"
PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa"
-PREFERRED_PROVIDER_virtual/egl_imxgpu ?= "imx-gpu-viv"
-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/egl:imxgpu ?= "imx-gpu-viv"
+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/libgles3: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 ?= "9.0.0.imx"
-PREFERRED_VERSION_weston_use-mainline-bsp = ""
-
-PREFERRED_VERSION_wayland-protocols_mx6 ?= "1.20.imx"
-PREFERRED_VERSION_wayland-protocols_mx7 ?= "1.20.imx"
-PREFERRED_VERSION_wayland-protocols_mx8 ?= "1.20.imx"
+PREFERRED_PROVIDER_virtual/libg2d:imxdpu ?= "imx-dpu-g2d"
+PREFERRED_PROVIDER_virtual/libg2d:mx93-nxp-bsp ?= "imx-pxp-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_PROVIDER_virtual/opencl-icd:imxgpu ?= "imx-gpu-viv"
+
+PREFERRED_VERSION_weston:imx-nxp-bsp ??= "11.0.3.imx"
+# i.MX 6 & 7 stay on weston 10.0 for fbdev
+PREFERRED_VERSION_weston:mx6-nxp-bsp ??= "10.0.4.imx"
+PREFERRED_VERSION_weston:mx7-nxp-bsp ??= "10.0.4.imx"
+PREFERRED_VERSION_weston:imx-mainline-bsp = ""
+
+PREFERRED_VERSION_wayland-protocols:mx6-nxp-bsp ??= "1.32.imx"
+PREFERRED_VERSION_wayland-protocols:mx7-nxp-bsp ??= "1.32.imx"
+PREFERRED_VERSION_wayland-protocols:mx8-nxp-bsp ??= "1.32.imx"
+PREFERRED_VERSION_wayland-protocols:mx9-nxp-bsp ??= "1.32.imx"
+
+PREFERRED_VERSION_xwayland:imx-nxp-bsp ??= "23.1.1.imx"
# Use i.MX libdrm Version
-PREFERRED_VERSION_libdrm_mx6 ?= "2.4.102.imx"
-PREFERRED_VERSION_libdrm_mx7 ?= "2.4.102.imx"
-PREFERRED_VERSION_libdrm_mx8 ?= "2.4.102.imx"
+PREFERRED_VERSION_libdrm:mx6-nxp-bsp ??= "2.4.115.imx"
+PREFERRED_VERSION_libdrm:mx7-nxp-bsp ??= "2.4.115.imx"
+PREFERRED_VERSION_libdrm:mx8-nxp-bsp ??= "2.4.115.imx"
+PREFERRED_VERSION_libdrm:mx9-nxp-bsp ??= "2.4.115.imx"
+
+PREFERRED_VERSION_spirv-headers:imxvulkan ??= "1.3.239.0.imx"
+PREFERRED_VERSION_spirv-tools:imxvulkan ??= "1.3.239.0.imx"
+PREFERRED_VERSION_vulkan-headers:imxvulkan ??= "1.3.239.0.imx"
+PREFERRED_VERSION_vulkan-loader:imxvulkan ??= "1.3.239.0.imx"
+PREFERRED_VERSION_vulkan-tools:imxvulkan ??= "1.3.239.0.imx"
+PREFERRED_VERSION_vulkan-validation-layers:imxvulkan ??= "1.3.239.0.imx"
# Use i.MX optee Version
-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"
+PREFERRED_VERSION_optee-os:mx8-nxp-bsp ??= "4.0.0.imx"
+PREFERRED_VERSION_optee-os:mx9-nxp-bsp ??= "4.0.0.imx"
+PREFERRED_VERSION_optee-client:mx8-nxp-bsp ??= "4.0.0.imx"
+PREFERRED_VERSION_optee-client:mx9-nxp-bsp ??= "4.0.0.imx"
+PREFERRED_VERSION_optee-test:mx8-nxp-bsp ??= "4.0.0.imx"
+PREFERRED_VERSION_optee-test:mx9-nxp-bsp ??= "4.0.0.imx"
-#Use i.MX opencv Version for mx8
-PREFERRED_VERSION_opencv_mx8 ?= "4.5.2.imx"
+# Use i.MX opencv Version
+PREFERRED_VERSION_opencv:mx8-nxp-bsp ??= "4.6.0.imx"
+PREFERRED_VERSION_opencv:mx9-nxp-bsp ??= "4.6.0.imx"
# Handle default kernel
-IMX_DEFAULT_KERNEL = "linux-fslc-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_mx8 = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx7ulp = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6sll = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6ul = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6ull = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_use-mainline-bsp = "linux-fslc"
+IMX_DEFAULT_KERNEL:imx-mainline-bsp = "linux-fslc"
+IMX_DEFAULT_KERNEL:imx-nxp-bsp = "linux-fslc-imx"
PREFERRED_PROVIDER_virtual/kernel ??= "${IMX_DEFAULT_KERNEL}"
SOC_DEFAULT_IMAGE_FSTYPES = "wic.bmap wic.gz"
-SOC_DEFAULT_IMAGE_FSTYPES_mxs = "uboot-mxsboot-sdcard wic.bmap wic.gz"
+SOC_DEFAULT_IMAGE_FSTYPES:mxs-generic-bsp = "uboot-mxsboot-sdcard wic.bmap wic.gz"
# Do not update fstab file when using wic images
WIC_CREATE_EXTRA_ARGS ?= "--no-fstab-update"
-OPTEE_BOOT_IMAGE = "uTee"
-OPTEE_BOOT_IMAGE_aarch64 = ""
+OPTEE_BIN_EXT ??= ""
+OPTEE_BOOT_IMAGE = "tee.bin uTee-${OPTEE_BIN_EXT}"
+OPTEE_BOOT_IMAGE:mx8-generic-bsp = "tee.bin"
+OPTEE_BOOT_IMAGE:mx9-generic-bsp = "tee.bin"
IMAGE_FSTYPES ?= "${SOC_DEFAULT_IMAGE_FSTYPES}"
@@ -419,65 +628,54 @@ IMAGE_BOOT_FILES ?= " \
### wic default support
OPTEE_WKS_FILE_DEPENDS = "optee-os"
-OPTEE_WKS_FILE_DEPENDS_aarch64 = ""
+OPTEE_WKS_FILE_DEPENDS:aarch64 = ""
WKS_FILE_DEPENDS ?= " \
virtual/bootloader \
\
e2fsprogs-native \
- bmap-tools-native \
+ bmaptool-native \
${@bb.utils.contains('MACHINE_FEATURES', 'optee', '${OPTEE_WKS_FILE_DEPENDS}', '', d)} \
"
-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'
+# NXP.
+#
+# Moving those derivatives to mainline BSP would require to set
+# UBOOT_PROVIDES_BOOT_CONTAINER to "1" and test if the U-Boot built 'flash.bin'
+# binary is a working replacement.
+#
+# NOTE: 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 = " \
+WKS_FILE_DEPENDS:append:imx-generic-bsp:mx8-generic-bsp = " \
+ ${@oe.utils.ifelse(d.getVar('UBOOT_PROVIDES_BOOT_CONTAINER') == '0', 'imx-boot', '')} \
+"
+WKS_FILE_DEPENDS:append:imx-generic-bsp:mx9-generic-bsp = " \
${@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"
-
-# Boot container built as a part of mainline U-Boot uses different WKS
-# file as the entire mx8m series, as U-Boot versions later than 2021.04 are
-# providing two separate binaries, namely flash.bin and u-boot.itb. Those
-# files are packed into the boot partition.
-# Binaries produced by U-Boot build itself are serving as a direct
-# replacement of imx-boot from NXP.
-# Creation of those binary files is controlled by UBOOT_PROVIDES_BOOT_CONTAINER
-# variable defined above.
-SOC_DEFAULT_WKS_FILE_imx-boot-container ?= "imx-boot-container-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mx8-generic-bsp ?= "imx-imx-boot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mxs-generic-bsp ?= "imx-uboot-mxs-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mx9-generic-bsp ?= "imx-imx-boot-bootpart.wks.in"
WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"
SERIAL_CONSOLES = "115200;ttymxc0"
-SERIAL_CONSOLES_mxs = "115200;ttyAMA0"
+SERIAL_CONSOLES:mxs-generic-bsp = "115200;ttyAMA0"
KERNEL_IMAGETYPE = "zImage"
-KERNEL_IMAGETYPE_aarch64 = "Image"
+KERNEL_IMAGETYPE:mx8-generic-bsp = "Image"
+KERNEL_IMAGETYPE:mx9-generic-bsp = "Image"
-MACHINE_FEATURES = "usbgadget usbhost vfat alsa touchscreen"
+MACHINE_FEATURES = "usbgadget usbhost vfat alsa touchscreen screen"
-SOC_MACHINE_FEATURES_BACKFILL_mx8m = "jailhouse"
-MACHINE_FEATURES_BACKFILL_append = " ${SOC_MACHINE_FEATURES_BACKFILL}"
+HOSTTOOLS_NONFATAL:append:mx8-nxp-bsp = " sha384sum"
-# Add the ability to specify _imx machines
-MACHINEOVERRIDES =. "imx:"
+# Add task to generate the mfgtool bundle for the image.
+IMAGE_CLASSES:append:imx-generic-bsp = " image_populate_mfgtool"
-HOSTTOOLS_NONFATAL_append_mx8 = " sha384sum"
+# Allow meta-imx to add NIP devices information until upstreamed.
+include conf/machine/include/imx-base-extend.inc
diff --git a/conf/machine/include/imx8dxl-ddr3l-evk.inc b/conf/machine/include/imx8dxl-ddr3l-evk.inc
new file mode 100644
index 00000000..9c21aa35
--- /dev/null
+++ b/conf/machine/include/imx8dxl-ddr3l-evk.inc
@@ -0,0 +1,9 @@
+require conf/machine/include/imx8dxl-evk.inc
+
+KERNEL_DEVICETREE_BASENAME = "imx8dxl-ddr3l-evk"
+
+UBOOT_CONFIG_BASENAME = "imx8dxl_ddr3l_evk"
+
+UBOOT_CONFIG[nand] = "${UBOOT_CONFIG_BASENAME}_nand_defconfig"
+
+BOARD_TYPE = "ddr3-evk"
diff --git a/conf/machine/include/imx8dxl-evk.inc b/conf/machine/include/imx8dxl-evk.inc
index 2868b4d6..0f9aa1f0 100644
--- a/conf/machine/include/imx8dxl-evk.inc
+++ b/conf/machine/include/imx8dxl-evk.inc
@@ -1,15 +1,15 @@
-MACHINEOVERRIDES =. "mx8:mx8x:mx8dxl:"
+MACHINEOVERRIDES =. "mx8dxl:"
require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa35.inc
+require conf/machine/include/arm/armv8a/tune-cortexa35.inc
IMX_DEFAULT_BSP = "nxp"
-MACHINE_FEATURES += "pci bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES += "pci bcm43455 bcm4356 nxp8997-pcie nxp9098-pcie"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"
# Don't include kernels in standard images
-RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
+RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = ""
LOADADDR = ""
@@ -23,7 +23,7 @@ USE_VT = "0"
KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \
"
@@ -40,6 +40,7 @@ UBOOT_SUFFIX = "bin"
UBOOT_CONFIG ??= "sd"
UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_defconfig,sdcard"
+UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_fspi_defconfig"
IMX_BOOT_SEEK = "32"
@@ -57,6 +58,3 @@ IMXBOOT_TARGETS = \
bb.utils.contains('UBOOT_CONFIG', 'fspi', '${IMXBOOT_TARGETS_FSPI}', \
bb.utils.contains('UBOOT_CONFIG', 'nand', '${IMXBOOT_TARGETS_NAND}', \
'INVALID', d), d), d)}"
-
-
-BOARD_TYPE = "evk"
diff --git a/conf/machine/imx8dxl-lpddr4-evk.conf b/conf/machine/include/imx8dxl-lpddr4-evk.inc
index 1ea5260b..b3b906ec 100644
--- a/conf/machine/imx8dxl-lpddr4-evk.conf
+++ b/conf/machine/include/imx8dxl-lpddr4-evk.inc
@@ -1,18 +1,17 @@
-#@TYPE: Machine
-#@NAME: i.MX 8DXL EVK with LPDDR4
-#@DESCRIPTION: i.MX 8DXLite Evaluation Kit with LPDDR4
-#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
-
require conf/machine/include/imx8dxl-evk.inc
+
KERNEL_DEVICETREE_BASENAME = "imx8dxl-evk"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-enet0.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-enet0-tja1100.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-lcdif.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-lpspi-slave.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-pcie-ep.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-root.dtb \
"
+
UBOOT_CONFIG_BASENAME = "imx8dxl_evk"
-UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_fspi_defconfig"
+
+UBOOT_CONFIG[lcd] = "${UBOOT_CONFIG_BASENAME}_lcd_defconfig"
+
+BOARD_TYPE = "evk"
diff --git a/conf/machine/include/imx8mm-evk.inc b/conf/machine/include/imx8mm-evk.inc
index bcf838ab..442f4477 100644
--- a/conf/machine/include/imx8mm-evk.inc
+++ b/conf/machine/include/imx8mm-evk.inc
@@ -1,43 +1,43 @@
-MACHINEOVERRIDES =. "imx-boot-container:mx8:mx8m:mx8mm:"
+MACHINEOVERRIDES =. "mx8mm:"
require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa53.inc
+require conf/machine/include/arm/armv8a/tune-cortexa53.inc
-MACHINE_FEATURES += "pci wifi bluetooth bcm43455 bcm4356"
+# Mainline BSP defaults to "generic" cortexa53 configuration,
+# adjust it here to include crypto extension which enables
+# inline NEON and FPU code generation
+DEFAULTTUNE:use-mainline-bsp = "cortexa53-crypto"
-# NXP BSP can consume BCM4359 and QCA9377 driver and firmware
+MACHINE_FEATURES += "pci wifi bluetooth bcm43455 bcm4356 nxp8987-sdio"
+
+# NXP BSP can consume proprietary jailhouse and BCM4359 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"
+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}-pcie-ep.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-pcie-ep.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191-cmd-ram.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67199.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67199-cmd-ram.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)}"
@@ -51,21 +51,20 @@ SERIAL_CONSOLES = "115200;ttymxc1"
# to be used to define the boot process.
# We opt-in for Syslinux, since it is designated as a preferred
# distro boot mode according to the U-Boot documentation.
-UBOOT_EXTLINUX_use-mainline-bsp = "1"
-UBOOT_EXTLINUX_LABELS_use-mainline-bsp = "default"
-UBOOT_EXTLINUX_DEFAULT_LABEL_use-mainline-bsp = "i.MX8M Mini EVK"
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Mini EVK"
-UBOOT_EXTLINUX_MENU_DESCRIPTION_default_use-mainline-bsp = "i.MX8M Mini EVK"
-UBOOT_EXTLINUX_FDT_default_use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
-UBOOT_EXTLINUX_CONSOLE_default_use-mainline-bsp = "console=${console}"
-UBOOT_EXTLINUX_ROOT_default_use-mainline-bsp = "root=/dev/mmcblk1p2"
+UBOOT_EXTLINUX_MENU_DESCRIPTION:default:use-mainline-bsp = "i.MX8M Mini EVK"
+UBOOT_EXTLINUX_FDT:default:use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
+UBOOT_EXTLINUX_CONSOLE:default:use-mainline-bsp = "console=${console}"
+UBOOT_EXTLINUX_ROOT:default:use-mainline-bsp = "root=/dev/mmcblk1p2"
# Add extlinux.conf to the lis of files, which are deployed onto the
# boot partition
-IMAGE_BOOT_FILES_append_use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
+IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
LOADADDR = ""
-UBOOT_SUFFIX = "bin"
UBOOT_MAKE_TARGET = "all"
IMX_BOOT_SEEK = "33"
@@ -73,4 +72,4 @@ OPTEE_BIN_EXT = "8mm"
TEE_LOAD_ADDR = "0xbe000000"
# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8mn-evk.inc b/conf/machine/include/imx8mn-evk.inc
index a0e39857..11657bcc 100644
--- a/conf/machine/include/imx8mn-evk.inc
+++ b/conf/machine/include/imx8mn-evk.inc
@@ -1,44 +1,47 @@
-MACHINEOVERRIDES =. "imx-boot-container:mx8:mx8m:mx8mn:"
+MACHINEOVERRIDES =. "mx8mn:"
require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa53.inc
+require conf/machine/include/arm/armv8a/tune-cortexa53.inc
-MACHINE_FEATURES += "wifi bluetooth bcm43455 bcm4356"
+# Mainline BSP defaults to "generic" cortexa53 configuration,
+# adjust it here to include crypto extension which enables
+# inline NEON and FPU code generation
+DEFAULTTUNE:use-mainline-bsp = "cortexa53-crypto"
+
+MACHINE_FEATURES += "wifi bluetooth bcm43455 bcm4356 nxp8987-sdio"
# 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"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse bcm4359"
KERNEL_DEVICETREE = " \
- freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
+ 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 \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-ak5558.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lk.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191-cmd-ram.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67199.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67199-cmd-ram.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"
+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"
+UBOOT_CONFIG[ld] = "${UBOOT_CONFIG_BASENAME}_ld_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)}"
@@ -52,22 +55,21 @@ SERIAL_CONSOLES = "115200;ttymxc1"
# to be used to define the boot process.
# We opt-in for Syslinux, since it is designated as a preferred
# distro boot mode according to the U-Boot documentation.
-UBOOT_EXTLINUX_use-mainline-bsp = "1"
-UBOOT_EXTLINUX_LABELS_use-mainline-bsp = "default"
-UBOOT_EXTLINUX_DEFAULT_LABEL_use-mainline-bsp = "i.MX8M Nano EVK"
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Nano EVK"
-UBOOT_EXTLINUX_MENU_DESCRIPTION_default_use-mainline-bsp = "i.MX8M Nano EVK"
-UBOOT_EXTLINUX_FDT_default_use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
-UBOOT_EXTLINUX_CONSOLE_default_use-mainline-bsp = "console=${console}"
-UBOOT_EXTLINUX_ROOT_default_use-mainline-bsp = "root=/dev/mmcblk1p2"
+UBOOT_EXTLINUX_MENU_DESCRIPTION:default:use-mainline-bsp = "i.MX8M Nano EVK"
+UBOOT_EXTLINUX_FDT:default:use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
+UBOOT_EXTLINUX_CONSOLE:default:use-mainline-bsp = "console=${console}"
+UBOOT_EXTLINUX_ROOT:default:use-mainline-bsp = "root=/dev/mmcblk1p2"
# Add extlinux.conf to the lis of files, which are deployed onto the
# boot partition
-IMAGE_BOOT_FILES_append_use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
+IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
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
@@ -79,4 +81,4 @@ OPTEE_BIN_EXT = "8mn"
TEE_LOAD_ADDR = "0x56000000"
# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8mp-evk.inc b/conf/machine/include/imx8mp-evk.inc
index 814638d0..24e5588f 100644
--- a/conf/machine/include/imx8mp-evk.inc
+++ b/conf/machine/include/imx8mp-evk.inc
@@ -1,13 +1,19 @@
-MACHINEOVERRIDES =. "imx-boot-container:mx8:mx8m:mx8mp:"
+MACHINEOVERRIDES =. "mx8mp:"
require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa53.inc
+require conf/machine/include/arm/armv8a/tune-cortexa53.inc
-MACHINE_FEATURES += "pci wifi bluetooth jailhouse"
+# Mainline BSP defaults to "generic" cortexa53 configuration,
+# adjust it here to include crypto extension which enables
+# inline NEON and FPU code generation
+DEFAULTTUNE:use-mainline-bsp = "cortexa53-crypto"
+MACHINE_FEATURES += "pci wifi bluetooth nxp8997-pcie nxp8997-sdio nxp9098-pcie nxp9098-sdio"
+
+# NXP BSP can consume proprietary jailhouse and Marvell 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 mrvl8997"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse mrvl8997"
# Mainline kernel contains only one DTB file for
# imx8mpevk machine
@@ -17,23 +23,18 @@ KERNEL_DEVICETREE = " \
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"
+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', \
@@ -49,21 +50,20 @@ SERIAL_CONSOLES = "115200;ttymxc1"
# to be used to define the boot process.
# We opt-in for Syslinux, since it is designated as a preferred
# distro boot mode according to the U-Boot documentation.
-UBOOT_EXTLINUX_use-mainline-bsp = "1"
-UBOOT_EXTLINUX_LABELS_use-mainline-bsp = "default"
-UBOOT_EXTLINUX_DEFAULT_LABEL_use-mainline-bsp = "i.MX8M Plus EVK"
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Plus EVK"
-UBOOT_EXTLINUX_MENU_DESCRIPTION_default_use-mainline-bsp = "i.MX8M Plus EVK"
-UBOOT_EXTLINUX_FDT_default_use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
-UBOOT_EXTLINUX_CONSOLE_default_use-mainline-bsp = "console=${console}"
-UBOOT_EXTLINUX_ROOT_default_use-mainline-bsp = "root=/dev/mmcblk1p2"
+UBOOT_EXTLINUX_MENU_DESCRIPTION:default:use-mainline-bsp = "i.MX8M Plus EVK"
+UBOOT_EXTLINUX_FDT:default:use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
+UBOOT_EXTLINUX_CONSOLE:default:use-mainline-bsp = "console=${console}"
+UBOOT_EXTLINUX_ROOT:default:use-mainline-bsp = "root=/dev/mmcblk1p2"
# Add extlinux.conf to the lis of files, which are deployed onto the
# boot partition
-IMAGE_BOOT_FILES_append_use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
+IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
LOADADDR = ""
-UBOOT_SUFFIX = "bin"
UBOOT_MAKE_TARGET = "all"
IMX_BOOT_SEEK = "32"
@@ -71,4 +71,4 @@ OPTEE_BIN_EXT = "8mp"
TEE_LOAD_ADDR = "0x56000000"
# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8ulp-evk.inc b/conf/machine/include/imx8ulp-evk.inc
new file mode 100644
index 00000000..23269530
--- /dev/null
+++ b/conf/machine/include/imx8ulp-evk.inc
@@ -0,0 +1,44 @@
+MACHINEOVERRIDES =. "mx8:mx8ulp:"
+
+require conf/machine/include/imx-base.inc
+require conf/machine/include/arm/armv8a/tune-cortexa35.inc
+
+MACHINE_FEATURES += "pci wifi bluetooth optee jailhouse"
+
+KERNEL_DEVICETREE = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
+"
+
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"
+
+LOADADDR = ""
+UBOOT_SUFFIX = "bin"
+UBOOT_MAKE_TARGET = ""
+
+SPL_BINARY = "spl/u-boot-spl.bin"
+
+UBOOT_CONFIG ??= "sd"
+UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_defconfig,sdcard"
+UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_defconfig"
+UBOOT_CONFIG[nd] = "${UBOOT_CONFIG_BASENAME}_nd_defconfig"
+
+# Set ATF platform name
+ATF_PLATFORM = "imx8ulp"
+
+IMXBOOT_TARGETS_SD = "flash_singleboot flash_dualboot"
+IMXBOOT_TARGETS_FSPI = "flash_dualboot_flexspi"
+IMXBOOT_TARGETS_ND = ""
+
+IMXBOOT_TARGETS = "${@bb.utils.contains('UBOOT_CONFIG', 'sd', '${IMXBOOT_TARGETS_SD}', \
+ bb.utils.contains('UBOOT_CONFIG', 'fspi', '${IMXBOOT_TARGETS_FSPI}', \
+ '${IMXBOOT_TARGETS_ND}', d), d)}"
+
+IMX_BOOT_SOC_TARGET = "iMX8ULP"
+IMX_BOOT_SEEK = "32"
+
+# We have to disable SERIAL_CONSOLE due to auto-serial-console
+SERIAL_CONSOLES = "115200;ttyLP1"
+
+# Add additional firmware
+MACHINE_FIRMWARE:append = " firmware-imx-epdc"
diff --git a/conf/machine/include/imx8x-mek.inc b/conf/machine/include/imx8x-mek.inc
index 814a34c1..9eaa77c5 100644
--- a/conf/machine/include/imx8x-mek.inc
+++ b/conf/machine/include/imx8x-mek.inc
@@ -1,15 +1,13 @@
-MACHINEOVERRIDES =. "mx8:mx8x:"
-
require conf/machine/include/imx-base.inc
-require conf/machine/include/tune-cortexa35.inc
+require conf/machine/include/arm/armv8a/tune-cortexa35.inc
IMX_DEFAULT_BSP = "nxp"
-MACHINE_FEATURES += "pci optee bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES += "pci optee bcm43455 bcm4356 nxp8997-pcie nxp9098-pcie"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"
# Don't include kernels in standard images
-RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
+RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = ""
LOADADDR = ""
@@ -23,10 +21,9 @@ USE_VT = "0"
KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+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 \
@@ -59,9 +56,6 @@ IMX_BOOT_SEEK = "32"
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)}"
@@ -71,9 +65,7 @@ IMXBOOT_TARGETS_FSPI = \
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"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx93-evk.inc b/conf/machine/include/imx93-evk.inc
new file mode 100644
index 00000000..3a922282
--- /dev/null
+++ b/conf/machine/include/imx93-evk.inc
@@ -0,0 +1,39 @@
+MACHINEOVERRIDES =. "mx93:"
+
+require conf/machine/include/imx-base.inc
+require conf/machine/include/arm/armv8-2a/tune-cortexa55.inc
+
+MACHINE_FEATURES += "pci wifi bluetooth"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse nxpiw612-sdio"
+
+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"
+
+LOADADDR = ""
+UBOOT_SUFFIX = "bin"
+UBOOT_MAKE_TARGET = ""
+
+SPL_BINARY = "spl/u-boot-spl.bin"
+
+UBOOT_CONFIG ??= "sd"
+UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_defconfig,sdcard"
+UBOOT_CONFIG[ecc] = "${UBOOT_CONFIG_BASENAME}_inline_ecc_defconfig"
+UBOOT_CONFIG[ld] = "${UBOOT_CONFIG_BASENAME}_ld_defconfig"
+
+# Set ATF platform name
+ATF_PLATFORM = "imx93"
+
+IMXBOOT_TARGETS = "flash_singleboot"
+
+IMX_BOOT_SOC_TARGET = "iMX9"
+IMX_BOOT_SEEK = "32"
+
+# We have to disable SERIAL_CONSOLE due to auto-serial-console
+SERIAL_CONSOLES = "115200;ttyLP0"
+
+IMX_DEFAULT_BSP = "nxp"
diff --git a/conf/machine/include/qoriq-arm.inc b/conf/machine/include/qoriq-arm.inc
index eb03af43..89e9c4c0 100644
--- a/conf/machine/include/qoriq-arm.inc
+++ b/conf/machine/include/qoriq-arm.inc
@@ -1,5 +1,7 @@
# Provides the common settings for QorIQ ARM
+# default assignment to override defaults from kernel.bbclass
+# should be assigned by machine if other type needed
KERNEL_IMAGETYPE ?= "uImage"
SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyEHV0 115200;ttyLP0 115200;ttyAMA0"
diff --git a/conf/machine/include/qoriq-base.inc b/conf/machine/include/qoriq-base.inc
index 0a42160f..4340c942 100644
--- a/conf/machine/include/qoriq-base.inc
+++ b/conf/machine/include/qoriq-base.inc
@@ -1,7 +1,7 @@
# common providers of QorIQ targets
-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 ??= "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"
@@ -9,8 +9,8 @@ PREFERRED_PROVIDER_nativesdk-u-boot-mkimage ??= "nativesdk-u-boot-tools"
PREFERRED_VERSION_testfloat = "2a"
SOC_DEFAULT_IMAGE_FSTYPES = "tar.gz"
-SOC_DEFAULT_IMAGE_FSTYPES_append_ls1043a = " wic.bz2"
-SOC_DEFAULT_IMAGE_FSTYPES_append_ls1046a = " wic.bz2"
+SOC_DEFAULT_IMAGE_FSTYPES:append:ls1043a = " wic.bz2"
+SOC_DEFAULT_IMAGE_FSTYPES:append:ls1046a = " wic.bz2"
IMAGE_FSTYPES ?= "${SOC_DEFAULT_IMAGE_FSTYPES}"
# Composite Image Layout (in KBytes)
@@ -31,15 +31,15 @@ IMAGE_BOOT_FILES ?= " \
"
SOC_DEFAULT_WKS_FILE ?= ""
-SOC_DEFAULT_WKS_FILE_ls1043a ?= "ls104x-uboot-bootpart.wks.in"
-SOC_DEFAULT_WKS_FILE_ls1046a ?= "ls104x-uboot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:ls1043a ?= "ls104x-uboot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:ls1046a ?= "ls104x-uboot-bootpart.wks.in"
WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"
MACHINE_FEATURES ?= "pci ext2 ext3 serial"
MACHINE_EXTRA_RRECOMMENDS += "udev-extraconf udev-rules-qoriq kernel-modules"
-EXTRA_IMAGEDEPENDS += "u-boot cst-native"
+EXTRA_IMAGEDEPENDS += "u-boot qoriq-cst-native"
MACHINEOVERRIDES =. "qoriq:"
@@ -54,7 +54,7 @@ MACHINEOVERRIDES =. "use-${QORIQ_DEFAULT_BSP}-bsp:"
# Sub-architecture support
MACHINE_SOCARCH_SUFFIX ?= ""
-MACHINE_SOCARCH_SUFFIX_qoriq = "-qoriq"
+MACHINE_SOCARCH_SUFFIX:qoriq = "-qoriq"
MACHINE_ARCH_FILTER = "virtual/kernel"
diff --git a/conf/machine/include/utilities.inc b/conf/machine/include/utilities.inc
index f11b588b..34ce7abc 100644
--- a/conf/machine/include/utilities.inc
+++ b/conf/machine/include/utilities.inc
@@ -23,6 +23,6 @@ def make_dtb_boot_files(d):
def get_spl_binary(d):
imx_default_bootloader = d.get('IMX_DEFAULT_BOOTLOADER')
- spl_binary = d.getVar("SPL_BINARY_pn-%s" % imx_default_bootloader)
+ spl_binary = d.getVar("SPL_BINARY:pn-%s" % imx_default_bootloader)
return spl_binary or ""
diff --git a/conf/machine/ls1012afrwy.conf b/conf/machine/ls1012afrwy.conf
index 72605cc1..7de1e990 100644
--- a/conf/machine/ls1012afrwy.conf
+++ b/conf/machine/ls1012afrwy.conf
@@ -19,8 +19,8 @@ UBOOT_DTB_LOADADDRESS = "0x90000000"
UBOOT_ENTRYPOINT = "0x80080000"
UBOOT_CONFIG ??= "tfa-secure-boot tfa"
-UBOOT_CONFIG[tfa] = "ls1012afrwy_tfa_defconfig,,u-boot-dtb.bin"
-UBOOT_CONFIG[tfa-secure-boot] = "ls1012afrwy_tfa_SECURE_BOOT_defconfig,,u-boot-dtb.bin"
+UBOOT_CONFIG[tfa] = "ls1012afrwy_tfa_defconfig"
+UBOOT_CONFIG[tfa-secure-boot] = "ls1012afrwy_tfa_SECURE_BOOT_defconfig"
RCWQSPI ?= "N_SSNP_3305/rcw_1000"
diff --git a/conf/machine/ls1012ardb.conf b/conf/machine/ls1012ardb.conf
index b4bfc571..879e3f8f 100644
--- a/conf/machine/ls1012ardb.conf
+++ b/conf/machine/ls1012ardb.conf
@@ -19,8 +19,8 @@ UBOOT_DTB_LOADADDRESS = "0x90000000"
UBOOT_ENTRYPOINT = "0x80080000"
UBOOT_CONFIG ??= "tfa-secure-boot tfa"
-UBOOT_CONFIG[tfa] = "ls1012ardb_tfa_defconfig,,u-boot-dtb.bin"
-UBOOT_CONFIG[tfa-secure-boot] = "ls1012ardb_tfa_SECURE_BOOT_defconfig,,u-boot-dtb.bin"
+UBOOT_CONFIG[tfa] = "ls1012ardb_tfa_defconfig"
+UBOOT_CONFIG[tfa-secure-boot] = "ls1012ardb_tfa_SECURE_BOOT_defconfig"
RCWQSPI ?= "R_SPNH_3508/rcw_1000"
RCWQSPISEC ?= "R_SPNH_3508/rcw_1000"
diff --git a/conf/machine/ls1021atwr.conf b/conf/machine/ls1021atwr.conf
deleted file mode 100644
index aa0f0943..00000000
--- a/conf/machine/ls1021atwr.conf
+++ /dev/null
@@ -1,35 +0,0 @@
-#@TYPE: Machine
-#@NAME: NXP LS1021ATWR board
-#@SOC: ls102xa
-#@DESCRIPTION: Machine configuration for NXP QorIQ LS1 Tower System
-# Module Rev2.0 with ARM Cortex-A7 core
-#@MAINTAINER: Zhenhua Luo <zhenhua.luo@freescale.com>
-
-MACHINEOVERRIDES =. "ls102xa:"
-
-require conf/machine/include/qoriq-arm.inc
-require conf/machine/include/tune-cortexa7.inc
-
-MACHINE_FEATURES += "optee"
-
-DEFAULTTUNE = "cortexa7hf-neon"
-
-UBOOT_CONFIG ??= "sdcard-ifc-secure-boot sdcard-ifc sdcard-qspi lpuart qspi secure-boot nor"
-UBOOT_CONFIG[nor] = "ls1021atwr_nor_defconfig,,u-boot-dtb.bin"
-UBOOT_CONFIG[sdcard-ifc] = "ls1021atwr_sdcard_ifc_defconfig,,u-boot-with-spl-pbl.bin"
-UBOOT_CONFIG[sdcard-qspi] = "ls1021atwr_sdcard_qspi_defconfig,,u-boot-with-spl-pbl.bin"
-UBOOT_CONFIG[lpuart] = "ls1021atwr_nor_lpuart_defconfig,,u-boot-dtb.bin"
-UBOOT_CONFIG[qspi] = "ls1021atwr_qspi_defconfig,,u-boot-dtb.bin"
-UBOOT_CONFIG[secure-boot] = "ls1021atwr_nor_SECURE_BOOT_defconfig,,u-boot-dtb.bin"
-UBOOT_CONFIG[sdcard-ifc-secure-boot] = "ls1021atwr_sdcard_ifc_SECURE_BOOT_defconfig,,u-boot-with-spl-pbl.bin"
-
-QE_UCODE="iram_Type_A_LS1021a_r1.0.bin"
-
-KERNEL_DEVICETREE ?= "ls1021a-twr.dtb"
-KERNEL_DEFCONFIG ?= "multi_v7_defconfig"
-
-KERNEL_IMAGETYPES = "zImage"
-
-UBOOT_ENTRYPOINT = "0x80008000"
-EXTRA_IMAGEDEPENDS += "rcw qe-ucode"
-USE_VT ?= "0"
diff --git a/conf/machine/ls1028ardb.conf b/conf/machine/ls1028ardb.conf
index 7647bf41..268a60c3 100644
--- a/conf/machine/ls1028ardb.conf
+++ b/conf/machine/ls1028ardb.conf
@@ -4,13 +4,13 @@
#@DESCRIPTION: Machine configuration for running LS1028ARDB in 64-bit mode
#@MAINTAINER: Chunrong.Guo <chunrong.guo@nxp.com>
+MACHINEOVERRIDES =. "fsl-lsch3:ls1028a:"
+
require conf/machine/include/qoriq-arm64.inc
require conf/machine/include/arm/arch-arm64.inc
MACHINE_FEATURES += "optee"
-MACHINEOVERRIDES =. "fsl-lsch3:ls1028a:"
-
KERNEL_CLASSES = " kernel-fitimage "
KERNEL_IMAGETYPES = "fitImage"
@@ -18,11 +18,11 @@ UBOOT_DTB_LOADADDRESS = "0x90000000"
UBOOT_ENTRYPOINT = "0x80080000"
UBOOT_CONFIG ??= "tfa-secure-boot tfa"
-UBOOT_CONFIG[tfa-secure-boot] = "ls1028ardb_tfa_SECURE_BOOT_defconfig,,u-boot-dtb.bin"
-UBOOT_CONFIG[tfa] = "ls1028ardb_tfa_defconfig,,u-boot-dtb.bin"
+UBOOT_CONFIG[tfa-secure-boot] = "ls1028ardb_tfa_SECURE_BOOT_defconfig"
+UBOOT_CONFIG[tfa] = "ls1028ardb_tfa_defconfig"
KERNEL_DEVICETREE ?= "freescale/fsl-ls1028a-rdb.dtb freescale/fsl-ls1028a-qds.dtb"
-KERNEL_DEVICETREE_append_use-nxp-bsp = "\
+KERNEL_DEVICETREE:append:use-nxp-bsp = "\
freescale/fsl-ls1028a-rdb-dpdk.dtb \
"
KERNEL_DEFCONFIG ?= "defconfig"
diff --git a/conf/machine/ls1043ardb.conf b/conf/machine/ls1043ardb.conf
index db66cad8..4ff3c0ac 100644
--- a/conf/machine/ls1043ardb.conf
+++ b/conf/machine/ls1043ardb.conf
@@ -19,15 +19,15 @@ UBOOT_DTB_LOADADDRESS = "0x90000000"
UBOOT_ENTRYPOINT = "0x80080000"
UBOOT_CONFIG ??= "tfa-secure-boot tfa"
-UBOOT_CONFIG[tfa] = "ls1043ardb_tfa_defconfig,,u-boot-dtb.bin"
-UBOOT_CONFIG[tfa-secure-boot] = "ls1043ardb_tfa_SECURE_BOOT_defconfig,,u-boot-dtb.bin"
+UBOOT_CONFIG[tfa] = "ls1043ardb_tfa_defconfig"
+UBOOT_CONFIG[tfa-secure-boot] = "ls1043ardb_tfa_SECURE_BOOT_defconfig"
KERNEL_DEVICETREE ?= "\
freescale/fsl-ls1043a-rdb.dtb \
freescale/fsl-ls1043a-qds.dtb \
"
# usdpaa dtb is used for dpdk. TODO: rename in kernel
-KERNEL_DEVICETREE_prepend_use-nxp-bsp = "\
+KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
freescale/fsl-ls1043a-rdb-sdk.dtb \
freescale/fsl-ls1043a-rdb-usdpaa.dtb \
freescale/fsl-ls1043a-qds-sdk.dtb \
diff --git a/conf/machine/ls1046afrwy.conf b/conf/machine/ls1046afrwy.conf
index c22b332d..eb3c0bb6 100644
--- a/conf/machine/ls1046afrwy.conf
+++ b/conf/machine/ls1046afrwy.conf
@@ -18,14 +18,14 @@ UBOOT_DTB_LOADADDRESS = "0x90000000"
UBOOT_ENTRYPOINT = "0x80080000"
UBOOT_CONFIG ??= "tfa-secure-boot tfa"
-UBOOT_CONFIG[tfa] = "ls1046afrwy_tfa_defconfig,,u-boot-dtb.bin"
-UBOOT_CONFIG[tfa-secure-boot] = "ls1046afrwy_tfa_SECURE_BOOT_defconfig,,u-boot-dtb.bin"
+UBOOT_CONFIG[tfa] = "ls1046afrwy_tfa_defconfig"
+UBOOT_CONFIG[tfa-secure-boot] = "ls1046afrwy_tfa_SECURE_BOOT_defconfig"
KERNEL_DEVICETREE ?= "\
freescale/fsl-ls1046a-frwy.dtb \
"
# usdpaa dtb is used for dpdk. TODO: rename in kernel
-KERNEL_DEVICETREE_prepend_use-nxp-bsp = "\
+KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
freescale/fsl-ls1046a-frwy-sdk.dtb \
freescale/fsl-ls1046a-frwy-usdpaa.dtb \
"
diff --git a/conf/machine/ls1046ardb.conf b/conf/machine/ls1046ardb.conf
index c74f2578..2b82c98f 100644
--- a/conf/machine/ls1046ardb.conf
+++ b/conf/machine/ls1046ardb.conf
@@ -18,17 +18,18 @@ UBOOT_DTB_LOADADDRESS = "0x90000000"
UBOOT_ENTRYPOINT = "0x80080000"
UBOOT_CONFIG ??= "tfa-secure-boot tfa"
-UBOOT_CONFIG[tfa] = "ls1046ardb_tfa_defconfig,,u-boot-dtb.bin"
-UBOOT_CONFIG[tfa-secure-boot] = "ls1046ardb_tfa_SECURE_BOOT_defconfig,,u-boot-dtb.bin"
+UBOOT_CONFIG[tfa] = "ls1046ardb_tfa_defconfig"
+UBOOT_CONFIG[tfa-secure-boot] = "ls1046ardb_tfa_SECURE_BOOT_defconfig"
KERNEL_DEVICETREE ?= "\
freescale/fsl-ls1046a-rdb.dtb \
freescale/fsl-ls1046a-qds.dtb \
"
# usdpaa dtb is used for dpdk. TODO: rename in kernel
-KERNEL_DEVICETREE_prepend_use-nxp-bsp = "\
+KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
freescale/fsl-ls1046a-rdb-sdk.dtb \
freescale/fsl-ls1046a-rdb-usdpaa.dtb \
+ freescale/fsl-ls1046a-rdb-usdpaa-shared.dtb \
freescale/fsl-ls1046a-qds-sdk.dtb \
"
KERNEL_DEFCONFIG ?= "defconfig"
diff --git a/conf/machine/ls1088ardb-pb.conf b/conf/machine/ls1088ardb-pb.conf
index 1ae5693b..f9d05b69 100644
--- a/conf/machine/ls1088ardb-pb.conf
+++ b/conf/machine/ls1088ardb-pb.conf
@@ -4,11 +4,11 @@
#@DESCRIPTION: Machine configuration for running LS1088ARDB in 64-bit mode
#@MAINTAINER: Chunrong Guo <Chunrong.Guo@nxp.com>
+MACHINEOVERRIDES =. "fsl-lsch3:ls1088a:"
+
require conf/machine/include/qoriq-arm64.inc
require conf/machine/include/arm/arch-arm64.inc
-MACHINEOVERRIDES =. "fsl-lsch3:ls1088a:"
-
MACHINE_FEATURES += "optee"
KERNEL_CLASSES = " kernel-fitimage "
@@ -18,8 +18,8 @@ UBOOT_DTB_LOADADDRESS = "0x90000000"
UBOOT_ENTRYPOINT = "0x80080000"
UBOOT_CONFIG ??= "tfa-secure-boot tfa"
-UBOOT_CONFIG[tfa] = "ls1088ardb_tfa_defconfig,,u-boot-dtb.bin"
-UBOOT_CONFIG[tfa-secure-boot] = "ls1088ardb_tfa_SECURE_BOOT_defconfig,,u-boot-dtb.bin"
+UBOOT_CONFIG[tfa] = "ls1088ardb_tfa_defconfig"
+UBOOT_CONFIG[tfa-secure-boot] = "ls1088ardb_tfa_SECURE_BOOT_defconfig"
KERNEL_DEVICETREE ?= "freescale/fsl-ls1088a-rdb.dtb"
KERNEL_DEFCONFIG ?= "defconfig"
diff --git a/conf/machine/ls1088ardb.conf b/conf/machine/ls1088ardb.conf
index 9922248f..1b7a4f3c 100644
--- a/conf/machine/ls1088ardb.conf
+++ b/conf/machine/ls1088ardb.conf
@@ -4,11 +4,11 @@
#@DESCRIPTION: Machine configuration for running LS1088ARDB in 64-bit mode
#@MAINTAINER: Zongchun Yu <Zongchun.Yu@nxp.com>
+MACHINEOVERRIDES =. "fsl-lsch3:ls1088a:"
+
require conf/machine/include/qoriq-arm64.inc
require conf/machine/include/arm/arch-arm64.inc
-MACHINEOVERRIDES =. "fsl-lsch3:ls1088a:"
-
MACHINE_FEATURES += "optee"
KERNEL_CLASSES = " kernel-fitimage "
@@ -18,8 +18,8 @@ UBOOT_DTB_LOADADDRESS = "0x90000000"
UBOOT_ENTRYPOINT = "0x80080000"
UBOOT_CONFIG ??= "tfa-secure-boot tfa"
-UBOOT_CONFIG[tfa-secure-boot] = "ls1088ardb_tfa_SECURE_BOOT_defconfig,,u-boot-dtb.bin"
-UBOOT_CONFIG[tfa] = "ls1088ardb_tfa_defconfig,,u-boot-dtb.bin"
+UBOOT_CONFIG[tfa-secure-boot] = "ls1088ardb_tfa_SECURE_BOOT_defconfig"
+UBOOT_CONFIG[tfa] = "ls1088ardb_tfa_defconfig"
KERNEL_DEVICETREE ?= "freescale/fsl-ls1088a-rdb.dtb"
KERNEL_DEFCONFIG ?= "defconfig"
diff --git a/conf/machine/ls2080ardb.conf b/conf/machine/ls2080ardb.conf
deleted file mode 100644
index 859a41be..00000000
--- a/conf/machine/ls2080ardb.conf
+++ /dev/null
@@ -1,20 +0,0 @@
-#@TYPE: Machine
-#@NAME: NXP LS2080ARDB board
-#@SOC: LSCH3
-#@DESCRIPTION: Machine configuration for NXP QorIQ LS2080ARDB
-# with ARM Cortext-A57 core
-#@MAINTAINER: Zongchun Yu <Zongchun.Yu@nxp.com>
-
-MACHINEOVERRIDES =. "fsl-lsch3:ls2080a:"
-
-require conf/machine/include/qoriq-arm64.inc
-require conf/machine/include/arm/arch-arm64.inc
-
-UBOOT_CONFIG ??= "nor"
-UBOOT_CONFIG[nor] = "ls2080ardb_defconfig,,u-boot-dtb.bin"
-
-KERNEL_DEVICETREE ?= "freescale/fsl-ls2080a-rdb.dtb"
-KERNEL_DEFCONFIG ?= "defconfig"
-
-EXTRA_IMAGEDEPENDS += "ls2-phy rcw management-complex"
-USE_VT = "0"
diff --git a/conf/machine/ls2088ardb.conf b/conf/machine/ls2088ardb.conf
index 92c99326..8c8e586a 100644
--- a/conf/machine/ls2088ardb.conf
+++ b/conf/machine/ls2088ardb.conf
@@ -5,7 +5,7 @@
#@MAINTAINER: Zongchun Yu <Zongchun.Yu@nxp.com>
require conf/machine/include/qoriq-arm64.inc
-require conf/machine/include/arm/arch-arm64.inc
+require conf/machine/include/arm/arch-armv8a.inc
MACHINEOVERRIDES =. "fsl-lsch3:ls2088a:"
@@ -18,8 +18,8 @@ UBOOT_DTB_LOADADDRESS = "0x90000000"
UBOOT_ENTRYPOINT = "0x80080000"
UBOOT_CONFIG ??= "tfa-secure-boot tfa"
-UBOOT_CONFIG[tfa] = "ls2088ardb_tfa_defconfig,,u-boot-dtb.bin"
-UBOOT_CONFIG[tfa-secure-boot] = "ls2088ardb_tfa_SECURE_BOOT_defconfig,,u-boot-dtb.bin"
+UBOOT_CONFIG[tfa] = "ls2088ardb_tfa_defconfig"
+UBOOT_CONFIG[tfa-secure-boot] = "ls2088ardb_tfa_SECURE_BOOT_defconfig"
RCWNOR ?= "FFFFFFFF_PP_HH_0x2a_0x41/rcw_1800"
RCWQSPI?= "FFFFFFFF_PP_HH_0x2a_0x41/rcw_2000_qspi"
diff --git a/conf/machine/lx2160ardb.conf b/conf/machine/lx2160ardb.conf
index 5e68a9fd..1945ad31 100644
--- a/conf/machine/lx2160ardb.conf
+++ b/conf/machine/lx2160ardb.conf
@@ -18,8 +18,8 @@ DTB_LOAD = "0x90000000"
UBOOT_ENTRYPOINT = "0x80080000"
UBOOT_CONFIG ??= "tfa-secure-boot tfa"
-UBOOT_CONFIG[tfa] = "lx2160ardb_tfa_defconfig,,u-boot-dtb.bin"
-UBOOT_CONFIG[tfa-secure-boot] = "lx2160ardb_tfa_SECURE_BOOT_defconfig,,u-boot-dtb.bin"
+UBOOT_CONFIG[tfa] = "lx2160ardb_tfa_defconfig"
+UBOOT_CONFIG[tfa-secure-boot] = "lx2160ardb_tfa_SECURE_BOOT_defconfig"
KERNEL_DEVICETREE ?= "freescale/fsl-lx2160a-rdb.dtb freescale/fsl-lx2160a-qds.dtb"
KERNEL_DEFCONFIG ?= "defconfig"
@@ -28,9 +28,9 @@ SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyAMA0"
SERIAL_CONSOLES_CHECK ?= "${SERIAL_CONSOLES}"
UEFI_XSPIBOOT ?= "LX2160ARDB_EFI_NORBOOT.fd"
-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"
+RCWXSPI ?= "XGGFF_PP_HHHH_RR_19_5_2/rcw_2200_750_3200_19_5_2"
+RCWSD ?= "XGGFF_PP_HHHH_RR_19_5_2/rcw_2200_750_3200_19_5_2"
+RCWEMMC ?= "XGGFF_PP_HHHH_RR_19_5_2/rcw_2200_750_3200_19_5_2"
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
index c7ab95fb..80f91331 100644
--- a/conf/machine/lx2162aqds.conf
+++ b/conf/machine/lx2162aqds.conf
@@ -18,8 +18,8 @@ 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] = "lx2162aqds_tfa_defconfig"
+UBOOT_CONFIG[tfa-secure-boot] = "lx2162aqds_tfa_SECURE_BOOT_defconfig"
UBOOT_CONFIG[tfa-verified-boot] = "lx2162aqds_tfa_verified_boot_defconfig,,u-boot-nodtb.bin"
KERNEL_DEVICETREE ?= "freescale/fsl-lx2162a-qds.dtb"
diff --git a/conf/machine/mpc8548cds.conf b/conf/machine/mpc8548cds.conf
index c7c49ddc..bd4b6500 100644
--- a/conf/machine/mpc8548cds.conf
+++ b/conf/machine/mpc8548cds.conf
@@ -1,5 +1,6 @@
#@TYPE: Machine
#@Name: NXP MPC8548CDS
+#@SOC: MPC8548CDS
#@DESCRIPTION: Machine configuration for the NXP MPC8548CDS
#@MAINTAINER: Chunrong Guo <chunrong.guo@nxp.com>