Trustzone on Jetson Tx2


I’m trying to implement security on Jetson Tx2 using TrustZone feature.
I was wondering if there are any documentations/tutorials that specifically tells you how to do some of the following :

  1. Boot into Secure World, load minimal OS and boot into Normal World a full host Linux OS
  2. Secure Monitor program that can be called to switch between the Secure World OS and Normal World OS
  3. Partitioning memory and peripherals between Normal World and Secure World

Some of the questions I have are: How do I know I am in the Secure World? Is there some way to put a terminal into the Secure World so I an have some kind of UI? Does that mean the graphics driver somehow need to be multiplexed between the Secure World and Normal World?

I am a bit overwhelmed since I am starting a bit from scratch here, so I am not sure I even know what I don’t know. So any help would be great! Especially regards to what Secure World OS can be loaded and how Secure World can interface with Normal World kernel structures to control for example network I/O.

(Copied the ques from as that also not clarifies properly.)

You could refer to this Forum thread for our earlier response to similar question,

We will publish a security and secure boot technical training video soon and that will cover Trusted OS and secure monitor very briefly during boot process for TX2. But again our L4T secure OS schedule for public availability is still unknown at this point.