Closed ZhikuiRen closed 4 years ago
This depends on your platform. ARMv8 devices usually require TF-A for the runtime services, ARMv7 platforms often use OP-TEE for stuff like PSCI (except newer platforms like stm32). Note that BL1 is usually the BootROM which is unchangable on production SoCs and I don't know whether U-Boot implements BL2 and the necessary runtime services.
It is ARMv7 (Cortex A7) Is there an example on how to setup the config? I was following the OP-TEE build example, which uses the Trusted Firmware.
Is there a particular reason why you'd like to avoid Trusted Firmware? The other setups I've heard if are U-Boot based, similar to to what you're describing. Other than that I've only heard of proprietary solutions.
The main motivation is to remove dependency and do development work in parallel. Is there an example somewhere or a pointer to what CONFIG should be modified?
On ARMv7 OP-TEE doesn't depend directly on anything, but I will need something in order to be loaded into memory of course. There's no need to configure OP-TEE in a certain way to enable loading by TF-A, U-Boot or whatever.
On ARMv7 systems, Secure Monitor is part of OP-TEE OS. So there isn't any dependency on TF-A for runtime services. So as @jenswi-linaro mentioned, TF-A BL2 or U-Boot SPL only plays role to load OP-TEE into memory. Have a look at below ARMv7 based platforms which either rely on TF-A BL2 or U-Boot SPL for loading:
Thanks everyone for helping. I have some idea to try now. Closing it.
Can OP-TEE build without Trusted Firmware? Is the following a valid boot sequence: U-Boot-SPL as bl1, U-Boot as bl2 and OP-TEE as bl32 ?