F00D Communication Ports

From Vita Development Wiki
Revision as of 22:12, 2 September 2021 by CelesteBlue (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search


These ports are used to communication between ARM TZ and cMeP Second Loader and Secure Kernel.

Cmep messages

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

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

     1 = Request succeeded
     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 permissions Use Description
0xE0000000 RW Status Read for status
0xE0000010 RW Command Send a command to cMeP