PCV services: Difference between revisions

No edit summary
Line 58: Line 58:
|}
|}


GetRtcTime / SetRtcTime directly accesses the max77620_rtc0 device.
= bpc:c =
This is "nn::bpc::IBoardPowerControlManager".
 
[2.0.0+] This service was replaced by [[#bpc|bpc]].
 
{| class="wikitable" border="1"
|-
! Cmd || Name
|-
| 0 || ShutdownSystem
|-
| 1 || RebootSystem
|-
| 2 || GetWakeupReason
|-
| 3 || GetShutdownReason
|-
| 4 || GetAcOk
|-
| 5 || GetBoardPowerControlEvent
|}
 
= bpc:b =
This is "nn::bpc::IPowerButtonManager".
 
[2.0.0+] This service was merged into [[#bpc|bpc]].
 
{| class="wikitable" border="1"
|-
! Cmd || Name
|-
| 0 || GetSleepButtonState
|-
| 1 || GetPowerEvent
|}
 
= bpc:w =
This is "nn::bpc::IWakeupConfigManager".
 
[2.0.0+] This service was merged into [[#bpc|bpc]].
 
{| class="wikitable" border="1"
|-
! Cmd || Name
|-
| 0 || CreateWakeupTimer
|-
| 1 || CancelWakeupTimer
|-
| 2 || [[#EnableWakeupTimerOnDevice]]
|}


= pcv =
= pcv =
Line 526: Line 576:
! Cmd || Name
! Cmd || Name
|-
|-
| 0 || GetRtcTime
| 0 || [[#GetRtcTime]]
|-
|-
| 1 || SetRtcTime
| 1 || [[#SetRtcTime]]
|-
|-
| 2 || SetRtcClientUnknownBool
| 2 || [[#SetUpRtcResetOnShutdown]]
|-
|-
| 3 || GetRtcResetDetected
| 3 || [[#GetRtcResetDetected]]
|-
|-
| 4 || ClearRtcResetDetected
| 4 || [[#ClearRtcResetDetected]]
|}
|}


Commands 0, 1, 3, 4 call the same internal functions as bpc:r, except they take an extra u32 [[Bus_services#Known_Devices_2|device code]], where bpc:r hardcodes 0x3B000001 (max77620_rtc0).
== GetRtcTime ==
Same as GetRtcTime from [[#bpc:r|bpc:r]], but takes an extra [[Bus_services#Known_Devices_2|DeviceCode]], which [[#bpc:r|bpc:r]] hardcodes to 0x3B000001 (max77620_rtc0) instead.
 
== SetRtcTime ==
Same as SetRtcTime from [[#bpc:r|bpc:r]], but takes an extra [[Bus_services#Known_Devices_2|DeviceCode]], which [[#bpc:r|bpc:r]] hardcodes to 0x3B000001 (max77620_rtc0) instead.
 
== SetUpRtcResetOnShutdown ==
Takes an u8 '''DoReset''' and a [[Bus_services#Known_Devices_2|DeviceCode]]. Similar to SetUpRtcResetOnShutdown from [[#bpc:r|bpc:r]], but this version assigns the provided boolean value on a per-client basis (instead of a global variable) and checks it when the current [[PSC_services#Power_Management_States|power state]] is "ReadyShutdown".
 
== GetRtcResetDetected ==
Same as GetRtcResetDetected from [[#bpc:r|bpc:r]], but takes an extra [[Bus_services#Known_Devices_2|DeviceCode]], which [[#bpc:r|bpc:r]] hardcodes to 0x3B000001 (max77620_rtc0) instead.


Command 2 takes a u8 bool and a u32 device code; it opens an i2c session to the device code, and sets *(i2c_session_client_object + 0x38) = bool.
== ClearRtcResetDetected ==
Same as ClearRtcResetDetected from [[#bpc:r|bpc:r]], but takes an extra [[Bus_services#Known_Devices_2|DeviceCode]], which [[#bpc:r|bpc:r]] hardcodes to 0x3B000001 (max77620_rtc0) instead.


= time:u, time:a, time:s =
= time:u, time:a, time:s =