PTMSYSM:LaunchFIRMRebootSystem: Difference between revisions

From 3dbrew
Jump to navigation Jump to search
Dazzozo (talk | contribs)
No edit summary
Steveice10 (talk | contribs)
 
Line 26: Line 26:


=Description=
=Description=
This uses [[PMApp:TerminateNonEssential]] 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.
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.