diff options
Diffstat (limited to 'conf')
57 files changed, 1134 insertions, 568 deletions
diff --git a/conf/layer.conf b/conf/layer.conf index 77e704ed..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 = "honister" +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 \ @@ -40,6 +50,11 @@ BBFILES_DYNAMIC += " \ 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 \ \ @@ -49,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 5e8be1e9..4e2fe980 100644 --- a/conf/machine/imx23evk.conf +++ b/conf/machine/imx23evk.conf @@ -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/imx28evk.conf b/conf/machine/imx28evk.conf index 9763a396..cecb97d2 100644 --- a/conf/machine/imx28evk.conf +++ b/conf/machine/imx28evk.conf @@ -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 7c66435d..5934afa1 100644 --- a/conf/machine/imx51evk.conf +++ b/conf/machine/imx51evk.conf @@ -9,7 +9,7 @@ MACHINEOVERRIDES =. "mx5:mx51:" include conf/machine/include/imx-base.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/imx53qsb.conf b/conf/machine/imx53qsb.conf index 0d6a7b22..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/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 171b9f00..61d81ab6 100644 --- a/conf/machine/imx6qdlsabreauto.conf +++ b/conf/machine/imx6qdlsabreauto.conf @@ -11,51 +11,63 @@ # * 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/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 \ + nxp/imx/imx6qp-sabreauto.dtb \ + nxp/imx/imx6q-sabreauto.dtb \ + nxp/imx/imx6dl-sabreauto.dtb \ " +UBOOT_CONFIG ??= " \ + sd \ + ${@oe.utils.ifelse(d.getVar('IMX_DEFAULT_BOOTLOADER') == 'u-boot-imx', \ + bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee', '', d), '')}" + ### u-boot-fslc settings ### SPL_BINARY:pn-u-boot-fslc = "SPL" -UBOOT_CONFIG:pn-u-boot-fslc ??= "sd-fslc" UBOOT_SUFFIX:pn-u-boot-fslc = "img" ### u-boot-imx settings ### SPL_BINARY:pn-u-boot-imx = "" -UBOOT_CONFIG:pn-u-boot-imx ??= " \ - sd-imx \ - ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee-imx', '', d)} \ -" 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. -UBOOT_CONFIG[sd-fslc] = "mx6sabreauto_defconfig,sdcard" -UBOOT_CONFIG[sd-imx] = "mx6qpsabreauto_defconfig,sdcard" -UBOOT_CONFIG[sd-optee-imx] = "mx6qpsabreauto_optee_defconfig,sdcard" -UBOOT_CONFIG[eimnor-imx] = "mx6qpsabreauto_eimnor_defconfig" -UBOOT_CONFIG[nand-imx] = "mx6qpsabreauto_nand_defconfig,ubifs" -UBOOT_CONFIG[spinor-imx] = "mx6qpsabreauto_spinor_defconfig" -UBOOT_CONFIG[sata-imx] = "mx6qpsabreauto_sata_defconfig" -UBOOT_CONFIG[mfgtool-imx] = "mx6qpsabreauto_defconfig" +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', \ @@ -68,4 +80,4 @@ SERIAL_CONSOLES = "115200;ttymxc3" 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 a5133625..1ab1d9df 100644 --- a/conf/machine/imx6qdlsabresd.conf +++ b/conf/machine/imx6qdlsabresd.conf @@ -11,57 +11,61 @@ # * 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/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 \ + nxp/imx/imx6qp-sabresd.dtb \ + nxp/imx/imx6q-sabresd.dtb \ + nxp/imx/imx6dl-sabresd.dtb \ " +UBOOT_CONFIG ??= " \ + sd \ + ${@oe.utils.ifelse(d.getVar('IMX_DEFAULT_BOOTLOADER') == 'u-boot-imx', \ + bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee', '', d), '')}" + ### u-boot-fslc settings ### SPL_BINARY:pn-u-boot-fslc = "SPL" -UBOOT_CONFIG:pn-u-boot-fslc ??= "sd-fslc" UBOOT_SUFFIX:pn-u-boot-fslc = "img" ### u-boot-imx settings ### SPL_BINARY:pn-u-boot-imx = "" -UBOOT_CONFIG:pn-u-boot-imx ??= " \ - sd-imx \ - ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee-imx', '', d)} \ -" 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. -UBOOT_CONFIG[sd-fslc] = "mx6sabresd_defconfig,sdcard" -UBOOT_CONFIG[sd-imx] = "mx6qsabresd_defconfig,sdcard" -UBOOT_CONFIG[sd-optee-imx] = "mx6qsabresd_optee_defconfig,sdcard" -UBOOT_CONFIG[sata-imx] = "mx6qsabresd_sata_defconfig" -UBOOT_CONFIG[mfgtool-imx] = "mx6qsabresd_defconfig" +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', \ @@ -74,4 +78,4 @@ SERIAL_CONSOLES = "115200;ttymxc0" 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 b25182ba..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 require conf/machine/include/arm/armv7a/tune-cortexa9.inc -KERNEL_DEVICETREE = "imx6sl-evk.dtb" +KERNEL_DEVICETREE = "nxp/imx/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 \ + 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 ea525845..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 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" 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 9e83c458..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/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,7 +23,6 @@ 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" @@ -31,4 +30,4 @@ SERIAL_CONSOLES = "115200;ttymxc3" 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 d0a89596..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/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 \ + 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,7 +37,6 @@ 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" @@ -45,4 +44,4 @@ SERIAL_CONSOLES = "115200;ttymxc0" 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 09d64b4e..10c7b6fb 100644 --- a/conf/machine/imx6ulevk.conf +++ b/conf/machine/imx6ulevk.conf @@ -4,24 +4,30 @@ #@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/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-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 \ + nxp/imx/imx6ul-14x14-evk-reve.dtb \ + nxp/imx/imx6ul-14x14-evk-reve-btwifi.dtb \ + nxp/imx/imx6ul-14x14-evk-reve-csi.dtb \ + nxp/imx/imx6ul-14x14-evk-reve-ecspi.dtb \ + nxp/imx/imx6ul-14x14-evk-reve-ecspi-slave.dtb \ + nxp/imx/imx6ul-14x14-evk-reve-emmc.dtb \ + nxp/imx/imx6ul-14x14-evk-reve-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 ### @@ -33,7 +39,9 @@ UBOOT_SUFFIX:pn-u-boot-fslc = "img" # 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_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 +56,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 e71e34e4..f412c18d 100644 --- a/conf/machine/imx6ullevk.conf +++ b/conf/machine/imx6ullevk.conf @@ -4,22 +4,25 @@ #@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/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 \ + nxp/imx/imx6ull-14x14-evk-btwifi.dtb \ + nxp/imx/imx6ull-14x14-evk-emmc.dtb \ + nxp/imx/imx6ull-14x14-evk-gpmi-weim.dtb \ + nxp/imx/imx6ull-14x14-evk-reve.dtb \ + nxp/imx/imx6ull-14x14-evk-reve-btwifi.dtb \ + nxp/imx/imx6ull-14x14-evk-reve-emmc.dtb \ + nxp/imx/imx6ull-14x14-evk-reve-gpmi-weim.dtb \ " UBOOT_MAKE_TARGET = "u-boot.imx" @@ -34,6 +37,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 a47c08f8..c5fd91bf 100644 --- a/conf/machine/imx6ulz-14x14-evk.conf +++ b/conf/machine/imx6ulz-14x14-evk.conf @@ -4,20 +4,24 @@ #@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/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 \ + nxp/imx/imx6ulz-14x14-evk-btwifi.dtb \ + nxp/imx/imx6ulz-14x14-evk-emmc.dtb \ + nxp/imx/imx6ulz-14x14-evk-gpmi-weim.dtb \ + nxp/imx/imx6ulz-14x14-evk-reve.dtb \ + nxp/imx/imx6ulz-14x14-evk-reve-btwifi.dtb \ + nxp/imx/imx6ulz-14x14-evk-reve-emmc.dtb \ + nxp/imx/imx6ulz-14x14-evk-reve-gpmi-weim.dtb \ " UBOOT_MAKE_TARGET = "u-boot.imx" diff --git a/conf/machine/imx7dsabresd.conf b/conf/machine/imx7dsabresd.conf index 7183d6f9..4b4a6012 100644 --- a/conf/machine/imx7dsabresd.conf +++ b/conf/machine/imx7dsabresd.conf @@ -9,19 +9,20 @@ MACHINEOVERRIDES =. "mx7:mx7d:" require conf/machine/include/imx-base.inc include conf/machine/include/arm/armv7a/tune-cortexa7.inc -MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455" +MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455 nxp8987-sdio" -KERNEL_DEVICETREE = "imx7d-sdb.dtb" +KERNEL_DEVICETREE = "nxp/imx/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 \ + 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 e0961240..2e39a0c7 100644 --- a/conf/machine/imx7ulpevk.conf +++ b/conf/machine/imx7ulpevk.conf @@ -9,26 +9,23 @@ MACHINEOVERRIDES =. "mx7:mx7ulp:" require conf/machine/include/imx-base.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 \ -" -KERNEL_DEVICETREE:append:use-mainline-bsp = " \ - imx7ulp-com.dtb \ + nxp/imx/imx7ulp-evk.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 \ + 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 d1aaa8ee..f7abd89a 100644 --- a/conf/machine/imx8dx-mek.conf +++ b/conf/machine/imx8dx-mek.conf @@ -1,9 +1,10 @@ #@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 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 e74bc259..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 = "ddr3-evk" diff --git a/conf/machine/imx8mm-ddr4-evk.conf b/conf/machine/imx8mm-ddr4-evk.conf index f21cc381..467ca863 100644 --- a/conf/machine/imx8mm-ddr4-evk.conf +++ b/conf/machine/imx8mm-ddr4-evk.conf @@ -8,8 +8,11 @@ require include/imx8mm-evk.inc KERNEL_DEVICETREE_BASENAME = "${MACHINE}" KERNEL_DEVICETREE:append:use-nxp-bsp = " \ - freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67191.dtb \ freescale/${KERNEL_DEVICETREE_BASENAME}-revb.dtb \ + 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 0a85ed20..1387e594 100644 --- a/conf/machine/imx8mm-lpddr4-evk.conf +++ b/conf/machine/imx8mm-lpddr4-evk.conf @@ -9,17 +9,22 @@ 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 \ + 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 d004d2ae..7a796d38 100644 --- a/conf/machine/imx8mn-ddr4-evk.conf +++ b/conf/machine/imx8mn-ddr4-evk.conf @@ -12,6 +12,8 @@ KERNEL_DEVICETREE:append:use-nxp-bsp = " \ " 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 2e5e6be9..25103706 100644 --- a/conf/machine/imx8mn-lpddr4-evk.conf +++ b/conf/machine/imx8mn-lpddr4-evk.conf @@ -9,7 +9,11 @@ require include/imx8mn-evk.inc # The device tree name is implicit for LPDDR4, so can't use MACHINE here KERNEL_DEVICETREE_BASENAME = "imx8mn-evk" KERNEL_DEVICETREE:append:use-nxp-bsp = " \ + freescale/${KERNEL_DEVICETREE_BASENAME}-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 78e0c160..c63c8d68 100644 --- a/conf/machine/imx8mp-ddr4-evk.conf +++ b/conf/machine/imx8mp-ddr4-evk.conf @@ -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 0b7c6801..39108716 100644 --- a/conf/machine/imx8mp-lpddr4-evk.conf +++ b/conf/machine/imx8mp-lpddr4-evk.conf @@ -12,43 +12,57 @@ 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-dual-basler.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-ov2775.dtb \ - freescale/imx8mp-evk-ov2775-ov5640.dtb \ - freescale/imx8mp-evk-pcie-ep.dtb \ - freescale/imx8mp-evk-rm67191.dtb \ - freescale/imx8mp-evk-rm67199.dtb \ - freescale/imx8mp-evk-root.dtb \ - freescale/imx8mp-evk-rpmsg.dtb \ - freescale/imx8mp-evk-sof-wm8960.dtb \ - freescale/imx8mp-evk-spdif-lb.dtb \ - freescale/imx8mp-evk-usdhc1-m2.dtb \ + 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 cea44ed1..92a436e5 100644 --- a/conf/machine/imx8mq-evk.conf +++ b/conf/machine/imx8mq-evk.conf @@ -4,15 +4,18 @@ #@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/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" @@ -47,7 +50,6 @@ 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,8 +71,26 @@ 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" 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 72c8b6a0..47cfde19 100644 --- a/conf/machine/imx8qm-mek.conf +++ b/conf/machine/imx8qm-mek.conf @@ -1,5 +1,6 @@ #@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> @@ -10,11 +11,11 @@ require conf/machine/include/arm/armv8a/tune-cortexa72-cortexa53.inc IMX_DEFAULT_BSP = "nxp" -MACHINE_FEATURES += "pci optee bcm43455 bcm4356" +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,26 +27,29 @@ 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-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-dsi-serdes.dtb \ + freescale/imx8qm-mek-dsi-serdes-dual-display.dtb \ + freescale/imx8qm-mek-dsi-serdes-dual-display-rpmsg.dtb \ + freescale/imx8qm-mek-dsi-serdes-rpmsg.dtb \ + freescale/imx8qm-mek-enet2-tja1100.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 = \ @@ -62,7 +66,6 @@ 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" diff --git a/conf/machine/imx8qxp-mek.conf b/conf/machine/imx8qxp-mek.conf index 29412cc3..87df30f4 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> @@ -9,18 +10,21 @@ 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 \ + 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 \ + freescale/${KERNEL_DEVICETREE_BASENAME}-sof-wm8962.dtb \ " UBOOT_CONFIG_BASENAME = "imx8qxp_mek" 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..f8bdc4d7 --- /dev/null +++ b/conf/machine/imx93-11x11-lpddr4x-evk.conf @@ -0,0 +1,37 @@ +#@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}-ld.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 \ + freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \ + freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg-lpv.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..97559104 --- /dev/null +++ b/conf/machine/imx93-14x14-lpddr4x-evk.conf @@ -0,0 +1,33 @@ +#@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}-dsi-serdes.dtb \ + freescale/${KERNEL_DEVICETREE_BASENAME}-flexspi-m2.dtb \ + freescale/${KERNEL_DEVICETREE_BASENAME}-i3c.dtb \ + freescale/${KERNEL_DEVICETREE_BASENAME}-rm67199.dtb \ + freescale/${KERNEL_DEVICETREE_BASENAME}-sja1105.dtb \ + freescale/${KERNEL_DEVICETREE_BASENAME}-tja1103.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/imx-base.inc b/conf/machine/include/imx-base.inc index 51c62034..8c468fea 100644 --- a/conf/machine/include/imx-base.inc +++ b/conf/machine/include/imx-base.inc @@ -60,6 +60,14 @@ 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}}" @@ -67,41 +75,67 @@ UBOOT_SUFFIX ?= "${UBOOT_SUFFIX:pn-${IMX_DEFAULT_BOOTLOADER}}" # 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,42 +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: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 \ @@ -168,42 +280,55 @@ 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 \ @@ -214,13 +339,23 @@ MACHINE_SOCARCH_FILTER:append:imxvpu = " \ libimxvpuapi \ virtual/imxvpu \ " +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 \ " @@ -232,7 +367,7 @@ MACHINE_SOCARCH_FILTER:append:imxgpu3d = " \ virtual/libgles1 \ virtual/libgles2 \ " -MACHINE_SOCARCH_FILTER:append:use-mainline-bsp = " \ +MACHINE_SOCARCH_FILTER:append:imx-mainline-bsp = " \ virtual/egl \ virtual/libopenvg \ virtual/libg2d \ @@ -244,17 +379,7 @@ 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 \ " @@ -268,41 +393,85 @@ 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: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', '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)}" @@ -312,33 +481,47 @@ MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'q MACHINE_EXTRA_RRECOMMENDS += "udev-rules-imx" # Jailhouse +PREFERRED_PROVIDER_jailhouse:imx-nxp-bsp ?= "jailhouse-imx" MACHINE_EXTRA_RRECOMMENDS += " \ ${@bb.utils.filter('COMBINED_FEATURES', 'jailhouse', d)} \ " +# ELE extra Firmware +SECOEXT_FIRMWARE_NAME ?= "UNDEFINED" +SECOEXT_FIRMWARE_NAME:mx8ulp-generic-bsp ?= "mx8ulp${IMX_SOC_REV_LOWER}ext-ahab-container.img" + # 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.18.0.imx" -PREFERRED_VERSION_gstreamer1.0-plugins-base:mx8 ?= "1.18.0.imx" -PREFERRED_VERSION_gstreamer1.0-plugins-good:mx8 ?= "1.18.0.imx" -PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx8 ?= "1.18.0.imx" -PREFERRED_VERSION_gstreamer1.0-plugins-ugly:mx8 ?= "1.18.0" -PREFERRED_VERSION_gstreamer1.0-libav:mx8 ?= "1.18.0" -PREFERRED_VERSION_gstreamer1.0-rtsp-server:mx8 ?= "1.18.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 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" @@ -356,59 +539,73 @@ 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/libgl:imxgpu ?= "mesa-gl" +PREFERRED_PROVIDER_virtual/mesa:imxgpu ?= "mesa-gl" 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_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 ?= "9.0.0.imx" -PREFERRED_VERSION_weston:use-mainline-bsp = "" +PREFERRED_VERSION_weston:imx-nxp-bsp ??= "12.0.3.imx" +# i.MX 6 & 7 stay on weston 10.0 for fbdev +PREFERRED_VERSION_weston:mx6-nxp-bsp ??= "10.0.5.imx" +PREFERRED_VERSION_weston:mx7-nxp-bsp ??= "10.0.5.imx" +PREFERRED_VERSION_weston:imx-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_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.116.imx" +PREFERRED_VERSION_libdrm:mx7-nxp-bsp ??= "2.4.116.imx" +PREFERRED_VERSION_libdrm:mx8-nxp-bsp ??= "2.4.116.imx" +PREFERRED_VERSION_libdrm:mx9-nxp-bsp ??= "2.4.116.imx" + +PREFERRED_VERSION_spirv-headers:imxvulkan ??= "1.3.261.1.imx" +PREFERRED_VERSION_spirv-tools:imxvulkan ??= "1.3.261.1.imx" +PREFERRED_VERSION_vulkan-headers:imxvulkan ??= "1.3.261.1.imx" +PREFERRED_VERSION_vulkan-loader:imxvulkan ??= "1.3.261.1.imx" +PREFERRED_VERSION_vulkan-tools:imxvulkan ??= "1.3.261.1.imx" +PREFERRED_VERSION_vulkan-validation-layers:imxvulkan ??= "1.3.261.1.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_BIN_EXT ??= "" OPTEE_BOOT_IMAGE = "tee.bin uTee-${OPTEE_BIN_EXT}" -OPTEE_BOOT_IMAGE:aarch64 = "tee.bin" +OPTEE_BOOT_IMAGE:mx8-generic-bsp = "tee.bin" +OPTEE_BOOT_IMAGE:mx9-generic-bsp = "tee.bin" IMAGE_FSTYPES ?= "${SOC_DEFAULT_IMAGE_FSTYPES}" @@ -426,56 +623,48 @@ 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 screen" -MACHINE_FEATURES = "usbgadget usbhost vfat alsa touchscreen" +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 a0006399..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/arm/armv8a/tune-cortexa35.inc IMX_DEFAULT_BSP = "nxp" -MACHINE_FEATURES += "pci bcm43455 bcm4356" +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 = "" @@ -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 d44a4732..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 = " \ 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 85419a45..442f4477 100644 --- a/conf/machine/include/imx8mm-evk.inc +++ b/conf/machine/include/imx8mm-evk.inc @@ -1,4 +1,4 @@ -MACHINEOVERRIDES =. "imx-boot-container:mx8:mx8m:mx8mm:" +MACHINEOVERRIDES =. "mx8mm:" require conf/machine/include/imx-base.inc require conf/machine/include/arm/armv8a/tune-cortexa53.inc @@ -8,7 +8,7 @@ require conf/machine/include/arm/armv8a/tune-cortexa53.inc # inline NEON and FPU code generation DEFAULTTUNE:use-mainline-bsp = "cortexa53-crypto" -MACHINE_FEATURES += "pci wifi bluetooth bcm43455 bcm4356" +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 @@ -22,27 +22,22 @@ 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 \ + 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)}" @@ -70,7 +65,6 @@ UBOOT_EXTLINUX_ROOT:default:use-mainline-bsp = "root=/dev/mmcblk1p2" IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf" LOADADDR = "" -UBOOT_SUFFIX = "bin" UBOOT_MAKE_TARGET = "all" IMX_BOOT_SEEK = "33" diff --git a/conf/machine/include/imx8mn-evk.inc b/conf/machine/include/imx8mn-evk.inc index 4f897349..11657bcc 100644 --- a/conf/machine/include/imx8mn-evk.inc +++ b/conf/machine/include/imx8mn-evk.inc @@ -1,4 +1,4 @@ -MACHINEOVERRIDES =. "imx-boot-container:mx8:mx8m:mx8mn:" +MACHINEOVERRIDES =. "mx8mn:" require conf/machine/include/imx-base.inc require conf/machine/include/arm/armv8a/tune-cortexa53.inc @@ -8,7 +8,7 @@ require conf/machine/include/arm/armv8a/tune-cortexa53.inc # inline NEON and FPU code generation DEFAULTTUNE:use-mainline-bsp = "cortexa53-crypto" -MACHINE_FEATURES += "wifi bluetooth bcm43455 bcm4356" +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 @@ -16,14 +16,16 @@ MACHINE_FEATURES += "wifi bluetooth bcm43455 bcm4356" 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 \ + 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" @@ -35,15 +37,11 @@ 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)}" @@ -72,7 +70,6 @@ IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.con 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 diff --git a/conf/machine/include/imx8mp-evk.inc b/conf/machine/include/imx8mp-evk.inc index 7635d08c..24e5588f 100644 --- a/conf/machine/include/imx8mp-evk.inc +++ b/conf/machine/include/imx8mp-evk.inc @@ -1,4 +1,4 @@ -MACHINEOVERRIDES =. "imx-boot-container:mx8:mx8m:mx8mp:" +MACHINEOVERRIDES =. "mx8mp:" require conf/machine/include/imx-base.inc require conf/machine/include/arm/armv8a/tune-cortexa53.inc @@ -8,7 +8,7 @@ require conf/machine/include/arm/armv8a/tune-cortexa53.inc # inline NEON and FPU code generation DEFAULTTUNE:use-mainline-bsp = "cortexa53-crypto" -MACHINE_FEATURES += "pci wifi bluetooth" +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 @@ -31,15 +31,10 @@ 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', \ @@ -69,7 +64,6 @@ UBOOT_EXTLINUX_ROOT:default:use-mainline-bsp = "root=/dev/mmcblk1p2" IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf" LOADADDR = "" -UBOOT_SUFFIX = "bin" UBOOT_MAKE_TARGET = "all" IMX_BOOT_SEEK = "32" 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 b4964c30..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/arm/armv8a/tune-cortexa35.inc IMX_DEFAULT_BSP = "nxp" -MACHINE_FEATURES += "pci optee bcm43455 bcm4356" +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 = "" 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 0d8978e3..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" @@ -39,7 +39,7 @@ 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:" diff --git a/conf/machine/ls1021atwr.conf b/conf/machine/ls1021atwr.conf deleted file mode 100644 index dff6767c..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/arm/armv7a/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" -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" -UBOOT_CONFIG[qspi] = "ls1021atwr_qspi_defconfig" -UBOOT_CONFIG[secure-boot] = "ls1021atwr_nor_SECURE_BOOT_defconfig" -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 d70a5a61..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" diff --git a/conf/machine/ls1046ardb.conf b/conf/machine/ls1046ardb.conf index 8e815295..2b82c98f 100644 --- a/conf/machine/ls1046ardb.conf +++ b/conf/machine/ls1046ardb.conf @@ -29,6 +29,7 @@ KERNEL_DEVICETREE ?= "\ 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 ecfe70ae..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 " diff --git a/conf/machine/ls1088ardb.conf b/conf/machine/ls1088ardb.conf index e433b7fc..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 " diff --git a/conf/machine/ls2080ardb.conf b/conf/machine/ls2080ardb.conf deleted file mode 100644 index 5bd4dae8..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" - -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 7f83e89d..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:" 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> |