diff options
| author | Max Krummenacher <max.krummenacher@toradex.com> | 2024-09-28 16:14:26 +0200 |
|---|---|---|
| committer | Max Krummenacher <max.krummenacher@toradex.com> | 2024-10-22 00:13:56 +0200 |
| commit | 825d6a47b4fbfdc7afc8eabc13b2c4463e0c4fcc (patch) | |
| tree | 528ba9589f7bb2f83c74bfb343182a4cc0650ee3 | |
| parent | 44d7efaded47b4b25674d22ee964a4f03b9981d2 (diff) | |
| download | meta-freescale-825d6a47b4fbfdc7afc8eabc13b2c4463e0c4fcc.tar.gz | |
imx-system-manager: import recipe from meta-imx
imx-system-manager at 6.6.36-2.1.0 NXP BSP release.
This provides among others the DDR configuration which may require
machine dependent configurations. Thus additionally add a virtual
provider.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
| -rw-r--r-- | dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager.inc | 42 | ||||
| -rw-r--r-- | dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager_1.0.0.bb | 23 |
2 files changed, 65 insertions, 0 deletions
diff --git a/dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager.inc b/dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager.inc new file mode 100644 index 000000000..23d5bfc27 --- /dev/null +++ b/dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager.inc | |||
| @@ -0,0 +1,42 @@ | |||
| 1 | # Set generic compiler for system manager core | ||
| 2 | INHIBIT_DEFAULT_DEPS = "1" | ||
| 3 | DEPENDS = "${SM_COMPILER}" | ||
| 4 | SM_COMPILER ?= "gcc-arm-none-eabi-native" | ||
| 5 | PROVIDES += "virtual/imx-system-manager" | ||
| 6 | |||
| 7 | inherit deploy | ||
| 8 | |||
| 9 | # Set monitor mode for none, one, or two | ||
| 10 | PACKAGECONFIG[m0] = "M=0,,,,,m1 m2" | ||
| 11 | PACKAGECONFIG[m1] = ",,,,,m0 m2" | ||
| 12 | PACKAGECONFIG[m2] = "M=2,,,,,m0 m1" | ||
| 13 | |||
| 14 | SYSTEM_MANAGER_CONFIG ?= "INVALID" | ||
| 15 | |||
| 16 | LDFLAGS[unexport] = "1" | ||
| 17 | |||
| 18 | EXTRA_OEMAKE = " \ | ||
| 19 | V=y \ | ||
| 20 | SM_CROSS_COMPILE=arm-none-eabi- \ | ||
| 21 | ${PACKAGECONFIG_CONFARGS} \ | ||
| 22 | " | ||
| 23 | |||
| 24 | do_configure() { | ||
| 25 | oe_runmake config=${SYSTEM_MANAGER_CONFIG} clean | ||
| 26 | oe_runmake config=${SYSTEM_MANAGER_CONFIG} cfg | ||
| 27 | } | ||
| 28 | |||
| 29 | do_compile() { | ||
| 30 | oe_runmake config=${SYSTEM_MANAGER_CONFIG} | ||
| 31 | } | ||
| 32 | |||
| 33 | do_install[noexec] = "1" | ||
| 34 | |||
| 35 | addtask deploy after do_compile | ||
| 36 | do_deploy() { | ||
| 37 | install -D -p -m 0644 \ | ||
| 38 | ${B}/build/${SYSTEM_MANAGER_CONFIG}/${SYSTEM_MANAGER_FIRMWARE_BASENAME}.bin \ | ||
| 39 | ${DEPLOYDIR}/${SYSTEM_MANAGER_FIRMWARE_BASENAME}-${SYSTEM_MANAGER_CONFIG}.bin | ||
| 40 | } | ||
| 41 | |||
| 42 | COMPATIBLE_MACHINE = "(mx95-generic-bsp)" | ||
diff --git a/dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager_1.0.0.bb b/dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager_1.0.0.bb new file mode 100644 index 000000000..eceaaa674 --- /dev/null +++ b/dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager_1.0.0.bb | |||
| @@ -0,0 +1,23 @@ | |||
| 1 | SUMMARY = "i.MX System Manager Firmware" | ||
| 2 | DESCRIPTION = "\ | ||
| 3 | The System Manager (SM) is a firmware that runs on a Cortex-M processor on \ | ||
| 4 | many NXP i.MX processors. The Cortex-M is the boot core, runs the boot ROM \ | ||
| 5 | which loads the SM (and other boot code), and then branches to the SM. The \ | ||
| 6 | SM then configures some aspects of the hardware such as isolation mechanisms \ | ||
| 7 | and then starts other cores in the system. After starting these cores, it \ | ||
| 8 | enters a service mode where it provides access to clocking, power, sensor, \ | ||
| 9 | and pin control via a client RPC API based on ARM's System Control and \ | ||
| 10 | Management Interface (SCMI)." | ||
| 11 | LICENSE = "BSD-3-Clause" | ||
| 12 | LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=b66f32a90f9577a5a3255c21d79bc619" | ||
| 13 | |||
| 14 | SRC_URI = "${IMX_SYSTEM_MANAGER_SRC};branch=${SRCBRANCH}" | ||
| 15 | IMX_SYSTEM_MANAGER_SRC ?= "git://github.com/nxp-imx/imx-sm.git;protocol=https" | ||
| 16 | SRCBRANCH = "master" | ||
| 17 | SRCREV = "709deccd9338399eb39b5cf99a60eab4fa60d539" | ||
| 18 | |||
| 19 | S = "${WORKDIR}/git" | ||
| 20 | |||
| 21 | require imx-system-manager.inc | ||
| 22 | |||
| 23 | PACKAGECONFIG ??= "m2" | ||
