CLASSES/MACHINES: update for v2.0.0
Several updates integrated: - removal of no more supported basic boot scheme - removal of no more supported boot device (nor-nand and nor-emmc) - rework of providers and machine features - introduction of new board versions (a, c, d, f) - update of extlinuxconf-stm32mp class to manage multiple board versions - configure 'extlinux.conf' file to manage PARTUUID to select rootfs partition - new partition images management (easy to add or remove partition through new PARTITIONS_CONFIG var - specific configuration on machine side for all storage device supported Change-Id: I7e4d3d16535a5654c7fd80f9b56296a61050def3
This commit is contained in:
1 parent
2fbe4ce39c
commit
af5ae28215
33 files changed
+1297
-1245
No files matched your search
@@ -5,6 +5,7 @@ require conf/machine/include/st-machine-features-stm32mp.inc
|
||||
require conf/machine/include/st-machine-flashlayout-stm32mp.inc
|
||||
require conf/machine/include/st-machine-flashlayout-deleteall-stm32mp.inc
|
||||
require conf/machine/include/st-machine-flashlayout-extensible-stm32mp.inc
|
||||
require conf/machine/include/st-machine-storage-device-stm32mp.inc
|
||||
|
||||
# Define specific common machine name
|
||||
MACHINEOVERRIDES .= ":stcommon"
|
||||
@@ -16,13 +17,13 @@ MACHINEOVERRIDES .= ":stm32mpcommon"
|
||||
# boot scheme
|
||||
# =========================================================================
|
||||
# List of supported boot schemes
|
||||
BOOTSCHEME_LABELS ??= "basic trusted optee"
|
||||
BOOTSCHEME_LABELS ??= "trusted optee"
|
||||
|
||||
# =========================================================================
|
||||
# boot device
|
||||
# =========================================================================
|
||||
# List of supported boot devices
|
||||
BOOTDEVICE_LABELS ??= "emmc nand-4-256 nor-emmc nor-nand-4-256 nor-sdcard sdcard"
|
||||
BOOTDEVICE_LABELS ??= "emmc nand-4-256 nor-sdcard sdcard"
|
||||
|
||||
# =========================================================================
|
||||
# Machine settings
|
||||
@@ -30,9 +31,13 @@ BOOTDEVICE_LABELS ??= "emmc nand-4-256 nor-emmc nor-nand-4-256 nor-sdcard sdcard
|
||||
# Default machine feature
|
||||
MACHINE_FEATURES = "usbhost usbgadget alsa screen ext2"
|
||||
MACHINE_FEATURES_append = " ${@bb.utils.contains('BOOTSCHEME_LABELS', 'optee', 'optee', '', d)} "
|
||||
MACHINE_FEATURES_append = " watchdog "
|
||||
MACHINE_FEATURES_append = " tpm2 "
|
||||
|
||||
MACHINE_FEATURES_append = " autoresize "
|
||||
# Remove autoresize package from DISTRO_EXTRA_RRECOMMENDS to add it explicitly
|
||||
# in our bootfs image instead of rootfs
|
||||
DISTRO_EXTRA_RRECOMMENDS_remove = "${@bb.utils.contains('COMBINED_FEATURES', 'autoresize', '${AUTORESIZE}', '', d)}"
|
||||
|
||||
# Default serial consoles (TTYs) to enable using getty
|
||||
# Before kernel 4.18, serial console are ttyS3 but after is ttySTM0
|
||||
SERIAL_CONSOLES = "115200;ttySTM0"
|
||||
@@ -56,51 +61,35 @@ STM32MP_DEVICETREE_append = " ${STM32MP_DT_FILES_EV} "
|
||||
# =========================================================================
|
||||
# Machine specific packages
|
||||
# =========================================================================
|
||||
WIFI_SUSPEND = "${@bb.utils.contains('DISTRO_FEATURES','systemd',' wifi-suspend ','',d)}"
|
||||
MACHINE_EXTRA_RRECOMMENDS_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'wifi', 'linux-firmware-bcm43430', '', d)} "
|
||||
MACHINE_EXTRA_RRECOMMENDS_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'wifi', '${WIFI_SUSPEND}', '', d)} "
|
||||
MACHINE_EXTRA_RRECOMMENDS_append = " m4projects-stm32mp1 "
|
||||
MACHINE_EXTRA_RRECOMMENDS_append = " linux-examples-stm32mp1 "
|
||||
MACHINE_EXTRA_RRECOMMENDS_append = " m4fwcoredump "
|
||||
# Enable Software watchdog when sysvinit
|
||||
MACHINE_EXTRA_RRECOMMENDS_append = " ${@bb.utils.contains('DISTRO_FEATURES','sysvinit',' watchdog ','',d)} "
|
||||
|
||||
# =========================================================================
|
||||
# Image
|
||||
# =========================================================================
|
||||
# For sparse, align on 4096b
|
||||
IMAGE_ROOTFS_ALIGNMENT ?= "4"
|
||||
|
||||
# Enable licence summary and configure License content generation
|
||||
ENABLE_IMAGE_LICENSE_SUMMARY ?= "1"
|
||||
|
||||
# Partitions configuration
|
||||
IMAGE_CLASSES += "st-partitions-image"
|
||||
|
||||
# Define image to use for extra partitions
|
||||
STM32MP_BOOTFS_IMAGE = "st-image-bootfs"
|
||||
STM32MP_BOOTFS_LABEL = "boot"
|
||||
STM32MP_BOOTFS_MOUNTPOINT_IMAGE = "/boot"
|
||||
STM32MP_USERFS_IMAGE = "st-image-userfs"
|
||||
STM32MP_USERFS_LABEL = "userfs"
|
||||
STM32MP_USERFS_MOUNTPOINT_IMAGE = "/usr/local"
|
||||
STM32MP_VENDORFS_IMAGE = "st-image-vendorfs"
|
||||
STM32MP_VENDORFS_LABEL = "vendorfs"
|
||||
STM32MP_VENDORFS_MOUNTPOINT_IMAGE = "/vendor"
|
||||
|
||||
# Configure use of VENDORFS partition
|
||||
ST_VENDORFS ?= "1"
|
||||
|
||||
# Define extra partition to build
|
||||
PARTITIONS_IMAGE = "${STM32MP_BOOTFS_IMAGE}"
|
||||
PARTITIONS_IMAGE += "${STM32MP_USERFS_IMAGE}"
|
||||
PARTITIONS_IMAGE += "${@bb.utils.contains('ST_VENDORFS','1','${STM32MP_VENDORFS_IMAGE}','',d)}"
|
||||
PARTITIONS_MOUNTPOINT_IMAGE = "${STM32MP_BOOTFS_MOUNTPOINT_IMAGE}"
|
||||
PARTITIONS_MOUNTPOINT_IMAGE += "${STM32MP_USERFS_MOUNTPOINT_IMAGE}"
|
||||
PARTITIONS_MOUNTPOINT_IMAGE += "${@bb.utils.contains('ST_VENDORFS','1','${STM32MP_VENDORFS_MOUNTPOINT_IMAGE}','',d)}"
|
||||
|
||||
# Provide list of partition to mount
|
||||
MOUNT_PARTITIONS_LIST = "${STM32MP_BOOTFS_LABEL},${STM32MP_BOOTFS_MOUNTPOINT_IMAGE}"
|
||||
MOUNT_PARTITIONS_LIST += "${STM32MP_USERFS_LABEL},${STM32MP_USERFS_MOUNTPOINT_IMAGE}"
|
||||
MOUNT_PARTITIONS_LIST += "${@bb.utils.contains('ST_VENDORFS','1','${STM32MP_VENDORFS_LABEL},${STM32MP_VENDORFS_MOUNTPOINT_IMAGE}','',d)}"
|
||||
STM32MP_BOOTFS_IMAGE ?= "st-image-bootfs"
|
||||
STM32MP_BOOTFS_LABEL ?= "boot"
|
||||
STM32MP_BOOTFS_MOUNTPOINT ?= "/boot"
|
||||
STM32MP_USERFS_IMAGE ?= "st-image-userfs"
|
||||
STM32MP_USERFS_LABEL ?= "userfs"
|
||||
STM32MP_USERFS_MOUNTPOINT ?= "/usr/local"
|
||||
STM32MP_VENDORFS_IMAGE ?= "st-image-vendorfs"
|
||||
STM32MP_VENDORFS_LABEL ?= "vendorfs"
|
||||
STM32MP_VENDORFS_MOUNTPOINT ?= "/vendor"
|
||||
|
||||
# Define image partition size (supposed to be set as max size in image recipe)
|
||||
# Proposed value for bootfs is 64MB
|
||||
BOOTFS_PARTITION_SIZE = "65536"
|
||||
BOOTFS_PARTITION_SIZE ?= "65536"
|
||||
# Proposed value for rootfs should fit our highest constraint: NAND size (1GiB)
|
||||
# For optee bootscheme we have the maximum partitions:
|
||||
# FSBL1 + SSBL + SSBL2 + TEEH + TEED + TEEX + Multivolume UBI = NAND size
|
||||
@@ -116,35 +105,38 @@ BOOTFS_PARTITION_SIZE = "65536"
|
||||
# rootfs < 1016.5MiB - (256KiB + 256KiB + 64MiB + 16MiB + 128MiB + 53360KiB + 4 * 9 * 256KiB)
|
||||
# rootfs < 746.8MiB
|
||||
# Proposed value for rootfs is 746MiB
|
||||
ROOTFS_PARTITION_SIZE = "763904"
|
||||
# Define max size for ROOTFS image being built to this value
|
||||
IMAGE_ROOTFS_MAXSIZE ?= "763904"
|
||||
# And configure the ROOTFS_PARTITION_SIZE variable accordingly
|
||||
ROOTFS_PARTITION_SIZE ?= "${IMAGE_ROOTFS_MAXSIZE}"
|
||||
# Proposed value for userfs is 128MB (4*32MB)
|
||||
USERFS_PARTITION_SIZE = "131072"
|
||||
USERFS_PARTITION_SIZE ?= "131072"
|
||||
# Proposed value for vendorfs is 16MB
|
||||
VENDORFS_PARTITION_SIZE = "16384"
|
||||
VENDORFS_PARTITION_SIZE ?= "16384"
|
||||
|
||||
# Define the max size for ROOTFS image being built
|
||||
# On other image partition such settings is directly done in image recipe
|
||||
IMAGE_ROOTFS_MAXSIZE ?= "${ROOTFS_PARTITION_SIZE}"
|
||||
# Enable use of extra partition(s)
|
||||
ST_BOOTFS ?= "1"
|
||||
ST_VENDORFS ?= "1"
|
||||
ST_USERFS ?= "1"
|
||||
|
||||
# Partitions configuration
|
||||
PARTITIONS_CONFIG += "${@bb.utils.contains('ST_BOOTFS', '1', 'bootfs', '', d)}"
|
||||
PARTITIONS_CONFIG += "${@bb.utils.contains('ST_VENDORFS', '1', 'vendorfs', '', d)}"
|
||||
PARTITIONS_CONFIG += "rootfs"
|
||||
PARTITIONS_CONFIG += "${@bb.utils.contains('ST_USERFS', '1', 'userfs', '', d)}"
|
||||
|
||||
PARTITIONS_CONFIG[bootfs] ?= "${STM32MP_BOOTFS_IMAGE},${STM32MP_BOOTFS_LABEL},${STM32MP_BOOTFS_MOUNTPOINT},${BOOTFS_PARTITION_SIZE},System"
|
||||
PARTITIONS_CONFIG[vendorfs] ?= "${STM32MP_VENDORFS_IMAGE},${STM32MP_VENDORFS_LABEL},${STM32MP_VENDORFS_MOUNTPOINT},${VENDORFS_PARTITION_SIZE},FileSystem"
|
||||
PARTITIONS_CONFIG[rootfs] ?= "${IMAGE_BASENAME},rootfs,,${ROOTFS_PARTITION_SIZE},FileSystem"
|
||||
PARTITIONS_CONFIG[userfs] ?= "${STM32MP_USERFS_IMAGE},${STM32MP_USERFS_LABEL},${STM32MP_USERFS_MOUNTPOINT},${USERFS_PARTITION_SIZE},FileSystem"
|
||||
|
||||
# UBI Configuration
|
||||
IMAGE_CLASSES += "image_types-stubi"
|
||||
|
||||
# Define specific U-Boot config partition settings
|
||||
STM32MP_UBOOTCONFIG_NAME = "uboot_config"
|
||||
UBOOTCONFIG_PARTITION_SIZE = "256"
|
||||
# Define two empty volumes to manage U-Boot config beginning of multivolume UBIFS
|
||||
STM32MP_UBI_VOLUME_prepend = "uboot_config:256:empty uboot_config_r:256:empty "
|
||||
|
||||
# Define volume list for multivolume UBIFS
|
||||
# We need to have two empty UBI volumes to manage U-Boot config in our multivolume UBI
|
||||
STM32MP_UBI_VOLUME += "${STM32MP_UBOOTCONFIG_NAME}:${UBOOTCONFIG_PARTITION_SIZE}:empty"
|
||||
STM32MP_UBI_VOLUME += "${STM32MP_UBOOTCONFIG_NAME}_r:${UBOOTCONFIG_PARTITION_SIZE}:empty"
|
||||
# Add default partition volumes
|
||||
STM32MP_UBI_VOLUME += "${STM32MP_BOOTFS_IMAGE}-${DISTRO}-${MACHINE}:${BOOTFS_PARTITION_SIZE}"
|
||||
STM32MP_UBI_VOLUME += "${IMAGE_LINK_NAME}:${ROOTFS_PARTITION_SIZE}"
|
||||
STM32MP_UBI_VOLUME += "${@bb.utils.contains('ST_VENDORFS','1','${STM32MP_VENDORFS_IMAGE}-${DISTRO}-${MACHINE}:${VENDORFS_PARTITION_SIZE}','',d)}"
|
||||
STM32MP_UBI_VOLUME += "${STM32MP_USERFS_IMAGE}-${DISTRO}-${MACHINE}:${USERFS_PARTITION_SIZE}"
|
||||
|
||||
# Define UBI volume label for ROOTFS image being built
|
||||
# This is needed to have "generic" kernel command line to mount UBI file system
|
||||
# Define UBI volume label to use in kernel command line to mount UBI file system
|
||||
UBI_VOLNAME ?= "rootfs"
|
||||
|
||||
# Define UBI labels to build
|
||||
@@ -152,7 +144,7 @@ UBI_VOLNAME ?= "rootfs"
|
||||
# nand_<PageSize>_<BlockSize>
|
||||
# nor_<BlockSize>
|
||||
# Like that a same UBI partition can be used for severals NAND/NOR providers
|
||||
MULTIUBI_BUILD_append = " nand_4_256 "
|
||||
MULTIUBI_BUILD += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'nand-4-256', 'nand_4_256', '', d)}"
|
||||
|
||||
# UBI Args for NAND by default on MB1262 (Micron MT29F8G16ABACAH4)
|
||||
# LEB = BLOCK_SIZE - (2 * page size): 256*1024 - (2*4096)
|
||||
@@ -164,6 +156,8 @@ EXTRA_UBIFS_SIZE_nand_4_256 = "2304"
|
||||
# Default FSTYPES requested
|
||||
WKS_IMAGE_FSTYPES ?= ""
|
||||
IMAGE_FSTYPES ?= "${WKS_IMAGE_FSTYPES} tar.xz ext4"
|
||||
# Append ubi FSTYPES to default ones for nand volumes
|
||||
IMAGE_FSTYPES += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'nand-4-256', 'stmultiubi', '', d)}"
|
||||
|
||||
# Define specific EXT4 command line:
|
||||
# - Create minimal inode number (as it is done by default in image_types.bbclass)
|
||||
@@ -173,13 +167,6 @@ IMAGE_FSTYPES ?= "${WKS_IMAGE_FSTYPES} tar.xz ext4"
|
||||
# by U-Boot
|
||||
EXTRA_IMAGECMD_ext4 = "-i 4096 -L ${@d.getVar('IMAGE_NAME_SUFFIX').replace('.', '', 1)[:16]} -O ^metadata_csum,^dir_index"
|
||||
|
||||
# Enable licence summary and configure License content generation
|
||||
ENABLE_IMAGE_LICENSE_SUMMARY = "1"
|
||||
IMAGE_SUMMARY_LIST = "${STM32MP_BOOTFS_IMAGE}"
|
||||
IMAGE_SUMMARY_LIST_append = "${@bb.utils.contains('ST_VENDORFS','1',':${STM32MP_VENDORFS_IMAGE}','',d)}"
|
||||
IMAGE_SUMMARY_LIST_append = ":#IMAGE#"
|
||||
IMAGE_SUMMARY_LIST_append = ":${STM32MP_USERFS_IMAGE}"
|
||||
|
||||
# Allow debug on the platform with gdb and openocd tools
|
||||
EXTRA_IMAGEDEPENDS_append = " \
|
||||
gdb-cross-arm \
|
||||
@@ -204,8 +191,16 @@ ST_TOOLS_FOR_SDK_PERL = " \
|
||||
nativesdk-perl-module-encode \
|
||||
nativesdk-perl-module-encode-mime-header \
|
||||
"
|
||||
|
||||
ST_TOOLS_FOR_SDK_append = " ${ST_TOOLS_FOR_SDK_PERL} "
|
||||
|
||||
# For support of python module for optee-os
|
||||
ST_TOOLS_FOR_SDK_append = " \
|
||||
nativesdk-python3-pyelftools \
|
||||
nativesdk-python3-pycryptodomex \
|
||||
nativesdk-python3-pycrypto \
|
||||
"
|
||||
|
||||
# For support of string convertion (iconv) in SDK
|
||||
ST_TOOLS_FOR_SDK_append = " \
|
||||
nativesdk-glibc-gconv-utf-16 \
|
||||
@@ -216,6 +211,12 @@ ST_TOOLS_FOR_SDK_append = " \
|
||||
nativesdk-wayland \
|
||||
"
|
||||
|
||||
# For Kernel yaml dependency
|
||||
ST_TOOLS_FOR_SDK_remove = " \
|
||||
nativesdk-libyaml \
|
||||
nativesdk-libyaml-dev \
|
||||
"
|
||||
|
||||
# For CMSIS-SVD file parser with GDB
|
||||
ST_TOOLS_FOR_SDK_append = " \
|
||||
nativesdk-svd-tools \
|
||||
@@ -284,21 +285,18 @@ LINUX_A7_EXAMPLES_DT ?= ""
|
||||
# =========================================================================
|
||||
# u-boot
|
||||
# =========================================================================
|
||||
EXTRA_IMAGEDEPENDS += "u-boot-stm32mp"
|
||||
PREFERRED_PROVIDER_u-boot = "u-boot-stm32mp"
|
||||
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-stm32mp"
|
||||
EXTRA_IMAGEDEPENDS += "virtual/bootloader"
|
||||
|
||||
# Define default U-Boot config
|
||||
UBOOT_CONFIG += "${@bb.utils.contains('BOOTSCHEME_LABELS', 'basic', 'basic', '', d)}"
|
||||
UBOOT_CONFIG += "${@bb.utils.contains('BOOTSCHEME_LABELS', 'trusted', 'trusted', '', d)}"
|
||||
UBOOT_CONFIG += "${@bb.utils.contains('BOOTSCHEME_LABELS', 'optee', 'optee', '', d)}"
|
||||
#Add this config until u-boot is able to flash with basic binary
|
||||
UBOOT_CONFIG += "${@bb.utils.contains('BOOTSCHEME_LABELS', 'basic', 'trusted', '', d)}"
|
||||
# The 'basic' config is only available for stm32mp1 machines
|
||||
UBOOT_CONFIG_append_stm32mp1common = " basic "
|
||||
|
||||
# Define u-boot defconfig and binary to use for each UBOOT_CONFIG
|
||||
UBOOT_CONFIG[basic] = "stm32mp15_basic_defconfig,,u-boot.img"
|
||||
UBOOT_CONFIG[trusted] = "stm32mp15_trusted_defconfig,,u-boot.stm32"
|
||||
UBOOT_CONFIG[optee] = "stm32mp15_optee_defconfig,,u-boot.stm32"
|
||||
UBOOT_CONFIG[optee] = "stm32mp15_trusted_defconfig,,u-boot.stm32"
|
||||
|
||||
# List of U-Boot device tree to use
|
||||
UBOOT_DEVICETREE = "${STM32MP_DEVICETREE}"
|
||||
@@ -306,27 +304,27 @@ UBOOT_DEVICETREE = "${STM32MP_DEVICETREE}"
|
||||
# Define u-boot splashscreen file naming
|
||||
UBOOT_SPLASH_IMAGE = "splash"
|
||||
|
||||
# =========================================================================
|
||||
# tf-a
|
||||
# =========================================================================
|
||||
# Finally we must compile tf-a in all cases as we need trusted binary to boot
|
||||
#EXTRA_IMAGEDEPENDS += "${@bb.utils.contains_any('BOOTSCHEME_LABELS', 'optee trusted', 'tf-a-stm32mp', '', d)}"
|
||||
EXTRA_IMAGEDEPENDS += "tf-a-stm32mp"
|
||||
PREFERRED_PROVIDER_u-boot-fw-utils_stm32mp1common = "libubootenv"
|
||||
|
||||
# Define default TF-A config
|
||||
TF_A_CONFIG += "${@bb.utils.contains('BOOTSCHEME_LABELS', 'trusted', 'trusted', '', d)}"
|
||||
TF_A_CONFIG += "${@bb.utils.contains('BOOTSCHEME_LABELS', 'optee', 'optee', '', d)}"
|
||||
MACHINE_EXTRA_RRECOMMENDS_append_stm32mp1common = " \
|
||||
u-boot-fw-config-stm32mp \
|
||||
"
|
||||
|
||||
#Add this config until tf-a is able to flash with basic binary
|
||||
TF_A_CONFIG += "${@bb.utils.contains('BOOTSCHEME_LABELS', 'basic', 'trusted', '', d)}"
|
||||
#Add this config until optee is able to flash
|
||||
TF_A_CONFIG += "${@bb.utils.contains('BOOTSCHEME_LABELS', 'optee', 'trusted', '', d)}"
|
||||
# =========================================================================
|
||||
# trusted-firmware-a
|
||||
# =========================================================================
|
||||
# Add trusted-firmware-a serialboot to allow images programming
|
||||
EXTRA_IMAGEDEPENDS += "virtual/trusted-firmware-a-serialboot"
|
||||
# Add optionnaly trusted-firmware-a
|
||||
EXTRA_IMAGEDEPENDS += "${@bb.utils.contains_any('BOOTSCHEME_LABELS', 'optee trusted', 'virtual/trusted-firmware-a', '', d)}"
|
||||
|
||||
# Define SECURE_PAYLOAD config to set for each TF_A_CONFIG
|
||||
TF_A_CONFIG_optee = "AARCH32_SP=optee STM32MP_BOOT_ONLY=1"
|
||||
TF_A_CONFIG_trusted = "AARCH32_SP=sp_min"
|
||||
TF_A_CONFIG_serialboot = "AARCH32_SP=sp_min"
|
||||
TF_A_CONFIG_optee = "AARCH32_SP=optee"
|
||||
TF_A_CONFIG_trusted = "AARCH32_SP=sp_min"
|
||||
|
||||
# Manage proper dependency
|
||||
# Manage proper update for TF_A_CONFIG_* var
|
||||
tfaconfig_env[vardeps] += "${@bb.utils.contains('TF_A_CONFIG', 'serialboot', 'TF_A_CONFIG_serialboot', '', d)}"
|
||||
tfaconfig_env[vardeps] += "${@bb.utils.contains('TF_A_CONFIG', 'optee', 'TF_A_CONFIG_optee', '', d)}"
|
||||
tfaconfig_env[vardeps] += "${@bb.utils.contains('TF_A_CONFIG', 'trusted', 'TF_A_CONFIG_trusted', '', d)}"
|
||||
|
||||
@@ -339,16 +337,6 @@ TF_A_DEVICETREE = "${STM32MP_DEVICETREE}"
|
||||
# Map OPTEE configuration to device tree list
|
||||
OPTEE_CONF = "${STM32MP_DEVICETREE}"
|
||||
|
||||
# =========================================================================
|
||||
# flashlayout
|
||||
# =========================================================================
|
||||
# Add specific scheme to provide flashlayout that will erase all storage devices
|
||||
FLASHLAYOUT_BOOTSCHEME_LABELS += "deleteall"
|
||||
# Add specific scheme to provide flashlayout that will make rootfs extensible to
|
||||
# remaining device free space
|
||||
# NOTE: this scheme is ONLY compatible with disco board and trusted bootscheme
|
||||
FLASHLAYOUT_BOOTSCHEME_LABELS += "${@bb.utils.contains('BOOTSCHEME_LABELS', 'trusted', 'extensible', '', d)}"
|
||||
|
||||
# =========================================================================
|
||||
# Xserver
|
||||
# =========================================================================
|
||||
@@ -369,7 +357,6 @@ ELF_DEBUG_ENABLE = "1"
|
||||
# =========================================================================
|
||||
PREFERRED_PROVIDER_sysdig = "sysdig-stm32mp"
|
||||
|
||||
|
||||
# =========================================================================
|
||||
# M4 copro
|
||||
# =========================================================================
|
||||
@@ -389,4 +376,4 @@ M4_PACKAGE_4USERFS = "${@bb.utils.contains('ST_USERFS','1','1','0',d)}"
|
||||
# =========================================================================
|
||||
# Variable for using vendor directory instead of usr
|
||||
GCNANO_USERLAND_USE_VENDOR_DIR = "${@bb.utils.contains('ST_VENDORFS','1','1','0',d)}"
|
||||
GCNANO_USERLAND_VENDOR_DIR = "${STM32MP_VENDORFS_MOUNTPOINT_IMAGE}"
|
||||
GCNANO_USERLAND_VENDOR_DIR = "${STM32MP_VENDORFS_MOUNTPOINT}"
|
||||
@@ -1,275 +1,94 @@
|
||||
#@DESCRIPTION: STM32MP machine extlinux file configuration
|
||||
|
||||
# Set generic extlinux bootdevice variable to ease definition
|
||||
EXTLINUX_BOOTDEVICE_EMMC = "mmc1"
|
||||
EXTLINUX_BOOTDEVICE_SDCARD = "mmc0"
|
||||
EXTLINUX_BOOTDEVICE_NORSDCARD = "nor0"
|
||||
EXTLINUX_BOOTDEVICE_NOREMMC = "nor0-mmc1"
|
||||
EXTLINUX_BOOTDEVICE_NAND = "nand0"
|
||||
|
||||
# Set generic extlinux root variable to ease definition
|
||||
EXTLINUX_ROOT_EMMC = "${@bb.utils.contains('ST_VENDORFS','1','root=/dev/mmcblk1p4','root=/dev/mmcblk1p3',d)}"
|
||||
EXTLINUX_ROOT_EMMC_OPTEE = "${@bb.utils.contains('ST_VENDORFS','1','root=/dev/mmcblk1p7','root=/dev/mmcblk1p6',d)}"
|
||||
EXTLINUX_ROOT_NAND = "ubi.mtd=UBI rootfstype=ubifs root=ubi0:rootfs"
|
||||
EXTLINUX_ROOT_NOREMMC = "${@bb.utils.contains('ST_VENDORFS','1','root=/dev/mmcblk1p3','root=/dev/mmcblk1p2',d)}"
|
||||
EXTLINUX_ROOT_NORSDCARD = "${@bb.utils.contains('ST_VENDORFS','1','root=/dev/mmcblk0p3','root=/dev/mmcblk0p2',d)}"
|
||||
EXTLINUX_ROOT_SDCARD = "${@bb.utils.contains('ST_VENDORFS','1','root=/dev/mmcblk0p6','root=/dev/mmcblk0p5',d)}"
|
||||
EXTLINUX_ROOT_SDCARD_OPTEE = "${@bb.utils.contains('ST_VENDORFS','1','root=/dev/mmcblk0p9','root=/dev/mmcblk0p8',d)}"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# REMINDER: how 'exlinux.conf' files are built
|
||||
#
|
||||
# The 'extlinux.conf' files are generated under ${UBOOT_EXTLINUX_INSTALL_DIR}:
|
||||
# ${UBOOT_EXTLINUX_INSTALL_DIR}/${UBOOT_EXTLINUX_BOOTPREFIXES_${UBOOT_EXTLINUX_TARGETS}[0]}extlinux/extlinux.conf
|
||||
# ${UBOOT_EXTLINUX_INSTALL_DIR}/${UBOOT_EXTLINUX_BOOTPREFIXES_${UBOOT_EXTLINUX_TARGETS}[1]}extlinux/extlinux.conf
|
||||
# ...
|
||||
#
|
||||
# File content (${UBOOT_EXTLINUX_BOOTPREFIXES_${UBOOT_EXTLINUX_TARGETS}[0]}extlinux/exlinux.conf):
|
||||
# menu title Select the boot mode
|
||||
# TIMEOUT ${UBOOT_EXTLINUX_TIMEOUT}
|
||||
# DEFAULT ${UBOOT_EXTLINUX_DEFAULT_LABEL_${UBOOT_EXTLINUX_TARGETS}[0]}
|
||||
# LABEL ${UBOOT_EXTLINUX_LABELS_${UBOOT_EXTLINUX_TARGETS}[0]}[0]
|
||||
# KERNEL ${UBOOT_EXTLINUX_KERNEL} < OR OVERRIDE WITH : ${UBOOT_EXTLINUX_KERNEL_${IMAGE_UBOOT_EXTLINUX_LABELS}[0]} >
|
||||
# FDT ${UBOOT_EXTLINUX_FDT} < OR OVERRIDE WITH : ${UBOOT_EXTLINUX_FDT_${IMAGE_UBOOT_EXTLINUX_LABELS}[0]} >
|
||||
# APPEND ${UBOOT_EXTLINUX_ROOT} < OR OVERRIDE WITH : ${UBOOT_EXTLINUX_ROOT_${IMAGE_UBOOT_EXTLINUX_LABELS}[0]} >
|
||||
# LABEL ${UBOOT_EXTLINUX_LABELS_${UBOOT_EXTLINUX_TARGETS}[0]}[1]
|
||||
# KERNEL ${UBOOT_EXTLINUX_KERNEL} < OR OVERRIDE WITH : ${UBOOT_EXTLINUX_KERNEL_${IMAGE_UBOOT_EXTLINUX_LABELS}[1]} >
|
||||
# FDT ${UBOOT_EXTLINUX_FDT} < OR OVERRIDE WITH : ${UBOOT_EXTLINUX_FDT_${IMAGE_UBOOT_EXTLINUX_LABELS}[1]} >
|
||||
# APPEND ${UBOOT_EXTLINUX_ROOT} < OR OVERRIDE WITH : ${UBOOT_EXTLINUX_ROOT_${IMAGE_UBOOT_EXTLINUX_LABELS}[1]} >
|
||||
#
|
||||
# File content (${UBOOT_EXTLINUX_BOOTPREFIXES_${UBOOT_EXTLINUX_TARGETS}[0]}extlinux/exlinux.conf):
|
||||
# menu title Select the boot mode
|
||||
# TIMEOUT ${UBOOT_EXTLINUX_TIMEOUT}
|
||||
# DEFAULT ${UBOOT_EXTLINUX_DEFAULT_LABEL_${UBOOT_EXTLINUX_TARGETS}[1]}
|
||||
# LABEL ${UBOOT_EXTLINUX_LABELS_${UBOOT_EXTLINUX_TARGETS}[1]}[0]
|
||||
# KERNEL ${UBOOT_EXTLINUX_KERNEL} < OR OVERRIDE WITH : ${UBOOT_EXTLINUX_KERNEL_${IMAGE_UBOOT_EXTLINUX_LABELS}[0]} >
|
||||
# FDT ${UBOOT_EXTLINUX_FDT} < OR OVERRIDE WITH : ${UBOOT_EXTLINUX_FDT_${IMAGE_UBOOT_EXTLINUX_LABELS}[0]} >
|
||||
# APPEND ${UBOOT_EXTLINUX_ROOT} < OR OVERRIDE WITH : ${UBOOT_EXTLINUX_ROOT_${IMAGE_UBOOT_EXTLINUX_LABELS}[0]} >
|
||||
# LABEL ${UBOOT_EXTLINUX_LABELS_${UBOOT_EXTLINUX_TARGETS}[1]}[1]
|
||||
# KERNEL ${UBOOT_EXTLINUX_KERNEL} < OR OVERRIDE WITH : ${UBOOT_EXTLINUX_KERNEL_${IMAGE_UBOOT_EXTLINUX_LABELS}[1]} >
|
||||
# FDT ${UBOOT_EXTLINUX_FDT} < OR OVERRIDE WITH : ${UBOOT_EXTLINUX_FDT_${IMAGE_UBOOT_EXTLINUX_LABELS}[1]} >
|
||||
# APPEND ${UBOOT_EXTLINUX_ROOT} < OR OVERRIDE WITH : ${UBOOT_EXTLINUX_ROOT_${IMAGE_UBOOT_EXTLINUX_LABELS}[1]} >
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
# Init the list of targets per device config
|
||||
UBOOT_EXTLINUX_TARGETS_emmc ?= ""
|
||||
UBOOT_EXTLINUX_TARGETS_emmc-optee ?= ""
|
||||
UBOOT_EXTLINUX_TARGETS_nand ?= ""
|
||||
UBOOT_EXTLINUX_TARGETS_nor-emmc ?= ""
|
||||
UBOOT_EXTLINUX_TARGETS_nor-sdcard ?= ""
|
||||
UBOOT_EXTLINUX_TARGETS_sdcard ?= ""
|
||||
UBOOT_EXTLINUX_TARGETS_sdcard-optee ?= ""
|
||||
# Configure bootscheme diversity for emmc and sdcard
|
||||
EXTLINUX_TARGETS_EMMC += "${@bb.utils.contains_any('BOOTSCHEME_LABELS', [ 'basic', 'trusted' ], '${UBOOT_EXTLINUX_TARGETS_emmc}', '', d)}"
|
||||
EXTLINUX_TARGETS_EMMC += "${@bb.utils.contains('BOOTSCHEME_LABELS', 'optee', '${UBOOT_EXTLINUX_TARGETS_emmc-optee}', '', d)}"
|
||||
EXTLINUX_TARGETS_SDCARD += "${@bb.utils.contains_any('BOOTSCHEME_LABELS', [ 'basic', 'trusted' ], '${UBOOT_EXTLINUX_TARGETS_sdcard}', '', d)}"
|
||||
EXTLINUX_TARGETS_SDCARD += "${@bb.utils.contains('BOOTSCHEME_LABELS', 'optee', '${UBOOT_EXTLINUX_TARGETS_sdcard-optee}', '', d)}"
|
||||
# Define the extlinux targets to use
|
||||
UBOOT_EXTLINUX_TARGETS += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'emmc', '${EXTLINUX_TARGETS_EMMC}', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS += "${@bb.utils.contains_any('BOOTDEVICE_LABELS', [ 'nand-4-256', 'nor-nand-4-256' ], '${UBOOT_EXTLINUX_TARGETS_nand}', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'nor-emmc', '${UBOOT_EXTLINUX_TARGETS_nor-emmc}', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'nor-sdcard', '${UBOOT_EXTLINUX_TARGETS_nor-sdcard}', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'sdcard', '${EXTLINUX_TARGETS_SDCARD}', '', d)}"
|
||||
|
||||
# Set extlinux console for stm32mp machine
|
||||
# Define extlinux console for stm32mp machine
|
||||
UBOOT_EXTLINUX_CONSOLE = "console=${@d.getVar('SERIAL_CONSOLE').split()[1]},${@d.getVar('SERIAL_CONSOLE').split()[0]}"
|
||||
# Define default FDTDIR for all configs
|
||||
UBOOT_EXTLINUX_FDTDIR = "/"
|
||||
# Define default MENU DESCRIPTION for all configs
|
||||
UBOOT_EXTLINUX_MENU_DESCRIPTION = "OpenSTLinux"
|
||||
# Define default boot config for all config
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL ?= "OpenSTLinux"
|
||||
# Define default INITRD for all configs
|
||||
INITRD_SHORTNAME ??= ""
|
||||
UBOOT_EXTLINUX_INITRD ?= "${@bb.utils.contains('COMBINED_FEATURES', 'autoresize', '/${INITRD_SHORTNAME}', '', d)}"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# DK1 configuration
|
||||
# Configurations
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define additional targets to use
|
||||
UBOOT_EXTLINUX_TARGETS_sdcard += "${@bb.utils.contains('STM32MP_DEVICETREE', 'stm32mp157a-dk1', 'mp157a-dk1_sdcard', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS_sdcard-optee += "${@bb.utils.contains('STM32MP_DEVICETREE', 'stm32mp157a-dk1', 'mp157a-dk1_sdcard-optee', '', d)}"
|
||||
# Define bootprefix for each target
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_mp157a-dk1_sdcard = "${EXTLINUX_BOOTDEVICE_SDCARD}_stm32mp157a-dk1_"
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_mp157a-dk1_sdcard-optee = "${EXTLINUX_BOOTDEVICE_SDCARD}_stm32mp157a-dk1-optee_"
|
||||
UBOOT_EXTLINUX_TARGETS += "${@bb.utils.contains_any('BOOTDEVICE_LABELS', [ 'sdcard', 'nor-sdcard' ], 'target-sdcard', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'emmc', 'target-emmc', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS += "${@bb.utils.contains_any('BOOTDEVICE_LABELS', [ 'nand-4-256', 'nor-nand-4-256' ], 'target-nand', '', d)}"
|
||||
# Define labels for each target
|
||||
UBOOT_EXTLINUX_LABELS_mp157a-dk1_sdcard = "stm32mp157a-dk1-sdcard"
|
||||
UBOOT_EXTLINUX_LABELS_mp157a-dk1_sdcard-optee = "stm32mp157a-dk1-sdcard-optee"
|
||||
# Define default boot config for each target
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL_mp157a-dk1_sdcard ?= "stm32mp157a-dk1-sdcard"
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL_mp157a-dk1_sdcard-optee ?= "stm32mp157a-dk1-sdcard-optee"
|
||||
# Define FDT overrides for all labels
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157a-dk1-sdcard = "/stm32mp157a-dk1.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157a-dk1-sdcard-optee = "/stm32mp157a-dk1.dtb"
|
||||
# Define ROOT overrides for all labels
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157a-dk1-sdcard = "${EXTLINUX_ROOT_SDCARD}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157a-dk1-sdcard-optee = "${EXTLINUX_ROOT_SDCARD_OPTEE}"
|
||||
# (mandatory to allow specific var override if needed)
|
||||
UBOOT_EXTLINUX_LABELS_target-sdcard += "rootfs"
|
||||
UBOOT_EXTLINUX_LABELS_target-emmc += "rootfs"
|
||||
UBOOT_EXTLINUX_LABELS_target-nand += "rootfs"
|
||||
# Define specific bootprefix for each target
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_target-sdcard = "${DEVICE_SDCARD}_"
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_target-emmc = "${DEVICE_EMMC}_"
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_target-nand = "${DEVICE_NAND}_"
|
||||
# Define ROOT overrides for each target
|
||||
UBOOT_EXTLINUX_ROOT_target-nand = "ubi.mtd=UBI rootfstype=ubifs root=ubi0:rootfs"
|
||||
UBOOT_EXTLINUX_ROOT_target-sdcard = "root=PARTUUID=${DEVICE_PARTUUID_ROOTFS_SDCARD}"
|
||||
UBOOT_EXTLINUX_ROOT_target-emmc = "root=PARTUUID=${DEVICE_PARTUUID_ROOTFS_EMMC}"
|
||||
# Define INITRD overrides for nand target
|
||||
UBOOT_EXTLINUX_INITRD_target-nand = ""
|
||||
# -----------------------------------------------------------------------------
|
||||
# Append specific examples configs
|
||||
# -----------------------------------------------------------------------------
|
||||
# Enable UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG var that allows to configure
|
||||
# additional target:
|
||||
# UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG = "extra-target"
|
||||
# Then define new label(s) to append to the label list from current target
|
||||
# UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG[extra-target] = "newlabel1 newlabel2"
|
||||
# This will create new 'extlinux.conf' file with name 'extra-target_extlinux.conf'
|
||||
# that will use UBOOT_EXTLINUX_LABELS label list defined for current target plus
|
||||
# the 'newlabel1' and 'newlabel2' labels.
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define additional extra targets to consider
|
||||
UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG_target-sdcard += "${STM32MP_DT_FILES_DK}"
|
||||
UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG_target-sdcard += "${STM32MP_DT_FILES_ED}"
|
||||
UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG_target-sdcard += "${STM32MP_DT_FILES_EV}"
|
||||
UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG_target-emmc += "${STM32MP_DT_FILES_ED}"
|
||||
UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG_target-emmc += "${STM32MP_DT_FILES_EV}"
|
||||
UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG_target-nand += "${STM32MP_DT_FILES_ED}"
|
||||
UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG_target-nand += "${STM32MP_DT_FILES_EV}"
|
||||
# Define extra label configuration
|
||||
UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG[stm32mp157c-dk2] += "stm32mp157c-dk2-a7"
|
||||
UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG[stm32mp157c-dk2] += "stm32mp157c-dk2-m4"
|
||||
UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG[stm32mp157c-ev1] += "stm32mp157c-ev1-a7"
|
||||
UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG[stm32mp157c-ev1] += "stm32mp157c-ev1-m4"
|
||||
|
||||
UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG[stm32mp157f-dk2] += "stm32mp157f-dk2-a7"
|
||||
UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG[stm32mp157f-dk2] += "stm32mp157f-dk2-m4"
|
||||
UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG[stm32mp157f-ev1] += "stm32mp157f-ev1-a7"
|
||||
UBOOT_EXTLINUX_TARGETS_EXTRA_CONFIG[stm32mp157f-ev1] += "stm32mp157f-ev1-m4"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# DK2 configuration
|
||||
# Configure A7 examples labels
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define additional targets to use
|
||||
UBOOT_EXTLINUX_TARGETS_sdcard += "${@bb.utils.contains('STM32MP_DEVICETREE', 'stm32mp157c-dk2', 'mp157c-dk2_sdcard', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS_sdcard-optee += "${@bb.utils.contains('STM32MP_DEVICETREE', 'stm32mp157c-dk2', 'mp157c-dk2_sdcard-optee', '', d)}"
|
||||
# Define bootprefix for each target
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_mp157c-dk2_sdcard = "${EXTLINUX_BOOTDEVICE_SDCARD}_stm32mp157c-dk2_"
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_mp157c-dk2_sdcard-optee = "${EXTLINUX_BOOTDEVICE_SDCARD}_stm32mp157c-dk2-optee_"
|
||||
# Define labels for each target
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-dk2_sdcard = "stm32mp157c-dk2-sdcard"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-dk2_sdcard-optee = "stm32mp157c-dk2-sdcard-optee"
|
||||
# Define default boot config for each target
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-dk2_sdcard ?= "stm32mp157c-dk2-sdcard"
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-dk2_sdcard-optee ?= "stm32mp157c-dk2-sdcard-optee"
|
||||
# Define FDT overrides for all labels
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-dk2-sdcard = "/stm32mp157c-dk2.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-dk2-sdcard-optee = "/stm32mp157c-dk2.dtb"
|
||||
# Define ROOT overrides for all labels
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-dk2-sdcard = "${EXTLINUX_ROOT_SDCARD}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-dk2-sdcard-optee = "${EXTLINUX_ROOT_SDCARD_OPTEE}"
|
||||
# -----------------------------------------------------------------------------
|
||||
# Append A7 examples labels for each target
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-dk2_sdcard += "stm32mp157c-dk2-a7-examples-sdcard"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-dk2_sdcard-optee += "stm32mp157c-dk2-a7-examples-sdcard-optee"
|
||||
# Define FDT overrides for A7 labels
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-dk2-a7-examples-sdcard = "/stm32mp157c-dk2-a7-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-dk2-a7-examples-sdcard-optee = "/stm32mp157c-dk2-a7-examples.dtb"
|
||||
# Define ROOT overrides for A7 labels
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-dk2-a7-examples-sdcard = "${EXTLINUX_ROOT_SDCARD}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-dk2-a7-examples-sdcard-optee = "${EXTLINUX_ROOT_SDCARD_OPTEE}"
|
||||
# -----------------------------------------------------------------------------
|
||||
# Append M4 examples labels for each target
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-dk2_sdcard += "stm32mp157c-dk2-m4-examples-sdcard"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-dk2_sdcard-optee += "stm32mp157c-dk2-m4-examples-sdcard-optee"
|
||||
# Define FDT overrides for M4 labels
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-dk2-m4-examples-sdcard = "/stm32mp157c-dk2-m4-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-dk2-m4-examples-sdcard-optee = "/stm32mp157c-dk2-m4-examples.dtb"
|
||||
# Define ROOT overrides for M4 labels
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-dk2-m4-examples-sdcard = "${EXTLINUX_ROOT_SDCARD}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-dk2-m4-examples-sdcard-optee = "${EXTLINUX_ROOT_SDCARD_OPTEE}"
|
||||
# Define MENU DESCRIPTION overrides for new A7 labels
|
||||
UBOOT_EXTLINUX_MENU_DESCRIPTION_stm32mp157c-dk2-a7 = "stm32mp157c-dk2-a7-examples"
|
||||
UBOOT_EXTLINUX_MENU_DESCRIPTION_stm32mp157c-ev1-a7 = "stm32mp157c-ev1-a7-examples"
|
||||
UBOOT_EXTLINUX_MENU_DESCRIPTION_stm32mp157f-dk2-a7 = "stm32mp157f-dk2-a7-examples"
|
||||
UBOOT_EXTLINUX_MENU_DESCRIPTION_stm32mp157f-ev1-a7 = "stm32mp157f-ev1-a7-examples"
|
||||
# Define FDT overrides for new A7 labels
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-dk2-a7 = "/stm32mp157c-dk2-a7-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-a7 = "/stm32mp157c-ev1-a7-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157f-dk2-a7 = "/stm32mp157f-dk2-a7-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157f-ev1-a7 = "/stm32mp157f-ev1-a7-examples.dtb"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# ED1 configuration
|
||||
# Configure M4 examples labels
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define additional targets to use
|
||||
UBOOT_EXTLINUX_TARGETS_emmc += "${@bb.utils.contains('STM32MP_DEVICETREE', 'stm32mp157c-ed1', 'mp157c-ed1_emmc', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS_emmc-optee += "${@bb.utils.contains('STM32MP_DEVICETREE', 'stm32mp157c-ed1', 'mp157c-ed1_emmc-optee', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS_sdcard += "${@bb.utils.contains('STM32MP_DEVICETREE', 'stm32mp157c-ed1', 'mp157c-ed1_sdcard', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS_sdcard-optee += "${@bb.utils.contains('STM32MP_DEVICETREE', 'stm32mp157c-ed1', 'mp157c-ed1_sdcard-optee', '', d)}"
|
||||
# Define bootprefix for each target
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_mp157c-ed1_emmc = "${EXTLINUX_BOOTDEVICE_EMMC}_stm32mp157c-ed1_"
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_mp157c-ed1_emmc-optee = "${EXTLINUX_BOOTDEVICE_EMMC}_stm32mp157c-ed1-optee_"
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_mp157c-ed1_sdcard = "${EXTLINUX_BOOTDEVICE_SDCARD}_stm32mp157c-ed1_"
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_mp157c-ed1_sdcard-optee = "${EXTLINUX_BOOTDEVICE_SDCARD}_stm32mp157c-ed1-optee_"
|
||||
# Define labels for each target
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ed1_emmc = "stm32mp157c-ed1-emmc"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ed1_emmc-optee = "stm32mp157c-ed1-emmc-optee"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ed1_sdcard = "stm32mp157c-ed1-sdcard"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ed1_sdcard-optee = "stm32mp157c-ed1-sdcard-optee"
|
||||
# Define default boot config for each target
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-ed1_emmc ?= "stm32mp157c-ed1-emmc"
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-ed1_emmc-optee ?= "stm32mp157c-ed1-emmc-optee"
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-ed1_sdcard ?= "stm32mp157c-ed1-sdcard"
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-ed1_sdcard-optee ?= "stm32mp157c-ed1-sdcard-optee"
|
||||
# Define FDT overrides for all labels
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ed1-emmc = "/stm32mp157c-ed1.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ed1-emmc-optee = "/stm32mp157c-ed1.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ed1-sdcard = "/stm32mp157c-ed1.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ed1-sdcard-optee = "/stm32mp157c-ed1.dtb"
|
||||
# Define ROOT overrides for all labels
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ed1-emmc = "${EXTLINUX_ROOT_EMMC}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ed1-emmc-optee = "${EXTLINUX_ROOT_EMMC_OPTEE}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ed1-sdcard = "${EXTLINUX_ROOT_SDCARD}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ed1-sdcard-optee = "${EXTLINUX_ROOT_SDCARD_OPTEE}"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# EV1 configuration
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define additional targets to use
|
||||
UBOOT_EXTLINUX_TARGETS_emmc += "${@bb.utils.contains('STM32MP_DEVICETREE', 'stm32mp157c-ev1', 'mp157c-ev1_emmc', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS_emmc-optee += "${@bb.utils.contains('STM32MP_DEVICETREE', 'stm32mp157c-ev1', 'mp157c-ev1_emmc-optee', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS_nand += "${@bb.utils.contains('STM32MP_DEVICETREE', 'stm32mp157c-ev1', 'mp157c-ev1_nand', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS_nor-sdcard += "${@bb.utils.contains('STM32MP_DEVICETREE', 'stm32mp157c-ev1', 'mp157c-ev1_nor-sdcard', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS_nor-emmc += "${@bb.utils.contains('STM32MP_DEVICETREE', 'stm32mp157c-ev1', 'mp157c-ev1_nor-emmc', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS_sdcard += "${@bb.utils.contains('STM32MP_DEVICETREE', 'stm32mp157c-ev1', 'mp157c-ev1_sdcard', '', d)}"
|
||||
UBOOT_EXTLINUX_TARGETS_sdcard-optee += "${@bb.utils.contains('STM32MP_DEVICETREE', 'stm32mp157c-ev1', 'mp157c-ev1_sdcard-optee', '', d)}"
|
||||
# Define bootprefix for each target
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_mp157c-ev1_emmc = "${EXTLINUX_BOOTDEVICE_EMMC}_stm32mp157c-ev1_"
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_mp157c-ev1_emmc-optee = "${EXTLINUX_BOOTDEVICE_EMMC}_stm32mp157c-ev1-optee_"
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_mp157c-ev1_nand = "${EXTLINUX_BOOTDEVICE_NAND}_stm32mp157c-ev1_"
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_mp157c-ev1_nor-sdcard = "${EXTLINUX_BOOTDEVICE_NORSDCARD}_stm32mp157c-ev1_"
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_mp157c-ev1_nor-emmc = "${EXTLINUX_BOOTDEVICE_NOREMMC}_stm32mp157c-ev1_"
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_mp157c-ev1_sdcard = "${EXTLINUX_BOOTDEVICE_SDCARD}_stm32mp157c-ev1_"
|
||||
UBOOT_EXTLINUX_BOOTPREFIXES_mp157c-ev1_sdcard-optee = "${EXTLINUX_BOOTDEVICE_SDCARD}_stm32mp157c-ev1-optee_"
|
||||
# Define labels for each target
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_emmc = "stm32mp157c-ev1-emmc"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_emmc-optee = "stm32mp157c-ev1-emmc-optee"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_nand = "stm32mp157c-ev1-nand"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_nor-sdcard = "stm32mp157c-ev1-nor-sdcard"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_nor-emmc = "stm32mp157c-ev1-nor-emmc"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_sdcard = "stm32mp157c-ev1-sdcard"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_sdcard-optee = "stm32mp157c-ev1-sdcard-optee"
|
||||
# Define default boot config for each target
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-ev1_emmc ?= "stm32mp157c-ev1-emmc"
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-ev1_emmc-optee ?= "stm32mp157c-ev1-emmc-optee"
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-ev1_nand ?= "stm32mp157c-ev1-nand"
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-ev1_nor-sdcard ?= "stm32mp157c-ev1-nor-sdcard"
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-ev1_nor-emmc ?= "stm32mp157c-ev1-nor-emmc"
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-ev1_sdcard ?= "stm32mp157c-ev1-sdcard"
|
||||
UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-ev1_sdcard-optee ?= "stm32mp157c-ev1-sdcard-optee"
|
||||
# Define FDT overrides for all labels
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-emmc = "/stm32mp157c-ev1.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-emmc-optee = "/stm32mp157c-ev1.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-nand = "/stm32mp157c-ev1.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-nor-sdcard = "/stm32mp157c-ev1.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-nor-emmc = "/stm32mp157c-ev1.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-sdcard = "/stm32mp157c-ev1.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-sdcard-optee = "/stm32mp157c-ev1.dtb"
|
||||
# Define ROOT overrides for all labels
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-emmc = "${EXTLINUX_ROOT_EMMC}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-emmc-optee = "${EXTLINUX_ROOT_EMMC_OPTEE}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-nand = "${EXTLINUX_ROOT_NAND}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-nor-sdcard = "${EXTLINUX_ROOT_NORSDCARD}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-nor-emmc = "${EXTLINUX_ROOT_NOREMMC}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-sdcard = "${EXTLINUX_ROOT_SDCARD}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-sdcard-optee = "${EXTLINUX_ROOT_SDCARD_OPTEE}"
|
||||
# -----------------------------------------------------------------------------
|
||||
# Append A7 examples labels for each target
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_emmc += "stm32mp157c-ev1-a7-examples-emmc"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_emmc-optee += "stm32mp157c-ev1-a7-examples-emmc-optee"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_nand += "stm32mp157c-ev1-a7-examples-nand"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_nor-sdcard += "stm32mp157c-ev1-a7-examples-nor-sdcard"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_nor-emmc += "stm32mp157c-ev1-a7-examples-nor-emmc"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_sdcard += "stm32mp157c-ev1-a7-examples-sdcard"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_sdcard-optee += "stm32mp157c-ev1-a7-examples-sdcard-optee"
|
||||
# Define FDT overrides for A7 labels
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-a7-examples-emmc = "/stm32mp157c-ev1-a7-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-a7-examples-emmc-optee = "/stm32mp157c-ev1-a7-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-a7-examples-nand = "/stm32mp157c-ev1-a7-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-a7-examples-nor-sdcard = "/stm32mp157c-ev1-a7-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-a7-examples-nor-emmc = "/stm32mp157c-ev1-a7-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-a7-examples-sdcard = "/stm32mp157c-ev1-a7-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-a7-examples-sdcard-optee = "/stm32mp157c-ev1-a7-examples.dtb"
|
||||
# Define ROOT overrides for A7 labels
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-a7-examples-emmc = "${EXTLINUX_ROOT_EMMC}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-a7-examples-emmc-optee = "${EXTLINUX_ROOT_EMMC_OPTEE}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-a7-examples-nand = "${EXTLINUX_ROOT_NAND}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-a7-examples-nor-sdcard = "${EXTLINUX_ROOT_NORSDCARD}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-a7-examples-nor-emmc = "${EXTLINUX_ROOT_NOREMMC}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-a7-examples-sdcard = "${EXTLINUX_ROOT_SDCARD}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-a7-examples-sdcard-optee = "${EXTLINUX_ROOT_SDCARD_OPTEE}"
|
||||
# -----------------------------------------------------------------------------
|
||||
# Append M4 examples labels for each target
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_emmc += "stm32mp157c-ev1-m4-examples-emmc"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_emmc-optee += "stm32mp157c-ev1-m4-examples-emmc-optee"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_nand += "stm32mp157c-ev1-m4-examples-nand"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_nor-sdcard += "stm32mp157c-ev1-m4-examples-nor-sdcard"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_nor-emmc += "stm32mp157c-ev1-m4-examples-nor-emmc"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_sdcard += "stm32mp157c-ev1-m4-examples-sdcard"
|
||||
UBOOT_EXTLINUX_LABELS_mp157c-ev1_sdcard-optee += "stm32mp157c-ev1-m4-examples-sdcard-optee"
|
||||
# Define FDT overrides for M4 labels
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-m4-examples-emmc = "/stm32mp157c-ev1-m4-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-m4-examples-emmc-optee = "/stm32mp157c-ev1-m4-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-m4-examples-nand = "/stm32mp157c-ev1-m4-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-m4-examples-nor-sdcard = "/stm32mp157c-ev1-m4-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-m4-examples-nor-emmc = "/stm32mp157c-ev1-m4-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-m4-examples-sdcard = "/stm32mp157c-ev1-m4-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-m4-examples-sdcard-optee = "/stm32mp157c-ev1-m4-examples.dtb"
|
||||
# Define ROOT overrides for M4 labels
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-m4-examples-emmc = "${EXTLINUX_ROOT_EMMC}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-m4-examples-emmc-optee = "${EXTLINUX_ROOT_EMMC_OPTEE}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-m4-examples-nand = "${EXTLINUX_ROOT_NAND}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-m4-examples-nor-sdcard = "${EXTLINUX_ROOT_NORSDCARD}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-m4-examples-nor-emmc = "${EXTLINUX_ROOT_NOREMMC}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-m4-examples-sdcard = "${EXTLINUX_ROOT_SDCARD}"
|
||||
UBOOT_EXTLINUX_ROOT_stm32mp157c-ev1-m4-examples-sdcard-optee = "${EXTLINUX_ROOT_SDCARD_OPTEE}"
|
||||
# Define MENU DESCRIPTION overrides for new A7 labels
|
||||
UBOOT_EXTLINUX_MENU_DESCRIPTION_stm32mp157c-dk2-m4 = "stm32mp157c-dk2-m4-examples"
|
||||
UBOOT_EXTLINUX_MENU_DESCRIPTION_stm32mp157c-ev1-m4 = "stm32mp157c-ev1-m4-examples"
|
||||
UBOOT_EXTLINUX_MENU_DESCRIPTION_stm32mp157f-dk2-m4 = "stm32mp157f-dk2-m4-examples"
|
||||
UBOOT_EXTLINUX_MENU_DESCRIPTION_stm32mp157f-ev1-m4 = "stm32mp157f-ev1-m4-examples"
|
||||
# Define FDT overrides for new M4 labels
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-dk2-m4 = "/stm32mp157c-dk2-m4-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157c-ev1-m4 = "/stm32mp157c-ev1-m4-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157f-dk2-m4 = "/stm32mp157f-dk2-m4-examples.dtb"
|
||||
UBOOT_EXTLINUX_FDT_stm32mp157f-ev1-m4 = "/stm32mp157f-ev1-m4-examples.dtb"
|
||||
@@ -2,53 +2,70 @@
|
||||
|
||||
include conf/machine/include/gpu_vivante.inc
|
||||
|
||||
#------------------
|
||||
#
|
||||
# GPU
|
||||
#
|
||||
# =========================================================================
|
||||
# gpu
|
||||
# =========================================================================
|
||||
# To support gpu on a machine,
|
||||
# please add "gpu" to MACHINE_FEATURES in machine conf file
|
||||
|
||||
GPU_LIST = "gcnano-driver-stm32mp"
|
||||
GPU_LIST ?= "\
|
||||
gcnano-driver-stm32mp \
|
||||
"
|
||||
GPU_IMAGE_INSTALL = "${@bb.utils.contains('MACHINE_FEATURES', 'gpu', '${GPU_LIST}', '', d)} "
|
||||
|
||||
#------------------
|
||||
#
|
||||
# =========================================================================
|
||||
# alsa
|
||||
# =========================================================================
|
||||
ALSA_LIST ?= "\
|
||||
alsa-state-stm32mp1 \
|
||||
"
|
||||
ALSA_IMAGE_INSTALL = "${@bb.utils.contains('COMBINED_FEATURES', 'alsa', '${ALSA_LIST}', '', d)} "
|
||||
|
||||
# =========================================================================
|
||||
# bluetooth
|
||||
# =========================================================================
|
||||
BLUETOOTH_LIST ?= ""
|
||||
BLUETOOTH_IMAGE_INSTALL = "${@bb.utils.contains('MACHINE_FEATURES', 'bluetooth', '${BLUETOOTH_LIST}', '', d)}"
|
||||
|
||||
# =========================================================================
|
||||
# m4copro
|
||||
# =========================================================================
|
||||
M4COPRO_LIST ?= "\
|
||||
m4fwcoredump \
|
||||
m4projects-stm32mp1 \
|
||||
"
|
||||
M4COPRO_IMAGE_INSTALL = "${@bb.utils.contains('MACHINE_FEATURES', 'm4copro', '${M4COPRO_LIST}', '', d)}"
|
||||
|
||||
# =========================================================================
|
||||
# optee
|
||||
#
|
||||
|
||||
OPTEE_LIST = "optee-os-stm32mp"
|
||||
# =========================================================================
|
||||
OPTEE_LIST ?= "\
|
||||
virtual/optee-os \
|
||||
"
|
||||
OPTEE_IMAGE_INSTALL = "${@bb.utils.contains('COMBINED_FEATURES', 'optee', '${OPTEE_LIST}', '', d)} "
|
||||
PREFERRED_PROVIDER_optee-os = "optee-os-stm32mp"
|
||||
|
||||
OPTEE_BINARY = "optee-os-stm32mp"
|
||||
OPTEE_BINARY ?= "\
|
||||
virtual/optee-os \
|
||||
"
|
||||
OPTEE_BINARY_INSTALL = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '${OPTEE_BINARY}', '', d)} "
|
||||
|
||||
#------------------
|
||||
#
|
||||
# Alsa
|
||||
#
|
||||
ALSA_ADDONS = "alsa-state-stm32mp1"
|
||||
ALSA_ADDONS_INSTALL = "${@bb.utils.contains('COMBINED_FEATURES', 'alsa', '${ALSA_ADDONS}', '', d)} "
|
||||
# =========================================================================
|
||||
# wifi
|
||||
# =========================================================================
|
||||
WIFI_LIST ?= ""
|
||||
WIFI_IMAGE_INSTALL = "${@bb.utils.contains('MACHINE_FEATURES', 'wifi', '${WIFI_LIST}', '', d)} "
|
||||
|
||||
#------------------
|
||||
#
|
||||
# bluetooth
|
||||
#
|
||||
BLUETOOTH_LIST = " linux-firmware-bluetooth-bcm4343 "
|
||||
BLUETOOTH_IMAGE_INSTALL = "${@bb.utils.contains('MACHINE_FEATURES', 'bluetooth', '${BLUETOOTH_LIST}', '', d)} "
|
||||
|
||||
#------------------
|
||||
#
|
||||
# =========================================================================
|
||||
# Image appends
|
||||
#
|
||||
# =========================================================================
|
||||
EXTRA_IMAGEDEPENDS_append = " \
|
||||
${OPTEE_BINARY_INSTALL} \
|
||||
"
|
||||
|
||||
MACHINE_EXTRA_RRECOMMENDS_append = " \
|
||||
${GPU_IMAGE_INSTALL} \
|
||||
${OPTEE_IMAGE_INSTALL} \
|
||||
${ALSA_ADDONS_INSTALL} \
|
||||
${BLUETOOTH_IMAGE_INSTALL}\
|
||||
${GPU_IMAGE_INSTALL} \
|
||||
${ALSA_IMAGE_INSTALL} \
|
||||
${BLUETOOTH_IMAGE_INSTALL} \
|
||||
${M4COPRO_IMAGE_INSTALL} \
|
||||
${OPTEE_IMAGE_INSTALL} \
|
||||
${WIFI_IMAGE_INSTALL} \
|
||||
"
|
||||
@@ -1,7 +1,7 @@
|
||||
#@DESCRIPTION: STM32MP machine flashlayout deleteall configuration
|
||||
|
||||
# Set configuration file to monitor
|
||||
FLASHLAYOUT_CONFIGURE_FILES_append = " ${STM32MP_BASE}/conf/machine/include/st-machine-flashlayout-deleteall-stm32mp.inc:True "
|
||||
# Add specific scheme to provide flashlayout that will erase all storage devices
|
||||
FLASHLAYOUT_BOOTSCHEME_LABELS += "deleteall"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define config labels
|
||||
@@ -9,40 +9,47 @@ FLASHLAYOUT_CONFIGURE_FILES_append = " ${STM32MP_BASE}/conf/machine/include/st-m
|
||||
FLASHLAYOUT_CONFIG_LABELS_deleteall = "disco eval"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define label types
|
||||
# Define label types for each config
|
||||
# -----------------------------------------------------------------------------
|
||||
FLASHLAYOUT_TYPE_LABELS_deleteall_disco = "${STM32MP_DT_FILES_DK}"
|
||||
FLASHLAYOUT_TYPE_LABELS_deleteall_eval = "${STM32MP_DT_FILES_ED} ${STM32MP_DT_FILES_EV}"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define partitions to use
|
||||
# Define partitions to consider for flashlayout file generation
|
||||
#
|
||||
# NB: To manage bootloader partitions, simplification is done by directly
|
||||
# re-using 'fsbl1-boot' and 'ssbl-boot' partitions already defined in file
|
||||
# NB: We re-use as much as possible partitions already defined in file
|
||||
# 'st-machine-flashlayout-stm32mp.inc'
|
||||
# -----------------------------------------------------------------------------
|
||||
FLASHLAYOUT_PARTITION_LABELS_deleteall_disco = "fsbl1-boot ssbl-boot sdcardall"
|
||||
FLASHLAYOUT_PARTITION_LABELS_deleteall_eval = "fsbl1-boot ssbl-boot emmcfsbl1 emmcfsbl2 emmcall nandall norall sdcardall"
|
||||
FLASHLAYOUT_PARTITION_LABELS_deleteall = "fsbl1-boot ssbl-boot fsbl1 fsbl2 emmcall nandall norall sdcardall"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Partition configuration for each partition label
|
||||
FLASHLAYOUT_PARTITION_DEVICE_emmcfsbl1 = "${DEVICE_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_emmcfsbl2 = "${DEVICE_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_emmcall = "${DEVICE_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nandall = "${DEVICE_NAND}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_norall = "${DEVICE_NOR}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_sdcardall = "${DEVICE_SDCARD}"
|
||||
# Specific for fsbl1-boot ssbl-boot partitions
|
||||
FLASHLAYOUT_PARTITION_DEVICE_deleteall_fsbl1-boot = "none"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_deleteall_ssbl-boot = "none"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_deleteall = "PED"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_deleteall_fsbl1-boot = "-"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_deleteall_ssbl-boot = "-"
|
||||
|
||||
FLASHLAYOUT_PARTITION_OFFSET_deleteall = "0x0"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_deleteall_emmcfsbl1 = "${FLASHLAYOUT_PARTITION_OFFSET_emmc_fsbl1}"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_deleteall_emmcfsbl2 = "${FLASHLAYOUT_PARTITION_OFFSET_emmc_fsbl2}"
|
||||
FLASHLAYOUT_PARTITION_ID_emmcall = "0x30"
|
||||
FLASHLAYOUT_PARTITION_ID_nandall = "0x40"
|
||||
FLASHLAYOUT_PARTITION_ID_norall = "0x50"
|
||||
FLASHLAYOUT_PARTITION_ID_sdcardall = "0x60"
|
||||
|
||||
FLASHLAYOUT_PARTITION_TYPE_emmcall = "RawImage"
|
||||
FLASHLAYOUT_PARTITION_TYPE_nandall = "RawImage"
|
||||
FLASHLAYOUT_PARTITION_TYPE_norall = "RawImage"
|
||||
FLASHLAYOUT_PARTITION_TYPE_sdcardall = "RawImage"
|
||||
|
||||
FLASHLAYOUT_PARTITION_DEVICE_deleteall = "none:fsbl1-boot ssbl-boot,${DEVICE_EMMC}:fsbl1 fsbl2 emmcall,${DEVICE_NAND}:nandall,${DEVICE_NOR}:norall,${DEVICE_SDCARD}:sdcardall"
|
||||
|
||||
FLASHLAYOUT_PARTITION_OFFSET_deleteall = "0x0"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_deleteall_fsbl1 = "${DEVICE_START_OFFSET_BOOT0_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_deleteall_fsbl2 = "${DEVICE_START_OFFSET_BOOT1_EMMC}"
|
||||
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_deleteall_fsbl1 = "none"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_deleteall_fsbl2 = "none"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# The 'deleteall' bootscheme is a trick to generate flashlayout files to clean
|
||||
# all memory devices on board. There are no specific 'deleteall' bootloader
|
||||
# binaries so use the 'trusted' or 'optee' one.
|
||||
BIN2BOOT_REPLACE_PATTERNS_fsbl1-boot_append = " deleteall;trusted"
|
||||
BIN2BOOT_REPLACE_PATTERNS_ssbl-boot_append = " ${@bb.utils.contains('BOOTSCHEME_LABELS', 'optee', 'deleteall;optee', 'deleteall;trusted', d)}"
|
||||
# binaries so use the proper one ('serialboot', 'optee' or 'trusted').
|
||||
FLASHLAYOUT_PARTITION_REPLACE_PATTERNS_fsbl1-boot_append = " deleteall;serialboot"
|
||||
FLASHLAYOUT_PARTITION_REPLACE_PATTERNS_ssbl-boot_append = " deleteall;trusted"
|
||||
@@ -1,12 +1,14 @@
|
||||
#@DESCRIPTION: STM32MP machine flashlayout extensible configuration
|
||||
|
||||
# Set configuration file to monitor
|
||||
FLASHLAYOUT_CONFIGURE_FILES_append = " ${STM32MP_BASE}/conf/machine/include/st-machine-flashlayout-extensible-stm32mp.inc:True "
|
||||
# Add specific scheme to provide flashlayout that will make rootfs extensible to
|
||||
# remaining device free space
|
||||
# NOTE: this scheme is ONLY compatible with disco board and trusted bootscheme
|
||||
FLASHLAYOUT_BOOTSCHEME_LABELS += "${@bb.utils.contains('BOOTSCHEME_LABELS', 'trusted', 'extensible', '', d)}"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define config labels
|
||||
# -----------------------------------------------------------------------------
|
||||
FLASHLAYOUT_CONFIG_LABELS_extensible = "sdcard"
|
||||
FLASHLAYOUT_CONFIG_LABELS_extensible = "${@bb.utils.contains('BOOTDEVICE_LABELS', 'sdcard', 'sdcard', 'none', d)}"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define label types
|
||||
@@ -20,17 +22,17 @@ FLASHLAYOUT_TYPE_LABELS_extensible = "${STM32MP_DT_FILES_DK}"
|
||||
# re-using 'fsbl1-boot' and 'ssbl-boot' partitions already defined in file
|
||||
# 'st-machine-flashlayout-stm32mp.inc'
|
||||
# -----------------------------------------------------------------------------
|
||||
FLASHLAYOUT_PARTITION_LABELS_extensible = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl bootfs ${VENDORFS_PART} rootfs"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Partition configuration for each partition label
|
||||
# Specific for fsbl1-boot ssbl-boot partitions
|
||||
FLASHLAYOUT_PARTITION_DEVICE_extensible_fsbl1-boot = "none"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_extensible_ssbl-boot = "none"
|
||||
FLASHLAYOUT_PARTITION_LABELS_extensible = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl ${FLASHLAYOUT_PARTITION_IMAGES}"
|
||||
FLASHLAYOUT_PARTITION_LABELS_extensible_remove = "userfs"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# The 'extensible' bootscheme is a trick to generate flashlayout files without
|
||||
# userfs partition for trusted bootscheme ONLY. So rootfs partition will be
|
||||
# extended up to the end of memory device, leaving plenty of space for user to
|
||||
# install more applications via 'apt-get'
|
||||
BIN2BOOT_REPLACE_PATTERNS_extensible_append = " extensible;trusted"
|
||||
# Make sure to use 'trusted' bootscheme for binary naming instead of 'extensible'
|
||||
# each time it is required
|
||||
FLASHLAYOUT_PARTITION_REPLACE_PATTERNS_extensible_prepend = "extensible;trusted "
|
||||
# Additionnal replacement is expected for specific fsbl1 bootloader binary, as
|
||||
# we should use the 'serialboot' one instead of the 'trusted' one
|
||||
FLASHLAYOUT_PARTITION_REPLACE_PATTERNS_extensible_fsbl1-boot_append = " trusted;serialboot"
|
||||
@@ -1,87 +1,102 @@
|
||||
#@DESCRIPTION: STM32MP machine flashlayout configuration
|
||||
|
||||
INHERIT += "flashlayout-stm32mp"
|
||||
|
||||
# Set configuration file to monitor
|
||||
FLASHLAYOUT_CONFIGURE_FILES_append = " ${STM32MP_BASE}/conf/machine/include/st-machine-flashlayout-stm32mp.inc:True "
|
||||
inherit flashlayout-stm32mp
|
||||
|
||||
# Add specific dependencies to get all binaries generated before flashlayout files
|
||||
FLASHLAYOUT_DEPEND_TASKS += "${@bb.utils.contains('EXTRA_IMAGEDEPENDS', 'tf-a-stm32mp', 'tf-a-stm32mp:do_deploy', '', d)}"
|
||||
FLASHLAYOUT_DEPEND_TASKS += "${@bb.utils.contains('EXTRA_IMAGEDEPENDS', 'u-boot-stm32mp', 'u-boot-stm32mp:do_deploy', '', d)}"
|
||||
FLASHLAYOUT_DEPEND_TASKS += "${@bb.utils.contains('EXTRA_IMAGEDEPENDS', 'optee-os-stm32mp', 'optee-os-stm32mp:do_deploy', '', d)}"
|
||||
FLASHLAYOUT_DEPEND_TASKS += "${@bb.utils.contains('EXTRA_IMAGEDEPENDS', 'virtual/trusted-firmware-a', 'virtual/trusted-firmware-a:do_deploy', '', d)}"
|
||||
FLASHLAYOUT_DEPEND_TASKS += "${@bb.utils.contains('EXTRA_IMAGEDEPENDS', 'virtual/trusted-firmware-a-serialboot', 'virtual/trusted-firmware-a-serialboot:do_deploy', '', d)}"
|
||||
FLASHLAYOUT_DEPEND_TASKS += "${@bb.utils.contains('EXTRA_IMAGEDEPENDS', 'virtual/bootloader', 'virtual/bootloader:do_deploy', '', d)}"
|
||||
FLASHLAYOUT_DEPEND_TASKS += "${@bb.utils.contains('EXTRA_IMAGEDEPENDS', 'virtual/optee-os', 'virtual/optee-os:do_deploy', '', d)}"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define flashlayout devices
|
||||
# For the stm32mp flashlayout files, configuration is done to get output file
|
||||
# with following name scheme:
|
||||
# FlashLayout_<CONFIG_LABEL>[_<TYPE_LABEL>-<BOOTSCHEME_LABEL>].tsv
|
||||
#
|
||||
# The different labels are stored as list in different vars:
|
||||
# - <BOOTSCHEME_LABEL> FLASHLAYOUT_BOOTSCHEME_LABELS
|
||||
# - <CONFIG_LABEL> FLASHLAYOUT_CONFIG_LABELS
|
||||
# - <TYPE_LABEL> FLASHLAYOUT_TYPE_LABELS
|
||||
#
|
||||
# The flashlayout file name is generated with following loop logic:
|
||||
# for bootscheme in FLASHLAYOUT_BOOTSCHEME_LABELS (expanded according to ongoing OVERRIDES)
|
||||
# for config in FLASHLAYOUT_CONFIG_LABELS (expanded according to ongoing $bootscheme and OVERRIDES)
|
||||
# for typelabel in FLASHLAYOUT_TYPE_LABELS (expanded according to ongoing $bootscheme, $config and OVERRIDES)
|
||||
# if FLASHLAYOUT_BOOTSCHEME_LABELS items > 1 && FLASHLAYOUT_TYPE_LABELS items > 1
|
||||
# flashlayout_name = FlashLayout_$config_$typelabel-$bootscheme.tsv
|
||||
# else
|
||||
# flashlayout_name = FlashLayout_$config.tsv
|
||||
#
|
||||
# Each flashlayout file should contain lines that set the partition properties:
|
||||
# <Opt> <Id> <Name> <Type> <IP> <Offset> <Binary>
|
||||
#
|
||||
# The partition properties are set with 'FLASHLAYOUT_PARTITION_xxx' vars:
|
||||
# - <Opt> FLASHLAYOUT_PARTITION_ENABLE
|
||||
# - <Id> FLASHLAYOUT_PARTITION_ID
|
||||
# - <Name> Item from FLASHLAYOUT_PARTITION_LABELS list
|
||||
# - <Type> FLASHLAYOUT_PARTITION_TYPE
|
||||
# - <IP> FLASHLAYOUT_PARTITION_DEVICE
|
||||
# - <Offset> FLASHLAYOUT_PARTITION_OFFSET
|
||||
# - <Binary> FLASHLAYOUT_PARTITION_BIN2LOAD
|
||||
#
|
||||
# For the '$flashlayout_name' flashlayout file, the partition lines are generated
|
||||
# with following loop logic:
|
||||
# for partition in FLASHLAYOUT_PARTITION_LABELS (expanded according to ongoing $bootscheme, $config and OVERRIDES)
|
||||
# OVERRIDES_PREV = OVERRIDES
|
||||
# OVERRIDES = $partition:OVERRIDES
|
||||
# Compute partition properties for $partiton (expanded according to ongoing $bootscheme, $config and OVERRIDES)
|
||||
# Write new partition line to $flashlayout_name
|
||||
# OVERRIDES = OVERRIDES_PREV
|
||||
#
|
||||
# Modifying the OVERRIDES inside the loop allows dynamic configuration for each
|
||||
# partition property. This leaves plenty of possibility and guarantee specific
|
||||
# '$partition' override.
|
||||
# -----------------------------------------------------------------------------
|
||||
DEVICE_EMMC = "mmc1"
|
||||
DEVICE_NAND = "nand0"
|
||||
DEVICE_NOR = "nor0"
|
||||
DEVICE_SDCARD = "mmc0"
|
||||
# -----------------------------------------------------------------------------
|
||||
# EMMC
|
||||
# Extra space is required to store 'Protective MBR' and 'Primary GPT Header'
|
||||
# Currently the required size is 17kBytes (i.e. 0x4400)
|
||||
# We need to align this size to get the first offset to use
|
||||
DEVICE_START_OFFSET_mmc1 = "0x00080000"
|
||||
DEVICE_ALIGNMENT_SIZE_mmc1 = "0x00080000"
|
||||
# -----------------------------------------------------------------------------
|
||||
# NAND
|
||||
DEVICE_START_OFFSET_nand0 = "0x00000000"
|
||||
DEVICE_ALIGNMENT_SIZE_nand0 = "0x00040000"
|
||||
# -----------------------------------------------------------------------------
|
||||
# NOR
|
||||
DEVICE_START_OFFSET_nor0 = "0x00000000"
|
||||
DEVICE_ALIGNMENT_SIZE_nor0 = "0x00010000"
|
||||
# -----------------------------------------------------------------------------
|
||||
# SDCARD
|
||||
# Extra space is required to store 'Protective MBR' and 'Primary GPT Header'
|
||||
# Currently the required size is 17kBytes (i.e. 0x4400)
|
||||
# We need to align this size to get the first offset to use
|
||||
DEVICE_START_OFFSET_mmc0 = "0x00004400"
|
||||
DEVICE_ALIGNMENT_SIZE_mmc0 = "0x00000200"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define bootscheme labels
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define bootscheme label to allow specific expansion for partition vars
|
||||
FLASHLAYOUT_BOOTSCHEME_LABELS += "${BOOTSCHEME_LABELS}"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define config labels
|
||||
# -----------------------------------------------------------------------------
|
||||
# NOTE: define can be done with following priority assignment:
|
||||
# 1) list_<BOOTSCHEME>
|
||||
# 2) list
|
||||
# 3) Default 'list' to 'none' when not defined
|
||||
# Priority var assignment (where <OVERRIDES> are the usual override mechanism):
|
||||
# 1) FLASHLAYOUT_CONFIG_LABELS_<BOOTSCHEME>_<OVERRIDES>
|
||||
# 2) FLASHLAYOUT_CONFIG_LABELS_<BOOTSCHEME>
|
||||
# 3) FLASHLAYOUT_CONFIG_LABELS_<OVERRIDES>
|
||||
# 4) FLASHLAYOUT_CONFIG_LABELS
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define supported config labels
|
||||
FLASHLAYOUT_CONFIG_LABELS += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'emmc', 'emmc', '', d)}"
|
||||
FLASHLAYOUT_CONFIG_LABELS += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'nand-4-256', 'nand-4-256', '', d)}"
|
||||
FLASHLAYOUT_CONFIG_LABELS += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'nor-emmc', 'nor-emmc', '', d)}"
|
||||
FLASHLAYOUT_CONFIG_LABELS += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'nor-nand-4-256', 'nor-nand-4-256', '', d)}"
|
||||
FLASHLAYOUT_CONFIG_LABELS += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'nor-sdcard', 'nor-sdcard', '', d)}"
|
||||
FLASHLAYOUT_CONFIG_LABELS += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'sdcard', 'sdcard', '', d)}"
|
||||
|
||||
# Set by default this variable to 0, and set to 1 only when we are using st-example-image-*
|
||||
ST_EXAMPLE_IMAGE ??= "0"
|
||||
|
||||
#FIXME need to manage overall device size to abort flashlayout creation in case of oversizing the storage devices
|
||||
|
||||
# Remove NAND flashlayout when we are using st-example-image-* as rootfs too big for a NAND device size of 1 GBytes
|
||||
#FLASHLAYOUT_CONFIG_LABELS_remove = "${@bb.utils.contains('ST_EXAMPLE_IMAGE', '1', 'emmc', '', d)}"
|
||||
FLASHLAYOUT_CONFIG_LABELS_remove = "${@bb.utils.contains('ST_EXAMPLE_IMAGE', '1', 'nand-4-256', '', d)}"
|
||||
#FLASHLAYOUT_CONFIG_LABELS_remove = "${@bb.utils.contains('ST_EXAMPLE_IMAGE', '1', 'nor-sdcard', '', d)}"
|
||||
#FLASHLAYOUT_CONFIG_LABELS_remove = "${@bb.utils.contains('ST_EXAMPLE_IMAGE', '1', 'nor-emmc', '', d)}"
|
||||
FLASHLAYOUT_CONFIG_LABELS_remove = "${@bb.utils.contains('ST_EXAMPLE_IMAGE', '1', 'nor-nand-4-256', '', d)}"
|
||||
#FLASHLAYOUT_CONFIG_LABELS_remove = "${@bb.utils.contains('ST_EXAMPLE_IMAGE', '1', 'sdcard', '', d)}"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define label types
|
||||
# Define label types for each config
|
||||
# -----------------------------------------------------------------------------
|
||||
# NOTE: define can be done with following priority assignment:
|
||||
# 1) list_<BOOTSCHEME>_<CONFIG>
|
||||
# 2) list_<BOOTSCHEME>
|
||||
# 3) list_<CONFIG>
|
||||
# 4) list
|
||||
# 5) Default 'list' to 'none' when not defined
|
||||
# NOTE: We use devicetree to allow proper filtering on supported storage device
|
||||
# -----------------------------------------------------------------------------
|
||||
# Priority var assignment (where <OVERRIDES> are the usual override mechanism):
|
||||
# 1) FLASHLAYOUT_TYPE_LABELS_<BOOTSCHEME>_<CONFIG>_<OVERRIDES>
|
||||
# 2) FLASHLAYOUT_TYPE_LABELS_<BOOTSCHEME>_<CONFIG>
|
||||
# 3) FLASHLAYOUT_TYPE_LABELS_<BOOTSCHEME>_<OVERRIDES>
|
||||
# 4) FLASHLAYOUT_TYPE_LABELS_<BOOTSCHEME>
|
||||
# 5) FLASHLAYOUT_TYPE_LABELS_<CONFIG>_<OVERRIDES>
|
||||
# 6) FLASHLAYOUT_TYPE_LABELS_<CONFIG>
|
||||
# 7) FLASHLAYOUT_TYPE_LABELS_<OVERRIDES>
|
||||
# 8) FLASHLAYOUT_TYPE_LABELS
|
||||
# -----------------------------------------------------------------------------
|
||||
# EMMC
|
||||
# Set flashlayout file generation to eval board (mother and daughter) only
|
||||
@@ -91,98 +106,67 @@ FLASHLAYOUT_TYPE_LABELS_emmc = "${STM32MP_DT_FILES_ED} ${STM32MP_DT_FILES_EV}"
|
||||
FLASHLAYOUT_TYPE_LABELS_nand-4-256 = "${STM32MP_DT_FILES_EV}"
|
||||
# NOR
|
||||
# Set flashlayout file generation to eval board only
|
||||
FLASHLAYOUT_TYPE_LABELS_nor-emmc = "${STM32MP_DT_FILES_EV}"
|
||||
FLASHLAYOUT_TYPE_LABELS_nor-nand-4-256 = "${STM32MP_DT_FILES_EV}"
|
||||
FLASHLAYOUT_TYPE_LABELS_nor-sdcard = "${STM32MP_DT_FILES_EV}"
|
||||
FLASHLAYOUT_TYPE_LABELS_nor-sdcard = "${STM32MP_DT_FILES_EV}"
|
||||
# SDCARD
|
||||
# Set flashlayout file generation for all boards
|
||||
FLASHLAYOUT_TYPE_LABELS_sdcard = "${STM32MP_DT_FILES_DK} ${STM32MP_DT_FILES_ED} ${STM32MP_DT_FILES_EV}"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define partitions to use
|
||||
# Define partitions to consider for flashlayout file generation
|
||||
# -----------------------------------------------------------------------------
|
||||
# There are few restrictions to follow:
|
||||
# - The partition for the first boot loader should follow the naming rule:
|
||||
# fsbl*
|
||||
# - The partition for the secondary boot loader should follow the naming rule:
|
||||
# ssbl
|
||||
# NOTE: There are few restrictions to follow:
|
||||
# - The partition for the first boot loader should follow the naming
|
||||
# rule: fsbl*
|
||||
# - The partition for the secondary boot loader should follow the naming
|
||||
# rule: ssbl
|
||||
# -----------------------------------------------------------------------------
|
||||
# NOTE: define can be done with following priority assignment:
|
||||
# 1) list_<BOOTSCHEME>_<CONFIG>
|
||||
# 2) list_<BOOTSCHEME>
|
||||
# 3) list_<CONFIG>
|
||||
# 4) list
|
||||
# 5) Default 'list' to 'none' when not defined
|
||||
# Priority var assignment (where <OVERRIDES> are the usual override mechanism):
|
||||
# 1) FLASHLAYOUT_PARTITION_LABELS_<BOOTSCHEME>_<CONFIG>_<OVERRIDES>
|
||||
# 2) FLASHLAYOUT_PARTITION_LABELS_<BOOTSCHEME>_<CONFIG>
|
||||
# 3) FLASHLAYOUT_PARTITION_LABELS_<BOOTSCHEME>_<OVERRIDES>
|
||||
# 4) FLASHLAYOUT_PARTITION_LABELS_<BOOTSCHEME>
|
||||
# 5) FLASHLAYOUT_PARTITION_LABELS_<CONFIG>_<OVERRIDES>
|
||||
# 6) FLASHLAYOUT_PARTITION_LABELS_<CONFIG>
|
||||
# 7) FLASHLAYOUT_PARTITION_LABELS_<OVERRIDES>
|
||||
# 8) FLASHLAYOUT_PARTITION_LABELS
|
||||
# -----------------------------------------------------------------------------
|
||||
VENDORFS_PART = "${@bb.utils.contains('ST_VENDORFS','1','vendorfs','',d)}"
|
||||
|
||||
FLASHLAYOUT_PARTITION_LABELS_basic_emmc = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl bootfs ${VENDORFS_PART} rootfs userfs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_basic_nand-4-256 = "none"
|
||||
FLASHLAYOUT_PARTITION_LABELS_basic_nor-nand-4-256 = "none"
|
||||
FLASHLAYOUT_PARTITION_LABELS_basic_nor-emmc = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl env empty bootfs ${VENDORFS_PART} rootfs userfs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_basic_nor-sdcard = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl env empty bootfs ${VENDORFS_PART} rootfs userfs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_basic_sdcard = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl bootfs ${VENDORFS_PART} rootfs userfs"
|
||||
# FLASHLAYOUT_PARTITION_IMAGES is initalized through PARTITIONS_CONFIG within 'flashlayout-stm32mp' class
|
||||
FLASHLAYOUT_PARTITION_IMAGES ?= ""
|
||||
|
||||
FLASHLAYOUT_PARTITION_LABELS_optee_emmc = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl teeh teed teex bootfs ${VENDORFS_PART} rootfs userfs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_optee_nand-4-256 = "fsbl1-boot ssbl-boot fsbl1 ssbl ssbl2 teeh teed teex ubifs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_optee_nor-nand-4-256 = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl env teeh teed teex empty emptyfsbl1 emptyssbl emptyssbl2 emptyteeh emptyteed emptyteex ubifs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_optee_nor-emmc = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl env teeh teed teex empty bootfs ${VENDORFS_PART} rootfs userfs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_optee_nor-sdcard = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl env teeh teed teex empty bootfs ${VENDORFS_PART} rootfs userfs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_optee_sdcard = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl teeh teed teex bootfs ${VENDORFS_PART} rootfs userfs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_optee_emmc = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl teeh teed teex ${FLASHLAYOUT_PARTITION_IMAGES}"
|
||||
FLASHLAYOUT_PARTITION_LABELS_optee_nand-4-256 = "fsbl1-boot ssbl-boot fsbl1 ssbl ssbl2 teeh teed teex ubifs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_optee_nor-sdcard = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl env teeh teed teex empty ${FLASHLAYOUT_PARTITION_IMAGES}"
|
||||
FLASHLAYOUT_PARTITION_LABELS_optee_sdcard = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl teeh teed teex ${FLASHLAYOUT_PARTITION_IMAGES}"
|
||||
|
||||
FLASHLAYOUT_PARTITION_LABELS_trusted_emmc = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl bootfs ${VENDORFS_PART} rootfs userfs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_trusted_nand-4-256 = "fsbl1-boot ssbl-boot fsbl1 ssbl ssbl2 ubifs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_trusted_nor-nand-4-256 = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl env empty emptyfsbl1 emptyssbl emptyssbl2 ubifs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_trusted_nor-emmc = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl env empty bootfs ${VENDORFS_PART} rootfs userfs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_trusted_nor-sdcard = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl env empty bootfs ${VENDORFS_PART} rootfs userfs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_trusted_sdcard = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl bootfs ${VENDORFS_PART} rootfs userfs"
|
||||
|
||||
# To manage properly dynamic boot for NOR use case, our 'boot.src' script scans
|
||||
# one after one the devices to find out expected binaries from bootfs partition.
|
||||
# So we make sure to erase all devices we do not want to use to boot
|
||||
# for our NOR-* boot configurations
|
||||
FLASHLAYOUT_PARTITION_LABELS_basic_nor-emmc += "nandall sdcardall"
|
||||
FLASHLAYOUT_PARTITION_LABELS_basic_nor-sdcard += "emmcfsbl1 emmcfsbl2 emmcall nandall"
|
||||
|
||||
FLASHLAYOUT_PARTITION_LABELS_optee_nor-nand-4-256 += "emmcfsbl1 emmcfsbl2 emmcall sdcardall"
|
||||
FLASHLAYOUT_PARTITION_LABELS_optee_nor-emmc += "nandall sdcardall"
|
||||
FLASHLAYOUT_PARTITION_LABELS_optee_nor-sdcard += "emmcfsbl1 emmcfsbl2 emmcall nandall"
|
||||
|
||||
FLASHLAYOUT_PARTITION_LABELS_trusted_nor-nand-4-256 += "emmcfsbl1 emmcfsbl2 emmcall sdcardall"
|
||||
FLASHLAYOUT_PARTITION_LABELS_trusted_nor-emmc += "nandall sdcardall"
|
||||
FLASHLAYOUT_PARTITION_LABELS_trusted_nor-sdcard += "emmcfsbl1 emmcfsbl2 emmcall nandall"
|
||||
FLASHLAYOUT_PARTITION_LABELS_trusted_emmc = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl ${FLASHLAYOUT_PARTITION_IMAGES}"
|
||||
FLASHLAYOUT_PARTITION_LABELS_trusted_nand-4-256 = "fsbl1-boot ssbl-boot fsbl1 ssbl ssbl2 ubifs"
|
||||
FLASHLAYOUT_PARTITION_LABELS_trusted_nor-sdcard = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl env empty ${FLASHLAYOUT_PARTITION_IMAGES}"
|
||||
FLASHLAYOUT_PARTITION_LABELS_trusted_sdcard = "fsbl1-boot ssbl-boot fsbl1 fsbl2 ssbl ${FLASHLAYOUT_PARTITION_IMAGES}"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Partition configuration for each partition label
|
||||
# NOTE: each item can be defined with following priority assignment:
|
||||
# 1) item_<BOOTSCHEME>_<CONFIG>_<PARTITION>
|
||||
# 2) item_<BOOTSCHEME>_<CONFIG>
|
||||
# 3) item_<BOOTSCHEME>_<PARTITION>
|
||||
# 4) item_<BOOTSCHEME>
|
||||
# 5) item_<CONFIG>_<PARTITION>
|
||||
# 6) item_<CONFIG>
|
||||
# 7) item_<PARTITION>
|
||||
# 8) item
|
||||
# 9) Default 'item' to 'none' when not defined
|
||||
# Partition properties configuration
|
||||
# -----------------------------------------------------------------------------
|
||||
# Priority var assignment (where <OVERRIDES> are the usual override mechanism
|
||||
# with dynamic append of ongoing 'partition name' item):
|
||||
# 1) FLASHLAYOUT_PARTITION_xxx_<BOOTSCHEME>_<CONFIG>_<OVERRIDES>
|
||||
# 2) FLASHLAYOUT_PARTITION_xxx_<BOOTSCHEME>_<CONFIG>
|
||||
# 3) FLASHLAYOUT_PARTITION_xxx_<BOOTSCHEME>_<OVERRIDES>
|
||||
# 4) FLASHLAYOUT_PARTITION_xxx_<BOOTSCHEME>
|
||||
# 5) FLASHLAYOUT_PARTITION_xxx_<CONFIG>_<OVERRIDES>
|
||||
# 6) FLASHLAYOUT_PARTITION_xxx_<CONFIG>
|
||||
# 7) FLASHLAYOUT_PARTITION_xxx_<OVERRIDES>
|
||||
# 8) FLASHLAYOUT_PARTITION_xxx
|
||||
# 9) Default 'FLASHLAYOUT_PARTITION_xxx' to 'none' when not defined
|
||||
# -----------------------------------------------------------------------------
|
||||
FLASHLAYOUT_PARTITION_ENABLE = "P"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_fsbl1-boot = "-"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_ssbl-boot = "-"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_empty = "PE"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_emptyfsbl1 = "PE"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_emptyssbl = "PE"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_emptyssbl2 = "PE"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_emptyteeh = "PE"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_emptyteed = "PE"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_emptyteex = "PE"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_env = "PED"
|
||||
# Specific to manage partition erase
|
||||
FLASHLAYOUT_PARTITION_ENABLE_emmcall = "PED"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_emmcfsbl1 = "PED"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_emmcfsbl2 = "PED"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_nandall = "PED"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_norall = "PED"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_sdcardall = "PED"
|
||||
# Due to association of u-boot and env, the ssbl partition need to be deleted
|
||||
FLASHLAYOUT_PARTITION_ENABLE_sdcard_ssbl = "PD"
|
||||
FLASHLAYOUT_PARTITION_ENABLE_emmc_ssbl = "PD"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Partition ID
|
||||
@@ -198,162 +182,75 @@ FLASHLAYOUT_PARTITION_ENABLE_sdcardall = "PED"
|
||||
# there are two reserved IDs
|
||||
# 0x01 for FSBL
|
||||
# 0x03 for SSBL
|
||||
FLASHLAYOUT_PARTITION_ID_fsbl1-boot = "0x01"
|
||||
FLASHLAYOUT_PARTITION_ID_ssbl-boot = "0x03"
|
||||
FLASHLAYOUT_PARTITION_ID_fsbl1 = "0x04"
|
||||
FLASHLAYOUT_PARTITION_ID_fsbl2 = "0x05"
|
||||
FLASHLAYOUT_PARTITION_ID_ssbl = "0x06"
|
||||
FLASHLAYOUT_PARTITION_ID_ssbl2 = "0x07"
|
||||
FLASHLAYOUT_PARTITION_ID_teeh = "0x0A"
|
||||
FLASHLAYOUT_PARTITION_ID_teed = "0x0B"
|
||||
FLASHLAYOUT_PARTITION_ID_teex = "0x0C"
|
||||
FLASHLAYOUT_PARTITION_ID_empty = "0x10"
|
||||
FLASHLAYOUT_PARTITION_ID_emptyfsbl1 = "0x11"
|
||||
FLASHLAYOUT_PARTITION_ID_emptyssbl = "0x12"
|
||||
FLASHLAYOUT_PARTITION_ID_emptyssbl2 = "0x13"
|
||||
FLASHLAYOUT_PARTITION_ID_emptyteeh = "0x14"
|
||||
FLASHLAYOUT_PARTITION_ID_emptyteed = "0x15"
|
||||
FLASHLAYOUT_PARTITION_ID_emptyteex = "0x16"
|
||||
FLASHLAYOUT_PARTITION_ID_env = "0x20"
|
||||
FLASHLAYOUT_PARTITION_ID_ubifs = "0x21"
|
||||
FLASHLAYOUT_PARTITION_ID_bootfs = "0x21"
|
||||
FLASHLAYOUT_PARTITION_ID_vendorfs = "0x22"
|
||||
FLASHLAYOUT_PARTITION_ID_rootfs = "0x23"
|
||||
FLASHLAYOUT_PARTITION_ID_userfs = "0x24"
|
||||
# Specific to manage partition erase
|
||||
FLASHLAYOUT_PARTITION_ID_emmcfsbl1 = "0x08"
|
||||
FLASHLAYOUT_PARTITION_ID_emmcfsbl2 = "0x09"
|
||||
FLASHLAYOUT_PARTITION_ID_emmcall = "0x30"
|
||||
FLASHLAYOUT_PARTITION_ID_nandall = "0x40"
|
||||
FLASHLAYOUT_PARTITION_ID_norall = "0x50"
|
||||
FLASHLAYOUT_PARTITION_ID_sdcardall = "0x60"
|
||||
FLASHLAYOUT_PARTITION_ID_fsbl1-boot = "0x01"
|
||||
FLASHLAYOUT_PARTITION_ID_ssbl-boot = "0x03"
|
||||
FLASHLAYOUT_PARTITION_ID_fsbl1 = "0x04"
|
||||
FLASHLAYOUT_PARTITION_ID_fsbl2 = "0x05"
|
||||
FLASHLAYOUT_PARTITION_ID_ssbl = "0x06"
|
||||
FLASHLAYOUT_PARTITION_ID_ssbl2 = "0x07"
|
||||
FLASHLAYOUT_PARTITION_ID_teeh = "0x0A"
|
||||
FLASHLAYOUT_PARTITION_ID_teed = "0x0B"
|
||||
FLASHLAYOUT_PARTITION_ID_teex = "0x0C"
|
||||
FLASHLAYOUT_PARTITION_ID_empty = "0x10"
|
||||
FLASHLAYOUT_PARTITION_ID_env = "0x20"
|
||||
FLASHLAYOUT_PARTITION_ID_ubifs = "0x21"
|
||||
|
||||
FLASHLAYOUT_PARTITION_TYPE = "Binary"
|
||||
FLASHLAYOUT_PARTITION_TYPE_nand-4-256_fsbl1 = "Binary(2)"
|
||||
FLASHLAYOUT_PARTITION_TYPE_ubifs = "System"
|
||||
FLASHLAYOUT_PARTITION_TYPE_bootfs = "System"
|
||||
FLASHLAYOUT_PARTITION_TYPE_vendorfs = "FileSystem"
|
||||
FLASHLAYOUT_PARTITION_TYPE_rootfs = "FileSystem"
|
||||
FLASHLAYOUT_PARTITION_TYPE_userfs = "FileSystem"
|
||||
# Specific to manage partition erase
|
||||
FLASHLAYOUT_PARTITION_TYPE_emmcall = "RawImage"
|
||||
FLASHLAYOUT_PARTITION_TYPE_nandall = "RawImage"
|
||||
FLASHLAYOUT_PARTITION_TYPE_norall = "RawImage"
|
||||
FLASHLAYOUT_PARTITION_TYPE_sdcardall = "RawImage"
|
||||
|
||||
FLASHLAYOUT_PARTITION_DEVICE_emmc = "${DEVICE_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nand-4-256 = "${DEVICE_NAND}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor = "${DEVICE_NOR}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-emmc = "${DEVICE_NOR}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-emmc_bootfs = "${DEVICE_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-emmc_vendorfs = "${DEVICE_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-emmc_rootfs = "${DEVICE_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-emmc_userfs = "${DEVICE_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-nand-4-256 = "${DEVICE_NOR}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-nand-4-256_emptyfsbl1 = "${DEVICE_NAND}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-nand-4-256_emptyssbl = "${DEVICE_NAND}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-nand-4-256_emptyssbl2 = "${DEVICE_NAND}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-nand-4-256_emptyteeh = "${DEVICE_NAND}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-nand-4-256_emptyteed = "${DEVICE_NAND}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-nand-4-256_emptyteex = "${DEVICE_NAND}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-nand-4-256_ubifs = "${DEVICE_NAND}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-sdcard = "${DEVICE_NOR}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-sdcard_bootfs = "${DEVICE_SDCARD}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-sdcard_vendorfs = "${DEVICE_SDCARD}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-sdcard_rootfs = "${DEVICE_SDCARD}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-sdcard_userfs = "${DEVICE_SDCARD}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_sdcard = "${DEVICE_SDCARD}"
|
||||
# Specific for fsbl1-boot ssbl-boot partitions
|
||||
FLASHLAYOUT_PARTITION_DEVICE_basic_fsbl1-boot = "none"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_basic_ssbl-boot = "none"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_optee_fsbl1-boot = "none"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_optee_ssbl-boot = "none"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_trusted_fsbl1-boot = "none"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_trusted_ssbl-boot = "none"
|
||||
# Specific to manage partition erase for NOR-* boot
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-emmc_nandall = "${DEVICE_NAND}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-emmc_sdcardall = "${DEVICE_SDCARD}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-nand-4-256_emmcall = "${DEVICE_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-nand-4-256_emmcfsbl1 = "${DEVICE_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-nand-4-256_emmcfsbl2 = "${DEVICE_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-nand-4-256_sdcardall = "${DEVICE_SDCARD}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-sdcard_emmcall = "${DEVICE_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-sdcard_emmcfsbl1 = "${DEVICE_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-sdcard_emmcfsbl2 = "${DEVICE_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-sdcard_nandall = "${DEVICE_NAND}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_emmc = "none:fsbl1-boot ssbl-boot,${DEVICE_EMMC}:default"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nand-4-256 = "none:fsbl1-boot ssbl-boot,${DEVICE_NAND}:default"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_nor-sdcard = "none:fsbl1-boot ssbl-boot,${DEVICE_NOR}:default,${DEVICE_SDCARD}:${FLASHLAYOUT_PARTITION_IMAGES}"
|
||||
FLASHLAYOUT_PARTITION_DEVICE_sdcard = "none:fsbl1-boot ssbl-boot,${DEVICE_SDCARD}:default"
|
||||
|
||||
FLASHLAYOUT_PARTITION_OFFSET_fsbl1-boot = "0x0"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_ssbl-boot = "0x0"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_emmc_fsbl1 = "boot1"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_emmc_fsbl2 = "boot2"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_emmc_ssbl = "${DEVICE_START_OFFSET_mmc1}"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_nand-4-256_fsbl1 = "${DEVICE_START_OFFSET_nand0}"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_nor-sdcard_fsbl1 = "${DEVICE_START_OFFSET_nor0}"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_nor-sdcard_bootfs = "${DEVICE_START_OFFSET_mmc0}"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_nor-emmc_fsbl1 = "${DEVICE_START_OFFSET_nor0}"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_nor-emmc_bootfs = "${DEVICE_START_OFFSET_mmc1}"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_nor-nand-4-256_fsbl1 = "${DEVICE_START_OFFSET_nor0}"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_nor-nand-4-256_emptyfsbl1 = "${DEVICE_START_OFFSET_nand0}"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_sdcard_fsbl1 = "${DEVICE_START_OFFSET_mmc0}"
|
||||
# Specific to manage partition erase
|
||||
FLASHLAYOUT_PARTITION_OFFSET_nandall = "0x0"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_sdcardall = "0x0"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_emmcall = "0x0"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_emmcfsbl1 = "${FLASHLAYOUT_PARTITION_OFFSET_emmc_fsbl1}"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_emmcfsbl2 = "${FLASHLAYOUT_PARTITION_OFFSET_emmc_fsbl2}"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_emmc_fsbl1 = "${DEVICE_START_OFFSET_BOOT0_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_emmc_fsbl2 = "${DEVICE_START_OFFSET_BOOT1_EMMC}"
|
||||
FLASHLAYOUT_PARTITION_OFFSET_emmc_ssbl = "${DEVICE_START_OFFSET_EMMC}"
|
||||
|
||||
# Size defined in Kbytes
|
||||
FLASHLAYOUT_PARTITION_SIZE_fsbl1 = "256"
|
||||
FLASHLAYOUT_PARTITION_SIZE_nand-4-256_fsbl1 = "2048"
|
||||
FLASHLAYOUT_PARTITION_SIZE_fsbl2 = "256"
|
||||
FLASHLAYOUT_PARTITION_SIZE_ssbl = "2048"
|
||||
FLASHLAYOUT_PARTITION_SIZE_ssbl2 = "2048"
|
||||
FLASHLAYOUT_PARTITION_SIZE_env = "256"
|
||||
FLASHLAYOUT_PARTITION_SIZE_env = "512"
|
||||
FLASHLAYOUT_PARTITION_SIZE_teeh = "256"
|
||||
FLASHLAYOUT_PARTITION_SIZE_teed = "256"
|
||||
FLASHLAYOUT_PARTITION_SIZE_teed = "512"
|
||||
FLASHLAYOUT_PARTITION_SIZE_teex = "256"
|
||||
# Specific override for partition size as the configuration should follow
|
||||
# the U-Boot source code where these partition sizes are hard coded
|
||||
FLASHLAYOUT_PARTITION_SIZE_empty = "0"
|
||||
# Specific override for MTD partitions hard coded on U-Boot side
|
||||
FLASHLAYOUT_PARTITION_SIZE_nand-4-256_fsbl1 = "2048"
|
||||
FLASHLAYOUT_PARTITION_SIZE_nand-4-256_ssbl = "2048"
|
||||
FLASHLAYOUT_PARTITION_SIZE_nand-4-256_ssbl2 = "2048"
|
||||
FLASHLAYOUT_PARTITION_SIZE_nand-4-256_teeh = "512"
|
||||
FLASHLAYOUT_PARTITION_SIZE_nand-4-256_teed = "512"
|
||||
FLASHLAYOUT_PARTITION_SIZE_nand-4-256_teex = "512"
|
||||
FLASHLAYOUT_PARTITION_SIZE_empty = "0"
|
||||
FLASHLAYOUT_PARTITION_SIZE_emptyfsbl1 = "${FLASHLAYOUT_PARTITION_SIZE_nand-4-256_fsbl1}"
|
||||
FLASHLAYOUT_PARTITION_SIZE_emptyssbl = "${FLASHLAYOUT_PARTITION_SIZE_ssbl}"
|
||||
FLASHLAYOUT_PARTITION_SIZE_emptyssbl2 = "${FLASHLAYOUT_PARTITION_SIZE_ssbl2}"
|
||||
FLASHLAYOUT_PARTITION_SIZE_emptyteeh = "${FLASHLAYOUT_PARTITION_SIZE_nand-4-256_teeh}"
|
||||
FLASHLAYOUT_PARTITION_SIZE_emptyteed = "${FLASHLAYOUT_PARTITION_SIZE_nand-4-256_teed}"
|
||||
FLASHLAYOUT_PARTITION_SIZE_emptyteex = "${FLASHLAYOUT_PARTITION_SIZE_nand-4-256_teex}"
|
||||
FLASHLAYOUT_PARTITION_SIZE_bootfs = "${BOOTFS_PARTITION_SIZE}"
|
||||
FLASHLAYOUT_PARTITION_SIZE_vendorfs = "${VENDORFS_PARTITION_SIZE}"
|
||||
FLASHLAYOUT_PARTITION_SIZE_rootfs = "${IMAGE_ROOTFS_MAXSIZE}"
|
||||
FLASHLAYOUT_PARTITION_SIZE_ubifs = "none"
|
||||
FLASHLAYOUT_PARTITION_SIZE_userfs = "${USERFS_PARTITION_SIZE}"
|
||||
FLASHLAYOUT_PARTITION_SIZE_nor-sdcard_fsbl1 = "256"
|
||||
FLASHLAYOUT_PARTITION_SIZE_nor-sdcard_fsbl2 = "256"
|
||||
FLASHLAYOUT_PARTITION_SIZE_nor-sdcard_ssbl = "2048"
|
||||
FLASHLAYOUT_PARTITION_SIZE_nor-sdcard_env = "512"
|
||||
FLASHLAYOUT_PARTITION_SIZE_nor-sdcard_teeh = "256"
|
||||
FLASHLAYOUT_PARTITION_SIZE_nor-sdcard_teed = "512"
|
||||
FLASHLAYOUT_PARTITION_SIZE_nor-sdcard_teex = "256"
|
||||
|
||||
# Set binaries to use for each partition
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_fsbl1-boot = "tf-a.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_ssbl-boot = "u-boot.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_fsbl1 = "tf-a.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_basic_fsbl1 = "u-boot-spl.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_fsbl2 = "tf-a.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_basic_fsbl2 = "u-boot-spl.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_ssbl = "u-boot.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_basic_ssbl = "u-boot.img"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_ssbl2 = "u-boot.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_teeh = "tee-header_v2.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_teed = "tee-pageable_v2.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_teex = "tee-pager_v2.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_env = "none"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_fsbl1-boot = "arm-trusted-firmware/tf-a.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_ssbl-boot = "bootloader/u-boot.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_fsbl1 = "arm-trusted-firmware/tf-a.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_fsbl2 = "arm-trusted-firmware/tf-a.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_ssbl = "bootloader/u-boot.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_ssbl2 = "bootloader/u-boot.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_teeh = "optee/tee-header_v2.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_teed = "optee/tee-pageable_v2.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_teex = "optee/tee-pager_v2.stm32"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_ubifs = "${IMAGE_LINK_NAME}_nand_4_256_multivolume.ubi"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_bootfs = "${STM32MP_BOOTFS_IMAGE}-${DISTRO}-${MACHINE}.ext4"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_vendorfs = "${STM32MP_VENDORFS_IMAGE}-${DISTRO}-${MACHINE}.ext4"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_rootfs = "${IMAGE_LINK_NAME}.ext4"
|
||||
FLASHLAYOUT_PARTITION_BIN2LOAD_userfs = "${STM32MP_USERFS_IMAGE}-${DISTRO}-${MACHINE}.ext4"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Use the 'BIN2BOOT_REPLACE_PATTERNS' var to allow dynamic binary renaming for
|
||||
# the bootloader binaries. This is only required for fsbl1-boot and ssbl-boot
|
||||
# partitions that provides the binary to flash the device.
|
||||
# Use the 'FLASHLAYOUT_PARTITION_REPLACE_PATTERNS' var to allow dynamic binary
|
||||
# renaming for the bootloader binaries. This is only required for fsbl1-boot and
|
||||
# ssbl-boot partitions that provides the binary to flash the device.
|
||||
# The format to follow is:
|
||||
# '<PATTERN2REPLACE_1>;<PATTERN2SET_1> <PATTERN2REPLACE_2>;<PATTERN2SET_2>'
|
||||
# And the pattern to replace in binary name is only searched as:
|
||||
@@ -361,17 +258,14 @@ FLASHLAYOUT_PARTITION_BIN2LOAD_userfs = "${STM32MP_USERFS_IMAGE}-${DISTRO}
|
||||
# or
|
||||
# '-<PATTERN>-'
|
||||
# -----------------------------------------------------------------------------
|
||||
# The 'basic' bootscheme does not support Programmer mode, so use 'trusted' one
|
||||
# (valid for both fsbl1-boot and ssbl-boot)
|
||||
BIN2BOOT_REPLACE_PATTERNS_DEFAULT = "basic;trusted"
|
||||
# We use specific tf-a serialboot mode for any bootscheme for fsbl1-boot
|
||||
FLASHLAYOUT_PARTITION_REPLACE_PATTERNS_fsbl1-boot_append = " optee;serialboot trusted;serialboot"
|
||||
# For u-boot the 'optee' bootscheme is the same than trusted so use 'trusted'
|
||||
FLASHLAYOUT_PARTITION_REPLACE_PATTERNS_ssbl-boot_append = " optee;trusted"
|
||||
FLASHLAYOUT_PARTITION_REPLACE_PATTERNS_ssbl_append = " optee;trusted"
|
||||
FLASHLAYOUT_PARTITION_REPLACE_PATTERNS_ssbl2_append = " optee;trusted"
|
||||
|
||||
# The daughter board does not support Programmer mode, so use eval one
|
||||
# (valid for both fsbl1-boot and ssbl-boot)
|
||||
BIN2BOOT_REPLACE_PATTERNS_DEFAULT_append = " ed1;ev1"
|
||||
|
||||
# Apply for fsbl1-boot and ssbl-boot
|
||||
BIN2BOOT_REPLACE_PATTERNS_fsbl1-boot = "${BIN2BOOT_REPLACE_PATTERNS_DEFAULT}"
|
||||
BIN2BOOT_REPLACE_PATTERNS_ssbl-boot = "${BIN2BOOT_REPLACE_PATTERNS_DEFAULT}"
|
||||
|
||||
# For fsbl1-boot, the 'optee' bootscheme does not support Programmer mode, so
|
||||
# prefer the 'trusted' one.
|
||||
BIN2BOOT_REPLACE_PATTERNS_fsbl1-boot_append = " optee;trusted"
|
||||
FLASHLAYOUT_PARTITION_REPLACE_PATTERNS_fsbl1-boot_append = " ed1;ev1"
|
||||
FLASHLAYOUT_PARTITION_REPLACE_PATTERNS_ssbl-boot_append = " ed1;ev1"
|
||||
@@ -7,6 +7,7 @@ PREFERRED_PROVIDER_virtual/kernel = "linux-stm32mp"
|
||||
# u-boot
|
||||
# =========================================================================
|
||||
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-stm32mp"
|
||||
PREFERRED_PROVIDER_u-boot = "u-boot-stm32mp"
|
||||
|
||||
# =========================================================================
|
||||
# trusted-firmware-a
|
||||
|
||||
@@ -0,0 +1,117 @@
|
||||
#@DESCRIPTION: STM32MP machine storage device configuration
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define device storage name and type mapping
|
||||
# -----------------------------------------------------------------------------
|
||||
DEVICE_STORAGE ?= "EMMC:mmc1, NAND:nand0, NOR:nor0, SDCARD:mmc0"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define device storage name alias
|
||||
# -----------------------------------------------------------------------------
|
||||
DEVICE_STORAGE_NAMES += "EMMC"
|
||||
DEVICE_STORAGE_NAMES += "NAND"
|
||||
DEVICE_STORAGE_NAMES += "NOR"
|
||||
DEVICE_STORAGE_NAMES += "SDCARD"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define device storage type
|
||||
# -----------------------------------------------------------------------------
|
||||
DEVICE_STORAGE_TYPES += "mmc0"
|
||||
DEVICE_STORAGE_TYPES += "mmc1"
|
||||
DEVICE_STORAGE_TYPES += "mmc2"
|
||||
DEVICE_STORAGE_TYPES += "nand0"
|
||||
DEVICE_STORAGE_TYPES += "nor0"
|
||||
|
||||
python () {
|
||||
"""
|
||||
This function configure dynamically the needed alias between generic storage
|
||||
device name and device type.
|
||||
Output for this function is the initialization of:
|
||||
DEVICE_<device_name> = '<device_type>'
|
||||
DEVICE_<device_type> = '<device_name>'
|
||||
"""
|
||||
device_storage_config = d.getVar('DEVICE_STORAGE') or ''
|
||||
if not device_storage_config:
|
||||
return
|
||||
if not device_storage_config.strip():
|
||||
return
|
||||
if len(device_storage_config.split(',')) > 0:
|
||||
# Init supported device storage configuration
|
||||
supported_device_names = (d.getVar('DEVICE_STORAGE_NAMES') or '').split()
|
||||
supported_device_types = (d.getVar('DEVICE_STORAGE_TYPES') or '').split()
|
||||
# Loop for all storage device configurations
|
||||
for device_storage in device_storage_config.split(','):
|
||||
device_name = device_storage.split(':')[0].strip()
|
||||
device_type = device_storage.split(':')[1].strip()
|
||||
# Check for configuration consistency
|
||||
if device_name and device_type:
|
||||
# Make sure configuration is correctly done
|
||||
if device_name not in supported_device_names:
|
||||
bb.fatal('Wrong DEVICE_STORAGE configuration: "%s" is not part of supported device name (%s)' % (device_name, supported_device_names))
|
||||
if device_type not in supported_device_types:
|
||||
bb.fatal('Wrong DEVICE_STORAGE configuration: "%s" is not part of supported device type (%s)' % (device_type, supported_device_types))
|
||||
# Configure alias
|
||||
d.setVar('DEVICE_%s' % device_name, device_type)
|
||||
d.setVar('DEVICE_%s' % device_type, device_name)
|
||||
else:
|
||||
bb.fatal('Wrong DEVICE_STORAGE configuration: expecting DEVICE_STORAGE = "<device_name1>:<devie_type1>,<device_name2>:<device_type2>"')
|
||||
}
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# EMMC
|
||||
# Extra space is required to store 'Protective MBR' and 'Primary GPT Header'
|
||||
# Currently the required size is 17kBytes (i.e. 0x4400)
|
||||
# We need to align this size to get the first offset to use
|
||||
DEVICE_START_OFFSET_EMMC ?= "0x00080000"
|
||||
DEVICE_ALIGNMENT_SIZE_EMMC ?= "0x00080000"
|
||||
|
||||
# Specific to EMMC, there are two boot partitions using specific offset to access
|
||||
DEVICE_START_OFFSET_BOOT0_EMMC ?= "boot1"
|
||||
DEVICE_START_OFFSET_BOOT1_EMMC ?= "boot2"
|
||||
|
||||
# Configure the rootfs partition uid used in gpt partition table for EMMC
|
||||
DEVICE_PARTUUID_ROOTFS_EMMC ?= "${@d.getVar(d.expand('DEVICE_PARTUUID_ROOTFS_${DEVICE_EMMC}')) or ''}"
|
||||
|
||||
# Configure the list of boards that enable EMMC
|
||||
DEVICE_BOARD_ENABLE_EMMC += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'emmc', '${STM32MP_DT_FILES_ED}', '', d)}"
|
||||
DEVICE_BOARD_ENABLE_EMMC += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'emmc', '${STM32MP_DT_FILES_EV}', '', d)}"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# NAND
|
||||
DEVICE_START_OFFSET_NAND ?= "0x00000000"
|
||||
DEVICE_ALIGNMENT_SIZE_NAND ?= "0x00040000"
|
||||
|
||||
# Configure the list of boards that enable EMMC
|
||||
DEVICE_BOARD_ENABLE_NAND += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'nand-4-256', '${STM32MP_DT_FILES_ED}', '', d)}"
|
||||
DEVICE_BOARD_ENABLE_NAND += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'nand-4-256', '${STM32MP_DT_FILES_EV}', '', d)}"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# NOR
|
||||
DEVICE_START_OFFSET_NOR ?= "0x00000000"
|
||||
DEVICE_ALIGNMENT_SIZE_NOR ?= "0x00010000"
|
||||
|
||||
# Configure the list of boards that enable EMMC
|
||||
DEVICE_BOARD_ENABLE_NOR += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'nor-sdcard' , '${STM32MP_DT_FILES_EV}', '', d)}"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# SDCARD
|
||||
# Extra space is required to store 'Protective MBR' and 'Primary GPT Header'
|
||||
# Currently the required size is 17kBytes (i.e. 0x4400)
|
||||
# We need to align this size to get the first offset to use
|
||||
DEVICE_START_OFFSET_SDCARD ?= "0x00004400"
|
||||
DEVICE_ALIGNMENT_SIZE_SDCARD ?= "0x00000200"
|
||||
|
||||
# Configure the rootfs partition uid used in gpt partition table for SDCARD
|
||||
DEVICE_PARTUUID_ROOTFS_SDCARD ?= "${@d.getVar(d.expand('DEVICE_PARTUUID_ROOTFS_${DEVICE_SDCARD}')) or ''}"
|
||||
|
||||
# Configure the list of boards that enable SDCARD
|
||||
DEVICE_BOARD_ENABLE_SDCARD += "${@bb.utils.contains('BOOTDEVICE_LABELS', 'sdcard', '${STM32MP_DT_FILES_DK}', '', d)}"
|
||||
DEVICE_BOARD_ENABLE_SDCARD += "${@bb.utils.contains_any('BOOTDEVICE_LABELS', [ 'sdcard', 'nor-sdcard' ], '${STM32MP_DT_FILES_ED}', '', d)}"
|
||||
DEVICE_BOARD_ENABLE_SDCARD += "${@bb.utils.contains_any('BOOTDEVICE_LABELS', [ 'sdcard', 'nor-sdcard' ], '${STM32MP_DT_FILES_EV}', '', d)}"
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Fixed configuration from U-Boot source code
|
||||
# -----------------------------------------------------------------------------
|
||||
DEVICE_PARTUUID_ROOTFS_mmc0 ?= "e91c4e10-16e6-4c0e-bd0e-77becf4a3582"
|
||||
DEVICE_PARTUUID_ROOTFS_mmc1 ?= "491f6117-415d-4f53-88c9-6e0de54deac6"
|
||||
DEVICE_PARTUUID_ROOTFS_mmc2 ?= "fd58f1c7-be0d-4338-8ee9-ad8f050aeb18"
|
||||
@@ -1,9 +1,13 @@
|
||||
#@TYPE: Machine
|
||||
#@NAME: stm32mp1-disco
|
||||
#@DESCRIPTION: Configuration for STM32MP157C-DK2 board (Trusted boot and SDcard only)
|
||||
#@DESCRIPTION: [EXAMPLE] STM32MP157C-DK2 board ONLY with Trusted boot and SDcard support
|
||||
#@NEEDED_BSPLAYERS: layers/meta-openembedded/meta-oe layers/meta-openembedded/meta-python
|
||||
|
||||
include conf/machine/include/st-machine-common-stm32mp.inc
|
||||
include conf/machine/include/st-machine-providers-stm32mp.inc
|
||||
|
||||
# Define specific familly common machine name
|
||||
MACHINEOVERRIDES .= ":stm32mp1common"
|
||||
|
||||
# =========================================================================
|
||||
# Chip architecture
|
||||
@@ -14,7 +18,6 @@ include conf/machine/include/tune-cortexa7.inc
|
||||
# =========================================================================
|
||||
# boot scheme
|
||||
# =========================================================================
|
||||
#BOOTSCHEME_LABELS += "basic"
|
||||
BOOTSCHEME_LABELS += "trusted"
|
||||
#BOOTSCHEME_LABELS += "optee"
|
||||
|
||||
@@ -24,8 +27,6 @@ BOOTSCHEME_LABELS += "trusted"
|
||||
# Define the boot device supported
|
||||
#BOOTDEVICE_LABELS += "emmc"
|
||||
#BOOTDEVICE_LABELS += "nand-4-256"
|
||||
#BOOTDEVICE_LABELS += "nor-emmc"
|
||||
#BOOTDEVICE_LABELS += "nor-nand-4-256"
|
||||
#BOOTDEVICE_LABELS += "nor-sdcard"
|
||||
BOOTDEVICE_LABELS += "sdcard"
|
||||
|
||||
@@ -33,25 +34,26 @@ BOOTDEVICE_LABELS += "sdcard"
|
||||
# Machine settings
|
||||
# =========================================================================
|
||||
# Define list of devicetree per board
|
||||
#STM32MP_DT_FILES_DK += "stm32mp157a-dk1"
|
||||
#STM32MP_DT_FILES_DK += "stm32mp157a-dk1 stm32mp157d-dk1"
|
||||
#STM32MP_DT_FILES_DK += "stm32mp157c-dk2 stm32mp157f-dk2"
|
||||
STM32MP_DT_FILES_DK += "stm32mp157c-dk2"
|
||||
#STM32MP_DT_FILES_ED += "stm32mp157c-ed1"
|
||||
#STM32MP_DT_FILES_EV += "stm32mp157c-ev1"
|
||||
#STM32MP_DT_FILES_ED += "stm32mp157c-ed1 stm32mp157f-ed1"
|
||||
#STM32MP_DT_FILES_EV += "stm32mp157a-ev1 stm32mp157c-ev1 stm32mp157d-ev1 stm32mp157f-ev1"
|
||||
|
||||
# =========================================================================
|
||||
# Machine features
|
||||
# =========================================================================
|
||||
MACHINE_FEATURES += "splashscreen"
|
||||
MACHINE_FEATURES += "watchdog"
|
||||
MACHINE_FEATURES += "bluetooth"
|
||||
MACHINE_FEATURES += "wifi"
|
||||
MACHINE_FEATURES += "${@'gpu' if d.getVar('ACCEPT_EULA_'+d.getVar('MACHINE')) == '1' else ''}"
|
||||
# Splashscreen enabled
|
||||
MACHINE_FEATURES += "splashscreen"
|
||||
MACHINE_FEATURES += "m4copro"
|
||||
|
||||
# =========================================================================
|
||||
# Image
|
||||
# =========================================================================
|
||||
# Add ubi FSTYPES to default ones for nand volumes
|
||||
#IMAGE_FSTYPES += "stmultiubi"
|
||||
# Bluetooth
|
||||
BLUETOOTH_LIST += "linux-firmware-bluetooth-bcm4343"
|
||||
# Wifi
|
||||
WIFI_LIST += "linux-firmware-bcm43430"
|
||||
|
||||
# =========================================================================
|
||||
# Kernel
|
||||
@@ -62,6 +64,8 @@ MACHINE_FEATURES += "splashscreen"
|
||||
# Define the devicetree for Linux A7 examples
|
||||
LINUX_A7_EXAMPLES_DT += "stm32mp157c-dk2-a7-examples"
|
||||
#LINUX_A7_EXAMPLES_DT += "stm32mp157c-ev1-a7-examples"
|
||||
#LINUX_A7_EXAMPLES_DT += "stm32mp157f-dk2-a7-examples"
|
||||
#LINUX_A7_EXAMPLES_DT += "stm32mp157f-ev1-a7-examples"
|
||||
|
||||
# =========================================================================
|
||||
# M4 copro
|
||||
@@ -69,6 +73,8 @@ LINUX_A7_EXAMPLES_DT += "stm32mp157c-dk2-a7-examples"
|
||||
# Define the devicetree for M4 example
|
||||
CUBE_M4_EXAMPLES_DT += "stm32mp157c-dk2-m4-examples"
|
||||
#CUBE_M4_EXAMPLES_DT += "stm32mp157c-ev1-m4-examples"
|
||||
#CUBE_M4_EXAMPLES_DT += "stm32mp157f-dk2-m4-examples"
|
||||
#CUBE_M4_EXAMPLES_DT += "stm32mp157f-ev1-m4-examples"
|
||||
|
||||
# Define specific board reference to use
|
||||
M4_BOARDS = "STM32MP157C-DK2"
|
||||
@@ -76,20 +82,20 @@ M4_BOARDS = "STM32MP157C-DK2"
|
||||
# =========================================================================
|
||||
# extlinux configuration
|
||||
# =========================================================================
|
||||
# As example, modify the default boot config for each target to M4 config
|
||||
#UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-dk2_sdcard = "stm32mp157c-dk2-m4-examples-sdcard"
|
||||
#UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-dk2_sdcard-optee = "stm32mp157c-dk2-m4-examples-sdcard-optee"
|
||||
# As example, modify the default boot config to M4 config
|
||||
#UBOOT_EXTLINUX_DEFAULT_LABEL_stm32mp157c-dk2 = "stm32mp157c-dk2-m4-examples"
|
||||
|
||||
# =========================================================================
|
||||
# WIC for sdcard raw image
|
||||
# =========================================================================
|
||||
WIC_CREATE_EXTRA_ARGS = "--no-fstab-update"
|
||||
WKS_FILE_DEPENDS ?= " \
|
||||
u-boot-stm32mp \
|
||||
tf-a-stm32mp \
|
||||
${@bb.utils.contains('BOOTSCHEME_LABELS', 'optee', 'optee-os-stm32mp', '', d)} \
|
||||
virtual/bootloader \
|
||||
virtual/trusted-firmware-a \
|
||||
virtual/trusted-firmware-a-serialboot \
|
||||
${@bb.utils.contains('BOOTSCHEME_LABELS', 'optee', 'virtual/optee-os', '', d)} \
|
||||
st-image-bootfs \
|
||||
st-image-vendorfs \
|
||||
${@bb.utils.contains('ST_VENDORFS','1','st-image-vendorfs', '', d)} \
|
||||
st-image-userfs \
|
||||
"
|
||||
TRUSTED_WIC_FILE = "${@bb.utils.contains('ST_VENDORFS','1','sdcard-stm32mp157c-dk2-trusted-vendorfs-1GB.wks.in','sdcard-stm32mp157c-dk2-trusted-1GB.wks.in',d)}"
|
||||
|
||||
@@ -1,9 +1,13 @@
|
||||
#@TYPE: Machine
|
||||
#@NAME: stm32mp1-eval
|
||||
#@DESCRIPTION: Configuration for STM32MP157C-EV1 board (Trusted boot and SDcard only)
|
||||
#@DESCRIPTION: [EXAMPLE] STM32MP157C-EV1 board ONLY with Trusted boot and SDcard support
|
||||
#@NEEDED_BSPLAYERS: layers/meta-openembedded/meta-oe layers/meta-openembedded/meta-python
|
||||
|
||||
include conf/machine/include/st-machine-common-stm32mp.inc
|
||||
include conf/machine/include/st-machine-providers-stm32mp.inc
|
||||
|
||||
# Define specific familly common machine name
|
||||
MACHINEOVERRIDES .= ":stm32mp1common"
|
||||
|
||||
# =========================================================================
|
||||
# Chip architecture
|
||||
@@ -14,7 +18,6 @@ include conf/machine/include/tune-cortexa7.inc
|
||||
# =========================================================================
|
||||
# boot scheme
|
||||
# =========================================================================
|
||||
#BOOTSCHEME_LABELS += "basic"
|
||||
BOOTSCHEME_LABELS += "trusted"
|
||||
#BOOTSCHEME_LABELS += "optee"
|
||||
|
||||
@@ -24,8 +27,6 @@ BOOTSCHEME_LABELS += "trusted"
|
||||
# Define the boot device supported
|
||||
#BOOTDEVICE_LABELS += "emmc"
|
||||
#BOOTDEVICE_LABELS += "nand-4-256"
|
||||
#BOOTDEVICE_LABELS += "nor-emmc"
|
||||
#BOOTDEVICE_LABELS += "nor-nand-4-256"
|
||||
#BOOTDEVICE_LABELS += "nor-sdcard"
|
||||
BOOTDEVICE_LABELS += "sdcard"
|
||||
|
||||
@@ -33,25 +34,26 @@ BOOTDEVICE_LABELS += "sdcard"
|
||||
# Machine settings
|
||||
# =========================================================================
|
||||
# Define list of devicetree per board
|
||||
#STM32MP_DT_FILES_DK += "stm32mp157a-dk1"
|
||||
#STM32MP_DT_FILES_DK += "stm32mp157c-dk2"
|
||||
#STM32MP_DT_FILES_ED += "stm32mp157c-ed1"
|
||||
#STM32MP_DT_FILES_DK += "stm32mp157a-dk1 stm32mp157d-dk1"
|
||||
#STM32MP_DT_FILES_DK += "stm32mp157c-dk2 stm32mp157f-dk2"
|
||||
#STM32MP_DT_FILES_ED += "stm32mp157c-ed1 stm32mp157f-ed1"
|
||||
#STM32MP_DT_FILES_EV += "stm32mp157a-ev1 stm32mp157c-ev1 stm32mp157d-ev1 stm32mp157f-ev1"
|
||||
STM32MP_DT_FILES_EV += "stm32mp157c-ev1"
|
||||
|
||||
# =========================================================================
|
||||
# Machine features
|
||||
# =========================================================================
|
||||
MACHINE_FEATURES += "splashscreen"
|
||||
MACHINE_FEATURES += "watchdog"
|
||||
#MACHINE_FEATURES += "bluetooth"
|
||||
#MACHINE_FEATURES += "wifi"
|
||||
MACHINE_FEATURES += "${@'gpu' if d.getVar('ACCEPT_EULA_'+d.getVar('MACHINE')) == '1' else ''}"
|
||||
# Splashscreen enabled
|
||||
MACHINE_FEATURES += "splashscreen"
|
||||
MACHINE_FEATURES += "m4copro"
|
||||
|
||||
# =========================================================================
|
||||
# Image
|
||||
# =========================================================================
|
||||
# Add ubi FSTYPES to default ones for nand volumes
|
||||
#IMAGE_FSTYPES += "stmultiubi"
|
||||
# Bluetooth
|
||||
#BLUETOOTH_LIST += "linux-firmware-bluetooth-bcm4343"
|
||||
# Wifi
|
||||
#WIFI_LIST += "linux-firmware-bcm43430"
|
||||
|
||||
# =========================================================================
|
||||
# Kernel
|
||||
@@ -62,6 +64,8 @@ KERNEL_MODULE_AUTOLOAD = "goodix"
|
||||
# Define the devicetree for Linux A7 examples
|
||||
#LINUX_A7_EXAMPLES_DT += "stm32mp157c-dk2-a7-examples"
|
||||
LINUX_A7_EXAMPLES_DT += "stm32mp157c-ev1-a7-examples"
|
||||
#LINUX_A7_EXAMPLES_DT += "stm32mp157f-dk2-a7-examples"
|
||||
#LINUX_A7_EXAMPLES_DT += "stm32mp157f-ev1-a7-examples"
|
||||
|
||||
# =========================================================================
|
||||
# M4 copro
|
||||
@@ -69,6 +73,8 @@ LINUX_A7_EXAMPLES_DT += "stm32mp157c-ev1-a7-examples"
|
||||
# Define the devicetree for M4 example
|
||||
#CUBE_M4_EXAMPLES_DT += "stm32mp157c-dk2-m4-examples"
|
||||
CUBE_M4_EXAMPLES_DT += "stm32mp157c-ev1-m4-examples"
|
||||
#CUBE_M4_EXAMPLES_DT += "stm32mp157f-dk2-m4-examples"
|
||||
#CUBE_M4_EXAMPLES_DT += "stm32mp157f-ev1-m4-examples"
|
||||
|
||||
# Define specific board reference to use
|
||||
M4_BOARDS = "STM32MP157C-EV1"
|
||||
@@ -77,6 +83,5 @@ M4_BOARDS = "STM32MP157C-EV1"
|
||||
# extlinux configuration
|
||||
# =========================================================================
|
||||
# As example, modify the default boot config for each target to M4 config
|
||||
#UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-ev1_sdcard = "stm32mp157c-ev1-m4-examples-sdcard"
|
||||
#UBOOT_EXTLINUX_DEFAULT_LABEL_mp157c-ev1_sdcard-optee = "stm32mp157c-ev1-m4-examples-sdcard-optee"
|
||||
#UBOOT_EXTLINUX_DEFAULT_LABEL_stm32mp157c-ev1 = "stm32mp157c-ev1-m4-examples"
|
||||
|
||||
+19
-14
@@ -4,6 +4,10 @@
|
||||
#@NEEDED_BSPLAYERS: layers/meta-openembedded/meta-oe layers/meta-openembedded/meta-python
|
||||
|
||||
include conf/machine/include/st-machine-common-stm32mp.inc
|
||||
include conf/machine/include/st-machine-providers-stm32mp.inc
|
||||
|
||||
# Define specific familly common machine name
|
||||
MACHINEOVERRIDES .= ":stm32mp1common"
|
||||
|
||||
# =========================================================================
|
||||
# Chip architecture
|
||||
@@ -14,7 +18,6 @@ include conf/machine/include/tune-cortexa7.inc
|
||||
# =========================================================================
|
||||
# boot scheme
|
||||
# =========================================================================
|
||||
BOOTSCHEME_LABELS += "basic"
|
||||
BOOTSCHEME_LABELS += "trusted"
|
||||
BOOTSCHEME_LABELS += "optee"
|
||||
|
||||
@@ -24,8 +27,6 @@ BOOTSCHEME_LABELS += "optee"
|
||||
# Define the boot device supported
|
||||
BOOTDEVICE_LABELS += "emmc"
|
||||
BOOTDEVICE_LABELS += "nand-4-256"
|
||||
BOOTDEVICE_LABELS += "nor-emmc"
|
||||
BOOTDEVICE_LABELS += "nor-nand-4-256"
|
||||
BOOTDEVICE_LABELS += "nor-sdcard"
|
||||
BOOTDEVICE_LABELS += "sdcard"
|
||||
|
||||
@@ -33,25 +34,25 @@ BOOTDEVICE_LABELS += "sdcard"
|
||||
# Machine settings
|
||||
# =========================================================================
|
||||
# Define list of devicetree per board
|
||||
STM32MP_DT_FILES_DK += "stm32mp157a-dk1"
|
||||
STM32MP_DT_FILES_DK += "stm32mp157c-dk2"
|
||||
STM32MP_DT_FILES_ED += "stm32mp157c-ed1"
|
||||
STM32MP_DT_FILES_EV += "stm32mp157c-ev1"
|
||||
STM32MP_DT_FILES_DK += "stm32mp157a-dk1 stm32mp157d-dk1"
|
||||
STM32MP_DT_FILES_DK += "stm32mp157c-dk2 stm32mp157f-dk2"
|
||||
STM32MP_DT_FILES_ED += "stm32mp157c-ed1 stm32mp157f-ed1"
|
||||
STM32MP_DT_FILES_EV += "stm32mp157a-ev1 stm32mp157c-ev1 stm32mp157d-ev1 stm32mp157f-ev1"
|
||||
|
||||
# =========================================================================
|
||||
# Machine features
|
||||
# =========================================================================
|
||||
MACHINE_FEATURES += "splashscreen"
|
||||
MACHINE_FEATURES += "watchdog"
|
||||
MACHINE_FEATURES += "bluetooth"
|
||||
MACHINE_FEATURES += "wifi"
|
||||
MACHINE_FEATURES += "${@'gpu' if d.getVar('ACCEPT_EULA_'+d.getVar('MACHINE')) == '1' else ''}"
|
||||
# Splashscreen enabled
|
||||
MACHINE_FEATURES += "splashscreen"
|
||||
MACHINE_FEATURES += "m4copro"
|
||||
|
||||
# =========================================================================
|
||||
# Image
|
||||
# =========================================================================
|
||||
# Add ubi FSTYPES to default ones for nand volumes
|
||||
IMAGE_FSTYPES += "stmultiubi"
|
||||
# Bluetooth
|
||||
BLUETOOTH_LIST += "linux-firmware-bluetooth-bcm4343"
|
||||
# Wifi
|
||||
WIFI_LIST += "linux-firmware-bcm43430"
|
||||
|
||||
# =========================================================================
|
||||
# Kernel
|
||||
@@ -62,6 +63,8 @@ KERNEL_MODULE_AUTOLOAD = "goodix"
|
||||
# Define the devicetree for Linux A7 examples
|
||||
LINUX_A7_EXAMPLES_DT += "stm32mp157c-dk2-a7-examples"
|
||||
LINUX_A7_EXAMPLES_DT += "stm32mp157c-ev1-a7-examples"
|
||||
LINUX_A7_EXAMPLES_DT += "stm32mp157f-dk2-a7-examples"
|
||||
LINUX_A7_EXAMPLES_DT += "stm32mp157f-ev1-a7-examples"
|
||||
|
||||
# =========================================================================
|
||||
# M4 copro
|
||||
@@ -69,3 +72,5 @@ LINUX_A7_EXAMPLES_DT += "stm32mp157c-ev1-a7-examples"
|
||||
# Define the devicetree for M4 example
|
||||
CUBE_M4_EXAMPLES_DT += "stm32mp157c-dk2-m4-examples"
|
||||
CUBE_M4_EXAMPLES_DT += "stm32mp157c-ev1-m4-examples"
|
||||
CUBE_M4_EXAMPLES_DT += "stm32mp157f-dk2-m4-examples"
|
||||
CUBE_M4_EXAMPLES_DT += "stm32mp157f-ev1-m4-examples"
|
||||
Reference in new issue
Block a user