diff options
author | Andrey Zhizhikin <andrey.z@gmail.com> | 2020-12-07 21:20:47 +0000 |
---|---|---|
committer | Otavio Salvador <otavio@ossystems.com.br> | 2020-12-11 19:37:54 -0300 |
commit | b93dcbeb9cf7709f3593690cb25f87558347c239 (patch) | |
tree | ff615cca00fc1b82d2c3d76e07acecebaeb6db9f | |
parent | 0d839a6186c08fc79319985c916278d8652bb229 (diff) | |
download | meta-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.conf | 53 | ||||
-rw-r--r-- | conf/machine/imx8mnevk.conf | 14 | ||||
-rw-r--r-- | conf/machine/imx8mpevk.conf | 12 | ||||
-rw-r--r-- | conf/machine/include/imx-base.inc | 14 |
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:" | |||
9 | require conf/machine/include/imx-base.inc | 9 | require conf/machine/include/imx-base.inc |
10 | require conf/machine/include/tune-cortexa53.inc | 10 | require conf/machine/include/tune-cortexa53.inc |
11 | 11 | ||
12 | IMX_DEFAULT_BSP = "nxp" | 12 | MACHINE_FEATURES += "pci wifi bluetooth optee" |
13 | 13 | ||
14 | MACHINE_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 | |
16 | KERNEL_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 \ | 18 | MACHINE_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 \ | 22 | KERNEL_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 \ | 26 | KERNEL_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 | |||
32 | UBOOT_CONFIG ??= "sd" | 42 | UBOOT_CONFIG ??= "sd" |
33 | UBOOT_CONFIG[sd] = "imx8mm_evk_config,sdcard" | 43 | UBOOT_CONFIG[sd] = "imx8mm_evk_config,sdcard" |
34 | UBOOT_CONFIG[fspi] = "imx8mm_evk_fspi_defconfig" | 44 | UBOOT_CONFIG[fspi] = "imx8mm_evk_fspi_defconfig" |
@@ -36,7 +46,12 @@ UBOOT_CONFIG[mfgtool] = "imx8mm_evk_config" | |||
36 | SPL_BINARY = "spl/u-boot-spl.bin" | 46 | SPL_BINARY = "spl/u-boot-spl.bin" |
37 | 47 | ||
38 | # Set DDR FIRMWARE | 48 | # Set DDR FIRMWARE |
39 | 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" | 49 | DDR_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 |
42 | UBOOT_DTB_NAME = "imx8mm-evk.dtb" | 57 | UBOOT_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:" | |||
9 | require conf/machine/include/imx-base.inc | 9 | require conf/machine/include/imx-base.inc |
10 | require conf/machine/include/tune-cortexa53.inc | 10 | require conf/machine/include/tune-cortexa53.inc |
11 | 11 | ||
12 | IMX_DEFAULT_BSP = "nxp" | 12 | MACHINE_FEATURES += "wifi bluetooth optee" |
13 | 13 | ||
14 | MACHINE_FEATURES += "wifi bluetooth optee bcm43455" | 14 | # NXP BSP can consume propietary Broadcomm driver |
15 | MACHINE_FEATURES_use-nxp-bsp_append = " bcm43455" | ||
15 | 16 | ||
17 | # Mainline kernel contains only two DTB file for | ||
18 | # imx8mnevk machine | ||
16 | KERNEL_DEVICETREE = " \ | 19 | KERNEL_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 | |||
24 | KERNEL_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:" | |||
9 | require conf/machine/include/imx-base.inc | 9 | require conf/machine/include/imx-base.inc |
10 | require conf/machine/include/tune-cortexa53.inc | 10 | require conf/machine/include/tune-cortexa53.inc |
11 | 11 | ||
12 | IMX_DEFAULT_BSP = "nxp" | 12 | MACHINE_FEATURES += "pci wifi bluetooth optee" |
13 | MACHINE_FEATURES_use-nxp-bsp_append = " mrvl8997" | ||
13 | 14 | ||
14 | MACHINE_FEATURES += " pci wifi bluetooth optee mrvl8997" | 15 | # Mainline kernel contains only one DTB file for |
16 | # imx8mpevk machine | ||
17 | KERNEL_DEVICETREE = "freescale/imx8mp-evk.dtb" | ||
15 | 18 | ||
16 | KERNEL_DEVICETREE = " \ | 19 | # NXP kernel has additional DTB files for various board configuration and |
20 | # derivates. Include them here for NXP BSP only | ||
21 | KERNEL_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 | ||
6 | require conf/machine/include/utilities.inc | 6 | require conf/machine/include/utilities.inc |
7 | 7 | ||
8 | # Set specific make target and binary suffix | ||
9 | IMX_DEFAULT_BOOTLOADER = "u-boot-fslc" | ||
10 | IMX_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 | ||
23 | MACHINEOVERRIDES =. "use-${IMX_DEFAULT_BSP}-bsp:" | 19 | MACHINEOVERRIDES =. "use-${IMX_DEFAULT_BSP}-bsp:" |
24 | 20 | ||
21 | # Set specific make target and binary suffix | ||
22 | IMX_DEFAULT_BOOTLOADER = "u-boot-fslc" | ||
23 | IMX_DEFAULT_BOOTLOADER_mx8 = "u-boot-imx" | ||
24 | IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc" | ||
25 | |||
25 | PREFERRED_PROVIDER_u-boot ??= "${IMX_DEFAULT_BOOTLOADER}" | 26 | PREFERRED_PROVIDER_u-boot ??= "${IMX_DEFAULT_BOOTLOADER}" |
26 | PREFERRED_PROVIDER_u-boot-tools-native ??= "${IMX_DEFAULT_BOOTLOADER}-tools-native" | 27 | PREFERRED_PROVIDER_u-boot-tools-native ??= "${IMX_DEFAULT_BOOTLOADER}-tools-native" |
27 | PREFERRED_PROVIDER_nativesdk-u-boot-tools ??= "nativesdk-${IMX_DEFAULT_BOOTLOADER}-tools" | 28 | PREFERRED_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 | ||
367 | WKS_FILE_DEPENDS_append_mx8 = " imx-boot " | 368 | WKS_FILE_DEPENDS_append_mx8 = " imx-boot" |
369 | WKS_FILE_DEPENDS_append_use-mainline-bsp = " imx-boot" | ||
368 | 370 | ||
369 | SOC_DEFAULT_WKS_FILE ?= "imx-uboot-bootpart.wks.in" | 371 | SOC_DEFAULT_WKS_FILE ?= "imx-uboot-bootpart.wks.in" |
372 | SOC_DEFAULT_WKS_FILE_mx8m ?= "imx-imx-boot-bootpart.wks.in" | ||
373 | |||
370 | SOC_DEFAULT_WKS_FILE_mx8 ?= "imx-imx-boot-bootpart.wks.in" | 374 | SOC_DEFAULT_WKS_FILE_mx8 ?= "imx-imx-boot-bootpart.wks.in" |
371 | SOC_DEFAULT_WKS_FILE_mxs ?= "imx-uboot-mxs-bootpart.wks.in" | 375 | SOC_DEFAULT_WKS_FILE_mxs ?= "imx-uboot-mxs-bootpart.wks.in" |
372 | 376 | ||