F00D Communication Ports

From Vita Development Wiki
Revision as of 22:01, 6 January 2019 by Yifan Lu (talk | contribs) (4 revisions imported)


These ports are used to communication between Trustzone and the F00D Secure Kernel and Second Loader

F00D messages

These are sent to ARM using the lower 16-bits at 0xE0000000. When ARM has read it, it is set to 0.

ARM can write a 32-bit response to 0xE0000010. For ARM->F00D, bit0 is used to indictate the message was written by ARM.

     1 = Request succeded
     4 = Debug string
 0x101 = Main init started
 0x102 = Sm can be loaded/resumed
 0x103 = Sm resumed successfully
 0x104 = Sm was shut down
 0x106 = Main shutting down
 0x107 = Suspend beginning
 0x108 = Ready for suspending, when using the async version.
0x8016 = Error: Invalid address range
0x802F = Error: Failed to init E003, E006.

Known Ports

Address RW Use Description
0xE0000000 RW Status Read for status
0xE0000010 RW Command Send a command to F00D