[OPTEE-OS 1/5] pkg: bsp-imx: Add support to cross compilation #3126
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Introduction
This is the first of a series of 5 PRs that will introduce OPTEE-OS to EVE.
All changes were broken into multiple PRs because it affects many components that produces a big building time: it needs to rebuild cross-compilers, eve-alpine, kernel and bsp-imx. Breaking into multiples PRs will also help reviewers to visualize all the changes in an incremental way.
General outcome:
OPTEE-OS should be supported on the following devices of i.MX8M platform:
An OPTEE-OS image is also built for QEMU (for future use)
How to test
Generate live images for the mentioned devices. EVE image should boot successfully (loading OPTEE-OS during boot). EVE will also recognize TrustZone and create /dev/tee0 and /dev/teepriv0 devices.
Notes
Although tests with Trusted Applications (TAs) were made, i.e., TAs were loaded and ran successfully from EVE-OS to TrustZone, in this stage only OPTEE-OS it's being introduced. TAs will be introduced in a next development phase.
Changes in this PR
bsp-imx package builds u-boot and ATF for different i.MX8M platforms, which can be very time consuming. This commit adds support to cross compilation so it can build faster on x86. This package is only useful for ARM64, so a check is added to skip calling make for any other architecture.