Enable optee imx8qxp without spl

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

Enable optee imx8qxp without spl

Jump to solution
1,482 Views
jmcdowell
Contributor II

Hello,

Can imx-mkimage be modified in order to enable optee for the flash target (as it is for the flash_spl) target? https://source.codeaurora.org/external/imx/imx-mkimage/tree/iMX8QX/soc.mak?h=imx_5.4.70_2.3.0

I understand the need for SPL prior to the Arm Trusted Firmware (as shown is Figure 2 of https://www.nxp.com/docs/en/user-guide/IMX_PORTING_GUIDE.pdf) for the i.MX 8M SoC in order to initialize DDR, however I did not expect this dependency for the i.MX 8X where I thought this was taken care of by the SCFW.

Is there a true dependency of tee.bin on SPL or is it just a matter of modifying imx-mkimage in order to include tee.bin in the imx-boot image for the flash target?  If the latter, can you provide guidance on how to make this modification?

Justin

0 Kudos
Reply
1 Solution
1,369 Views
jmcdowell
Contributor II

Yuri,

I found that AN13275 (How to Enable BSP L5.4 on a New iMX8/8X Board) contained the SPL porting documentation that I was looking for that I had not seen in the i.MX BSP Porting Guide.  Following AN13275 and the u-boot documentation that it referenced, I was able to get SPL boot with OP-TEE working on our platform.

Thanks.

Justin

 

View solution in original post

3 Replies
1,370 Views
jmcdowell
Contributor II

Yuri,

I found that AN13275 (How to Enable BSP L5.4 on a New iMX8/8X Board) contained the SPL porting documentation that I was looking for that I had not seen in the i.MX BSP Porting Guide.  Following AN13275 and the u-boot documentation that it referenced, I was able to get SPL boot with OP-TEE working on our platform.

Thanks.

Justin

 

1,408 Views
Yuri
NXP Employee
NXP Employee
0 Kudos
Reply
1,398 Views
jmcdowell
Contributor II

Yuri,

Thanks for getting back to me on this -- I was just about to follow up...  Are you suggesting that I pursue ProSupport in order to just answer the question of whether or not the tee.bin can be packaged in a container with the scu-fw, uboot and atf?  Or are you suggesting that I pursue ProSupport in order to port SPL to our custom platform?

At this point, I'm assuming that the dependency on SPL is real.  Even though the imx8x does not require SPL for DDR configuration, I'm guessing that the SCU ROM can not handle a container with scu-fw, atf, uboot, and tee.bin.  And so the approach when tee.bin is needed must be that the SCU ROM just handles a container with scu-fw and SPL, and then SPL can handle the subsequent container with atf, uboot and tee.bin.  However, since I couldn't find this stated in any documentation, I wanted to confirm with you before pursuing the effort of getting SPL working since we already have the non-SPL boot flow working on our platform...

So I am now going to assume that SPL is required.

However, I would not have expected porting the SPL to require ProSupport.  I expected that it would be comparable effort to porting uboot-imx to our platform...

So I guess my primary question to you at this point is: Is the effort to port SPL to a customer platform expected to require ProSupport and/or proprietary knowledge, or should a developer generally experienced with efforts such as porting uboot/kernel to custom boards be able to accomplish?  If the effort does not require ProSupport/proprietary knowledge, does NXP provide any documentation regarding porting SPL for the imx8x?

The BSP that we're using on our board is based off of NXP's 5.4.70_2.3.0, in which the imx8qxp_mek machine file does not support the flash_spl target.  I do see that the latest (hardknott - 5.10.35_2.0.0) release does support the flash_spl target in the imx8qxp_mek machine file, but it is not clear to me whether or not migrating to the latest BSP should be required for this to work...  Or whether or not there is a particular version of u-boot-imx that is required...

Thanks,
Justin

0 Kudos
Reply