PXI: Difference between revisions

Hallowizer (talk | contribs)
added FATFS command 0xF
Hallowizer (talk | contribs)
added the message structure
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
PXI is the inter-processor communication interface between the ARM7 and ARM9.  Most user code runs on the ARM9 and makes requests to the ARM7 to access various hardware (SD, NAND, AES, etc).   Each module is identified by a tag.
PXI is the inter-processor communication interface between the ARM7 and ARM9.  Most user code runs on the ARM9 and makes requests to the ARM7 to access various hardware (SD, NAND, AES, etc). Each module is identified by a tag.


== IPC message structure ==
IPC messages are stored in a single integer, and are sent to the IPC FIFO.
{| class="wikitable"
! Bit(s)
! Description
|-
| 31-6
| Arguments
|-
| 5
| No handler (when no handler exists, the message is sent back with this bit enabled)
|-
| 4-0
| Service
|}
== Known PXI services ==
* PXI 0x2: Boot (used by [[boot2]])
** subcommand 1: send 8 times to halt
** subcommand 4: first sync
** subcommand 5: second sync
** subcommand 6: third sync
** subcommand 0xF: used by ARM9 to halt ARM7, but any unknown subcommand can do this
* PXI 0xB: CARD
* PXI 0xB: CARD
* PXI 0x13: AES
* PXI 0x13: AES