Hi experts,
I am trying to boot the linux by my bootloader which is running on EL3 level.(switch to EL1 when I jump to the kernel)
The trustzone is not necessay for me, so I don't want to use it.
However, I'm comfused if the arm-trusted-firmware is needed?
Some boards like Juno and Hikey have used the arm-trusted-firmware .
Regards,
Jorney
Thanks for your replay.
Can u-boot be used as the secure code?
u-boot can be boot to EL3, and some configs has been implemented . Anything else?
Glad to see your relay.
It's help for me to evaluate the design of my code for armv8.
Thank you !
your answer is also helpful for me .
Thank you!
Of course, any software could be secure code. That depends on your implementation.
The point is, ARM TF(Trusted-Firmware) has already implemented many features and some of which are required.
For example:
* Secure/Non-secure world switching
* PSCI interface
* Interrupt initialization
* EL3 runtime service
The recommended scenario is:
ARM TF (secure) -> UEFI/UBoot/Hypervisor (non-secure) -> OS (non-secure)
And OS calls PSCI interface for power management events (on/off/suspend/...) through "SMC" which causes a synchronous exception to EL3 at which level ARM TF runtime service (BL3-1) is running. Only secure code can access power controller.
If you don't care about secure/non-secure, and want to leave Linux to SEL1(secure-EL1). Then I think at least you need implement PSCI interface in your own firmware (whatever it's UBoot or bare-metal).
As ARM Trusted-Firmware is a standard/rich-feature/open-source software stack, so I suggest to study/use it. It will give you better compatibility for any new feature of ARM.