Difference between revisions of "PDN Services"
Jump to navigation
Jump to search
Purpasmart (talk | contribs) |
m (oops →PDN I2S Service "pdn:i") |
||
(6 intermediate revisions by 2 users not shown) | |||
Line 8: | Line 8: | ||
|- | |- | ||
| 0x00010000 | | 0x00010000 | ||
− | | This loads | + | | GetWakeStatus. This loads [[PDN Registers#PDN_WAKE_ENABLE|PDN_WAKE_ENABLE]] and [[PDN Registers#PDN_WAKE_REASON|PDN_WAKE_REASON]], then writes them to cmdreplyword[2] and cmdreplyword[3]. |
|- | |- | ||
| 0x00020080 | | 0x00020080 | ||
− | | | + | | ConfigureWakeEvents. [[PDN Registers#PDN_WAKE_REASON|PDN_WAKE_REASON]] = cmdword[2] & cmdword[1]. This then writes cmdword[1] to [[PDN Registers#PDN_WAKE_ENABLE|PDN_WAKE_ENABLE]]. [[PDN Registers#PDN_WAKE_REASON|PDN_WAKE_REASON]] = cmdword[2] & ~cmdword[1]. |
|- | |- | ||
| 0x00030040 | | 0x00030040 | ||
− | | | + | | Acknowledge. Writes cmdword[1] to [[PDN Registers#PDN_WAKE_REASON|PDN_WAKE_REASON]]. |
|} | |} | ||
Line 24: | Line 24: | ||
|- | |- | ||
| 0x000100C0 | | 0x000100C0 | ||
− | | ( | + | | (bool enable, bool reset, bool deassertResetAfterReset) Enables and/or resets the DSP and/or holds it in reset |
|} | |} | ||
− | = PDN | + | = PDN I2S Service "pdn:i" = |
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
Line 34: | Line 34: | ||
|- | |- | ||
| 0x00010040 | | 0x00010040 | ||
− | | This sets bit0 in | + | | This sets bit0 in [[PDN Registers#PDN_I2S1_CNT|PDN_I2S1_CNT]] to u8 cmd+4. |
|- | |- | ||
| 0x00020040 | | 0x00020040 | ||
− | | This sets bit1 in | + | | This sets bit1 in [[PDN Registers#PDN_I2S2_CNT|PDN_I2S2_CNT]] to u8 cmd+4. |
|} | |} | ||
+ | |||
+ | Used by [[Codec Services]]. | ||
= PDN GSP service "pdn:g" = | = PDN GSP service "pdn:g" = | ||
Line 47: | Line 49: | ||
|- | |- | ||
| 0x000100C0 | | 0x000100C0 | ||
− | | ( | + | | (bool enableClock, bool resetEngines, bool resetRegisters) Enables and/or resets the GPU, see [[PDN Registers#PDN_GPU_CNT|PDN_GPU_CNT]] |
|} | |} | ||
Line 57: | Line 59: | ||
|- | |- | ||
| 0x00010040 | | 0x00010040 | ||
− | | This sets bit0 in | + | | This sets bit0 in [[PDN Registers#PDN_CAMERA_CNT|PDN_CAMERA_CNT]] to u8 cmd+4. |
|- | |- | ||
| 0x000200000 | | 0x000200000 | ||
− | | This writes | + | | This writes [[PDN Registers#PDN_CAMERA_CNT|PDN_CAMERA_CNT]] & 1 to u8 cmdreply+8. |
|} | |} |
Latest revision as of 00:55, 20 January 2021
PDN PTM Service "pdn:s"[edit]
Command Header | Description |
---|---|
0x00010000 | GetWakeStatus. This loads PDN_WAKE_ENABLE and PDN_WAKE_REASON, then writes them to cmdreplyword[2] and cmdreplyword[3]. |
0x00020080 | ConfigureWakeEvents. PDN_WAKE_REASON = cmdword[2] & cmdword[1]. This then writes cmdword[1] to PDN_WAKE_ENABLE. PDN_WAKE_REASON = cmdword[2] & ~cmdword[1]. |
0x00030040 | Acknowledge. Writes cmdword[1] to PDN_WAKE_REASON. |
PDN DSP Service "pdn:d"[edit]
Command Header | Description |
---|---|
0x000100C0 | (bool enable, bool reset, bool deassertResetAfterReset) Enables and/or resets the DSP and/or holds it in reset |
PDN I2S Service "pdn:i"[edit]
Command Header | Description |
---|---|
0x00010040 | This sets bit0 in PDN_I2S1_CNT to u8 cmd+4. |
0x00020040 | This sets bit1 in PDN_I2S2_CNT to u8 cmd+4. |
Used by Codec Services.
PDN GSP service "pdn:g"[edit]
Command Header | Description |
---|---|
0x000100C0 | (bool enableClock, bool resetEngines, bool resetRegisters) Enables and/or resets the GPU, see PDN_GPU_CNT |
PDN Camera Service "pdn:c"[edit]
Command Header | Description |
---|---|
0x00010040 | This sets bit0 in PDN_CAMERA_CNT to u8 cmd+4. |
0x000200000 | This writes PDN_CAMERA_CNT & 1 to u8 cmdreply+8. |