cancel
Showing results for 
Search instead for 
Did you mean: 

OPTEE backwards compatibility

mirceacaprioru
Associate

Hi,

We are using the meta-st-stm32mp layer in out Yocto build system. We have had the system run on the Dunfell distribution up until now with OPTEE as the secure OS.

For Dunfell the version of OPTEE is 3.12 along with patches from ST, a we tried to upgrade to Kirkstone which uses OPTEE version 3.16. From what we see the secure storage is no longer compatible with the new version:

We get errors like this when using the 3.16 version and the secure storage has been created with 3.12

# optee_example_hello_world 
optee_example_hello_world: TEEC_Opensession failed with code 0xf0100001 origin 0x3

We did another test with the official OpenST distribution on a DK2 board fist running Dunfell then upgrading to Kirkstone and we get the same results.

We have asked upstream OP-TEE is there is an issue between the versions for backwards compatibility related to secure storage:

https://github.com/OP-TEE/optee_os/issues/6296

After this we went further and did a test with the upstream version of OP-TEE 3.12 and 3.16 running on QEMU, but here we did not see this issue.

Can you confirm that there is a breaking change on OP-TEE between dunfell and kirkstone and what can we do to fix it?

Thank you,

Mircea

1 ACCEPTED SOLUTION

Accepted Solutions
mirceacaprioru
Associate

We found what the issue was. We had different hardware keys in between 3.12 and 3.16.

View solution in original post

2 REPLIES 2
mirceacaprioru
Associate

We found what the issue was. We had different hardware keys in between 3.12 and 3.16.

Bernard PUEL
ST Employee

Hello Mircea,

This is good news. I was about to ask for more information to give some hints where to find ...

Probably due to HUK implementation in V4.1.0 = https://wiki.st.com/stm32mpu-ecosystem-v4/wiki/STM32_MPU_OpenSTLinux_release_note#OP-TEE

Should be easier for the next updates of your product.

Thanks for the information and have a good day.