F00D Communication Ports

From Vita Development Wiki
Revision as of 22:02, 6 January 2019 by Yifan Lu (talk | contribs) (Yifan Lu moved page Private:Communication Ports to F00D Communication Ports without leaving a redirect)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Ports

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