OP TEE bring up in LS1012A

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

OP TEE bring up in LS1012A

1,301 Views
zcchai
Contributor I

Hello,

I am trying to bring up OP TEE in LS1012A FRWY, and have read through LSDK document and manual in 

OP-TEE  , however, these documents don't solve all the questions. Anyone have detailed steps how to bring up OP TEE ?

Especially: 

1) Do I have to enable secure boot to run OP TEE? 

2) From OP TEE.pdf , I learned that I need to generate a ppa.itb file by using

$ flex-builder -c ppa-optee -m ls1012afrwy

which generate  flexbuild/build/firmware/ppa/soc-ls1012/ppa.itb.

Then what? the document doesn't complete the puzzle. How do I use that file? Do I need to manually burn it in the Nor flash? and How?

3) I also learned I need to create a OPTEE-OS binary by using

$ flex-builder -c optee_os -m ls1012afrwy

which outputs the bin file to flexbuild/packages/apps/optee_os/out/arm-plat-ls/core/tee_ls1012afrwy.bin

Again, it is confusing how can I use that file, what is next step ?

4) In https://community.nxp.com/thread/475890 , I know I have to build client , test and OS to run the tests:

$ flex-builder -c optee_os  -a arm64

$ flex-builder -c optee_client  -a arm64

$ flex-builder -c optee_test  -a arm64

Again, then what? Manually copy or use flex-build to create a new SD image? 

Anyway, I couldn't solve these puzzles, is there any detailed instruction on how to bring up OP TEE in NXP board?

 Thanks in advance

0 Kudos
2 Replies

986 Views
bpe
NXP Employee
NXP Employee

My apologies for not responding to this sooner, please find my comments inline below:

>1) Do I have to enable secure boot to run OP TEE?
>
[Platon] Yes.

>From OP TEE.pdf , I learned that I need to generate a ppa.itb file by using
>
>$ flex-builder -c ppa-optee -m ls1012afrwy
>
>which generate  flexbuild/build/firmware/ppa/soc-ls1012/ppa.itb.
>
>Then what? the document doesn't complete the puzzle. How do I use that file? Do I need to manually burn it >in the Nor flash? and How?
>
>3) I also learned I need to create a OPTEE-OS binary by using
>
>$ flex-builder -c optee_os -m ls1012afrwy
>
>which outputs the bin file to flexbuild/packages/apps/optee_os/out/arm-plat-ls/core/tee_ls1012afrwy.bin
>
>Again, it is confusing how can I use that file, what is next step ?
>
>
>4) In How to build Trusted Applications for the OP-TEE , I know I have to build client , test and OS to run >the tests:
>
>$ flex-builder -c optee_os  -a arm64
>
>$ flex-builder -c optee_client  -a arm64
>
>$ flex-builder -c optee_test  -a arm64
>
>Again, then what? Manually copy or use flex-build to create a new SD image?


[Platon] The steps in the doc you mentioned explain how to build everything manually.
As far as I understand, LSDK 18.06 does already have CONFIG_BUILD_OPTEE_OS
CONFIG_BUILD_OPTEE_CLIENT CONFIG_BUILD_OPTEE_TEST options enabled by default,
so you don't have to do it by hand. Build the firmware, build the rootfs,
then re-deploy according to the LSDK documentation. If, however, you want
to build storage-test application attached to this post  you should follow the doc from the

same post to build it by hand, then manually transfer it to the target as it is not part of

the LSDK.


Have a great day,
Platon

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

986 Views
zcchai
Contributor I

 Hi Platon,

Thanks. After a few try and error, I have managed to bring up OP TEE successfully. 

There are a few notes:

1. I am using LSDK 18.09. So in this version, OP TEE can be brought up without enabling Secure boot, which is really nice.

2. The original build of OP TEE couldn't be brought up on my ls1012frwy board. The problem is the build system doesn't pick the TEE binary version with the right memory size. After $ flex-builder -c optee_os -m ls1012afrwy, there are two binaries under flexbuild/packages/apps/optee_os/out/arm-plat-ls/core/ : tee_ls1012afrwy.bin and tee_ls1012afrwy_512mb.bin, so after I use tee_ls1012afrwy_512mb.bin, the board can boot up.

0 Kudos