PTMSYSM:LaunchFIRMRebootSystem: Difference between revisions

From 3dbrew
Jump to navigation Jump to search
Created page with "=Request= {| class="wikitable" border="1" |- ! Index Word ! Description |- | 0 | Header code [0x04090080] |- | 1-2 | u64 passed to PMApp command 0x..."
 
Steveice10 (talk | contribs)
 
(2 intermediate revisions by 2 users not shown)
Line 9: Line 9:
|-
|-
| 1-2
| 1-2
| u64 passed to [[Process_Manager_Services|PMApp]] command 0x0006XXXX.
| u64, timeout passed to [[PMApp:TerminateNonEssential]].
|}
|}


Line 26: Line 26:


=Description=
=Description=
This uses [[Process_Manager_Services|PMApp]] command 0x0006XXXX with the input u64. This then uses [[SVC|svcKernelSetState]] with Type1 and Param0-Param3 = 0. Then this uses [[SVC|svcKernelSetState]] with Type3 where Param0=1 to trigger copying the ARM11 kernel [[FIRM]] parameters buffer to FCRAM+0, then [[SVC|svcKernelSetState]] with Type7 is used to trigger a hardware system reboot via the MCU.
This uses [[PMApp:PrepareForReboot]] with the input timeout. This then uses [[SVC|svcKernelSetState]] with Type1 and Param0-Param3 = 0. Then this uses [[SVC|svcKernelSetState]] with Type3 where Param0=1 to trigger copying the ARM11 kernel [[FIRM]] parameters buffer to FCRAM+0, then [[SVC|svcKernelSetState]] with Type7 is used to trigger a hardware system reboot via the MCU.

Latest revision as of 02:43, 20 January 2016

Request

Index Word Description
0 Header code [0x04090080]
1-2 u64, timeout passed to PMApp:TerminateNonEssential.

Response

Index Word Description
0 Header code
1 Result code

Description

This uses PMApp:PrepareForReboot with the input timeout. This then uses svcKernelSetState with Type1 and Param0-Param3 = 0. Then this uses svcKernelSetState with Type3 where Param0=1 to trigger copying the ARM11 kernel FIRM parameters buffer to FCRAM+0, then svcKernelSetState with Type7 is used to trigger a hardware system reboot via the MCU.