summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrey Zhizhikin <andrey.z@gmail.com>2020-12-07 21:20:47 +0000
committerOtavio Salvador <otavio@ossystems.com.br>2020-12-11 19:37:54 -0300
commitb93dcbeb9cf7709f3593690cb25f87558347c239 (patch)
treeff615cca00fc1b82d2c3d76e07acecebaeb6db9f
parent0d839a6186c08fc79319985c916278d8652bb229 (diff)
downloadmeta-freescale-b93dcbeb9cf7709f3593690cb25f87558347c239.tar.gz
conf: machine: imx8m[m,p]: add support for fslc bsp
Add support for FSL Community BSP to imx8mmevk, imx8mpevk and imx8mnevk machines and ease restriction for those machines to be built with NXP-only BSP. FSL Community BSP allows those machines to pick up upstream components in order to construct the image. Bootloader provider is now selected to provide either u-boot-imx or u-boot-fslc for mx8mm machines based on the BSP flavor selected. WIC container is defined to accommodate ATF and option OP-TEE from NXP, as it is required for mx8mm family to boot. Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
-rw-r--r--conf/machine/imx8mmevk.conf53
-rw-r--r--conf/machine/imx8mnevk.conf14
-rw-r--r--conf/machine/imx8mpevk.conf12
-rw-r--r--conf/machine/include/imx-base.inc14
4 files changed, 61 insertions, 32 deletions
diff --git a/conf/machine/imx8mmevk.conf b/conf/machine/imx8mmevk.conf
index db722c72..231d7ff7 100644
--- a/conf/machine/imx8mmevk.conf
+++ b/conf/machine/imx8mmevk.conf
@@ -9,26 +9,36 @@ MACHINEOVERRIDES =. "mx8:mx8m:mx8mm:"
9require conf/machine/include/imx-base.inc 9require conf/machine/include/imx-base.inc
10require conf/machine/include/tune-cortexa53.inc 10require conf/machine/include/tune-cortexa53.inc
11 11
12IMX_DEFAULT_BSP = "nxp" 12MACHINE_FEATURES += "pci wifi bluetooth optee"
13 13
14MACHINE_FEATURES += " pci wifi bluetooth optee qca9377" 14# NXP BSP can consume QCA9377 driver and firmware
15 15# Since the firmware is not available publicly, and rather distributed
16KERNEL_DEVICETREE = " \ 16# under "Proprietary" license - we opt-out from using it in all BSPs
17 freescale/imx8mm-ddr4-evk.dtb \ 17# and pin it to NXP BSP only
18 freescale/imx8mm-ddr4-evk-revb.dtb \ 18MACHINE_FEATURES_use-nxp-bsp_append = " qca9377"
19 freescale/imx8mm-ddr4-evk-revb-rm67191.dtb \ 19
20 freescale/imx8mm-ddr4-evk-rm67191.dtb \ 20# Mainline kernel contains only one DTB file for
21 freescale/imx8mm-evk-ak4497.dtb \ 21# imx8mmevk machine
22 freescale/imx8mm-evk-ak5558.dtb \ 22KERNEL_DEVICETREE = "freescale/imx8mm-evk.dtb"
23 freescale/imx8mm-evk-audio-tdm.dtb \ 23
24 freescale/imx8mm-evk.dtb \ 24# NXP kernel has additional DTB files for various board configuration and
25 freescale/imx8mm-evk-inmate.dtb \ 25# derivates. Include them here for NXP BSP only
26 freescale/imx8mm-evk-revb.dtb \ 26KERNEL_DEVICETREE_use-nxp-bsp_append = " \
27 freescale/imx8mm-evk-rm67191.dtb \ 27 freescale/imx8mm-ddr4-evk.dtb \
28 freescale/imx8mm-evk-root.dtb \ 28 freescale/imx8mm-ddr4-evk-revb.dtb \
29 freescale/imx8mm-evk-rpmsg.dtb \ 29 freescale/imx8mm-ddr4-evk-revb-rm67191.dtb \
30 freescale/imx8mm-ddr4-evk-rm67191.dtb \
31 freescale/imx8mm-evk-ak4497.dtb \
32 freescale/imx8mm-evk-ak5558.dtb \
33 freescale/imx8mm-evk-audio-tdm.dtb \
34 freescale/imx8mm-evk-inmate.dtb \
35 freescale/imx8mm-evk-revb.dtb \
36 freescale/imx8mm-evk-rm67191.dtb \
37 freescale/imx8mm-evk-root.dtb \
38 freescale/imx8mm-evk-rpmsg.dtb \
30" 39"
31 40
41
32UBOOT_CONFIG ??= "sd" 42UBOOT_CONFIG ??= "sd"
33UBOOT_CONFIG[sd] = "imx8mm_evk_config,sdcard" 43UBOOT_CONFIG[sd] = "imx8mm_evk_config,sdcard"
34UBOOT_CONFIG[fspi] = "imx8mm_evk_fspi_defconfig" 44UBOOT_CONFIG[fspi] = "imx8mm_evk_fspi_defconfig"
@@ -36,7 +46,12 @@ UBOOT_CONFIG[mfgtool] = "imx8mm_evk_config"
36SPL_BINARY = "spl/u-boot-spl.bin" 46SPL_BINARY = "spl/u-boot-spl.bin"
37 47
38# Set DDR FIRMWARE 48# Set DDR FIRMWARE
39DDR_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" 49DDR_FIRMWARE_NAME = " \
50 lpddr4_pmu_train_1d_imem.bin \
51 lpddr4_pmu_train_1d_dmem.bin \
52 lpddr4_pmu_train_2d_imem.bin \
53 lpddr4_pmu_train_2d_dmem.bin \
54"
40 55
41# Set u-boot DTB 56# Set u-boot DTB
42UBOOT_DTB_NAME = "imx8mm-evk.dtb" 57UBOOT_DTB_NAME = "imx8mm-evk.dtb"
diff --git a/conf/machine/imx8mnevk.conf b/conf/machine/imx8mnevk.conf
index 80d77ac8..f0d785cd 100644
--- a/conf/machine/imx8mnevk.conf
+++ b/conf/machine/imx8mnevk.conf
@@ -9,18 +9,24 @@ MACHINEOVERRIDES =. "mx8:mx8m:mx8mn:"
9require conf/machine/include/imx-base.inc 9require conf/machine/include/imx-base.inc
10require conf/machine/include/tune-cortexa53.inc 10require conf/machine/include/tune-cortexa53.inc
11 11
12IMX_DEFAULT_BSP = "nxp" 12MACHINE_FEATURES += "wifi bluetooth optee"
13 13
14MACHINE_FEATURES += "wifi bluetooth optee bcm43455" 14# NXP BSP can consume propietary Broadcomm driver
15MACHINE_FEATURES_use-nxp-bsp_append = " bcm43455"
15 16
17# Mainline kernel contains only two DTB file for
18# imx8mnevk machine
16KERNEL_DEVICETREE = " \ 19KERNEL_DEVICETREE = " \
17 freescale/imx8mn-ddr4-evk-ak5558.dtb \
18 freescale/imx8mn-ddr4-evk.dtb \ 20 freescale/imx8mn-ddr4-evk.dtb \
21 freescale/imx8mn-evk.dtb \
22"
23
24KERNEL_DEVICETREE_use-nxp-bsp_append = " \
25 freescale/imx8mn-ddr4-evk-ak5558.dtb \
19 freescale/imx8mn-ddr4-evk-inmate.dtb \ 26 freescale/imx8mn-ddr4-evk-inmate.dtb \
20 freescale/imx8mn-ddr4-evk-rm67191.dtb \ 27 freescale/imx8mn-ddr4-evk-rm67191.dtb \
21 freescale/imx8mn-ddr4-evk-root.dtb \ 28 freescale/imx8mn-ddr4-evk-root.dtb \
22 freescale/imx8mn-ddr4-evk-rpmsg.dtb \ 29 freescale/imx8mn-ddr4-evk-rpmsg.dtb \
23 freescale/imx8mn-evk.dtb \
24 freescale/imx8mn-evk-rm67191.dtb \ 30 freescale/imx8mn-evk-rm67191.dtb \
25" 31"
26 32
diff --git a/conf/machine/imx8mpevk.conf b/conf/machine/imx8mpevk.conf
index d1376649..f76240b6 100644
--- a/conf/machine/imx8mpevk.conf
+++ b/conf/machine/imx8mpevk.conf
@@ -9,14 +9,18 @@ MACHINEOVERRIDES =. "mx8:mx8m:mx8mp:"
9require conf/machine/include/imx-base.inc 9require conf/machine/include/imx-base.inc
10require conf/machine/include/tune-cortexa53.inc 10require conf/machine/include/tune-cortexa53.inc
11 11
12IMX_DEFAULT_BSP = "nxp" 12MACHINE_FEATURES += "pci wifi bluetooth optee"
13MACHINE_FEATURES_use-nxp-bsp_append = " mrvl8997"
13 14
14MACHINE_FEATURES += " pci wifi bluetooth optee mrvl8997" 15# Mainline kernel contains only one DTB file for
16# imx8mpevk machine
17KERNEL_DEVICETREE = "freescale/imx8mp-evk.dtb"
15 18
16KERNEL_DEVICETREE = " \ 19# NXP kernel has additional DTB files for various board configuration and
20# derivates. Include them here for NXP BSP only
21KERNEL_DEVICETREE_use-nxp-bsp_append = " \
17 freescale/imx8mp-ab2.dtb \ 22 freescale/imx8mp-ab2.dtb \
18 freescale/imx8mp-evk-basler.dtb \ 23 freescale/imx8mp-evk-basler.dtb \
19 freescale/imx8mp-evk.dtb \
20 freescale/imx8mp-evk-dsp.dtb \ 24 freescale/imx8mp-evk-dsp.dtb \
21 freescale/imx8mp-evk-flexcan2.dtb \ 25 freescale/imx8mp-evk-flexcan2.dtb \
22 freescale/imx8mp-evk-inmate.dtb \ 26 freescale/imx8mp-evk-inmate.dtb \
diff --git a/conf/machine/include/imx-base.inc b/conf/machine/include/imx-base.inc
index 6295ccd0..4dae43d0 100644
--- a/conf/machine/include/imx-base.inc
+++ b/conf/machine/include/imx-base.inc
@@ -5,10 +5,6 @@ include conf/machine/include/fsl-default-versions.inc
5 5
6require conf/machine/include/utilities.inc 6require conf/machine/include/utilities.inc
7 7
8# Set specific make target and binary suffix
9IMX_DEFAULT_BOOTLOADER = "u-boot-fslc"
10IMX_DEFAULT_BOOTLOADER_mx8 = "u-boot-imx"
11
12# Machines or distros can define which BSP it should use by default. We are 8# Machines or distros can define which BSP it should use by default. We are
13# intending to default for mainline BSP by default and specific machines or 9# intending to default for mainline BSP by default and specific machines or
14# DISTROs might change it if need. 10# DISTROs might change it if need.
@@ -22,6 +18,11 @@ IMX_DEFAULT_BSP_mx5 ?= "mainline"
22 18
23MACHINEOVERRIDES =. "use-${IMX_DEFAULT_BSP}-bsp:" 19MACHINEOVERRIDES =. "use-${IMX_DEFAULT_BSP}-bsp:"
24 20
21# Set specific make target and binary suffix
22IMX_DEFAULT_BOOTLOADER = "u-boot-fslc"
23IMX_DEFAULT_BOOTLOADER_mx8 = "u-boot-imx"
24IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
25
25PREFERRED_PROVIDER_u-boot ??= "${IMX_DEFAULT_BOOTLOADER}" 26PREFERRED_PROVIDER_u-boot ??= "${IMX_DEFAULT_BOOTLOADER}"
26PREFERRED_PROVIDER_u-boot-tools-native ??= "${IMX_DEFAULT_BOOTLOADER}-tools-native" 27PREFERRED_PROVIDER_u-boot-tools-native ??= "${IMX_DEFAULT_BOOTLOADER}-tools-native"
27PREFERRED_PROVIDER_nativesdk-u-boot-tools ??= "nativesdk-${IMX_DEFAULT_BOOTLOADER}-tools" 28PREFERRED_PROVIDER_nativesdk-u-boot-tools ??= "nativesdk-${IMX_DEFAULT_BOOTLOADER}-tools"
@@ -364,9 +365,12 @@ WKS_FILE_DEPENDS ?= " \
364 ${@bb.utils.contains('MACHINE_FEATURES', 'optee', '${OPTEE_WKS_FILE_DEPENDS}', '', d)} \ 365 ${@bb.utils.contains('MACHINE_FEATURES', 'optee', '${OPTEE_WKS_FILE_DEPENDS}', '', d)} \
365" 366"
366 367
367WKS_FILE_DEPENDS_append_mx8 = " imx-boot " 368WKS_FILE_DEPENDS_append_mx8 = " imx-boot"
369WKS_FILE_DEPENDS_append_use-mainline-bsp = " imx-boot"
368 370
369SOC_DEFAULT_WKS_FILE ?= "imx-uboot-bootpart.wks.in" 371SOC_DEFAULT_WKS_FILE ?= "imx-uboot-bootpart.wks.in"
372SOC_DEFAULT_WKS_FILE_mx8m ?= "imx-imx-boot-bootpart.wks.in"
373
370SOC_DEFAULT_WKS_FILE_mx8 ?= "imx-imx-boot-bootpart.wks.in" 374SOC_DEFAULT_WKS_FILE_mx8 ?= "imx-imx-boot-bootpart.wks.in"
371SOC_DEFAULT_WKS_FILE_mxs ?= "imx-uboot-mxs-bootpart.wks.in" 375SOC_DEFAULT_WKS_FILE_mxs ?= "imx-uboot-mxs-bootpart.wks.in"
372 376