PCV services: Difference between revisions
No edit summary |
|||
(2 intermediate revisions by the same user not shown) | |||
Line 16: | Line 16: | ||
| 4 || [[#GetAcOk]] | | 4 || [[#GetAcOk]] | ||
|- | |- | ||
| 5 || [[# | | 5 || [[#GetPowerEvent]] | ||
|- | |- | ||
| 6 || [2.0.0-13.2.1] [[#GetSleepButtonState]] | | 6 || [2.0.0-13.2.1] [[#GetSleepButtonState]] | ||
|- | |- | ||
| 7 || [2.0.0+] [[# | | 7 || [2.0.0+] [[#GetPowerButtonEvent]] | ||
|- | |- | ||
| 8 || [2.0.0-9.2.0] [[#CreateWakeupTimer]] | | 8 || [2.0.0-9.2.0] [[#CreateWakeupTimer]] | ||
Line 36: | Line 36: | ||
| 14 || [6.0.0+] [[#GetPowerButton]] | | 14 || [6.0.0+] [[#GetPowerButton]] | ||
|- | |- | ||
| 15 || [10.0.0+] [[# | | 15 || [10.0.0+] [[#SetUpRtcResetOnShutdown]] | ||
|} | |} | ||
Line 54: | Line 54: | ||
No input. Returns an output bool. | No input. Returns an output bool. | ||
== | == GetPowerEvent == | ||
Takes an input [[#BoardPowerControlEventTarget|BoardPowerControlEventTarget]]. Returns an output Event handle. | Takes an input [[#BoardPowerControlEventTarget|BoardPowerControlEventTarget]]. Returns an output Event handle. | ||
Line 60: | Line 60: | ||
No input. Returns an output [[#SleepButtonState|SleepButtonState]]. | No input. Returns an output [[#SleepButtonState|SleepButtonState]]. | ||
== | == GetPowerButtonEvent == | ||
Takes an input [[#EventTarget|EventTarget]]. Returns an output Event handle. | Takes an input [[#EventTarget|EventTarget]]. Returns an output Event handle. | ||
Line 86: | Line 86: | ||
No input. Returns an output bool '''IsPushed'''. | No input. Returns an output bool '''IsPushed'''. | ||
== | == SetUpRtcResetOnShutdown == | ||
No input/output. Enables an internal wakeup timer when calling [[#ShutdownSystem|ShutdownSystem]] or [[#RebootSystem|RebootSystem]]. | No input/output. Enables an internal wakeup timer when calling [[#ShutdownSystem|ShutdownSystem]] or [[#RebootSystem|RebootSystem]]. | ||
Line 143: | Line 141: | ||
| 4 || [[#GetAcOk]] | | 4 || [[#GetAcOk]] | ||
|- | |- | ||
| 5 || [[# | | 5 || [[#GetPowerEvent]] | ||
|} | |} | ||
Line 157: | Line 155: | ||
| 0 || [[#GetSleepButtonState]] | | 0 || [[#GetSleepButtonState]] | ||
|- | |- | ||
| 1 || [[# | | 1 || [[#GetPowerButtonEvent]] | ||
|} | |} | ||
Line 380: | Line 378: | ||
| 1 || [[#GetTemperatureThresholds|GetTemperatureThresholds]] | | 1 || [[#GetTemperatureThresholds|GetTemperatureThresholds]] | ||
|- | |- | ||
| 2 || [[# | | 2 || [[#NotifyTemperature|NotifyTemperature]] | ||
|- | |- | ||
| 3 || [[# | | 3 || [[#GetClkrstStateTable|GetClkrstStateTable]] | ||
|- | |- | ||
| 4 || [[# | | 4 || [[#GetClkrstStateTableUpdateEvent|GetClkrstStateTableUpdateEvent]] | ||
|- | |- | ||
| 5 || [[# | | 5 || [[#GetClkrstStateTableCount|GetClkrstStateTableCount]] | ||
|- | |- | ||
| 6 || [15.0.0+] | | 6 || [15.0.0+] PrintClockTree | ||
|- | |||
| 7 || [20.0.0+] | |||
|} | |} | ||
Line 394: | Line 394: | ||
Takes an input [[#Module|DeviceCode]] and an input u32. Returns an [[#IClkrstSession]]. | Takes an input [[#Module|DeviceCode]] and an input u32. Returns an [[#IClkrstSession]]. | ||
== | == NotifyTemperature == | ||
Takes an input float. No output. | |||
== GetClkrstStateTable == | |||
Takes a type-0xA output buffer of [[#ModuleState|ModuleState]] and an input s32 '''MaxCount'''. Returns an output s32 '''OutCount'''. | |||
[7.0.0+] The type-0xA output buffer was replaced with a type-0x22 output buffer. | |||
== GetClkrstStateTableUpdateEvent == | |||
No input. Returns an output Event handle. | No input. Returns an output Event handle. | ||
== | == GetClkrstStateTableCount == | ||
No input. Returns 0x1A. | No input. Returns 0x1A. | ||
Line 411: | Line 415: | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 0 || | | 0 || EnableClock | ||
|- | |- | ||
| 1 || | | 1 || DisableClock | ||
|- | |- | ||
| 2 || | | 2 || AssertReset | ||
|- | |- | ||
| 3 || | | 3 || DeassertReset | ||
|- | |- | ||
| 4 || | | 4 || EnablePower | ||
|- | |- | ||
| 5 || | | 5 || DisablePower | ||
|- | |- | ||
| 6 || | | 6 || GetModuleState | ||
|- | |- | ||
| 7 || SetClockRate | | 7 || SetClockRate | ||
Line 429: | Line 433: | ||
| 8 || GetClockRate | | 8 || GetClockRate | ||
|- | |- | ||
| 9 || | | 9 || SetMinimumVoltageClockRate | ||
|- | |- | ||
| 10 || GetPossibleClockRates | | 10 || GetPossibleClockRates | ||
Line 435: | Line 439: | ||
| 11 || GetDvfsTable | | 11 || GetDvfsTable | ||
|- | |- | ||
| 12 || [14.0.0+] | | 12 || [14.0.0+] IsParentClock | ||
|- | |- | ||
| 13 || [14.0.0+] | | 13 || [14.0.0+] SetParentClock | ||
|- | |||
| 14 || [18.0.0+] | |||
|- | |||
| 15 || [18.0.0+] | |||
|} | |} | ||
Line 466: | Line 474: | ||
| 0 || [[#OpenSession_2|OpenSession]] | | 0 || [[#OpenSession_2|OpenSession]] | ||
|- | |- | ||
| 1 || [[# | | 1 || [[#GetRegulatorStateTable|GetRegulatorStateTable]] | ||
|- | |- | ||
| 2 || [[# | | 2 || [[#GetRegulatorStateTableUpdateEvent|GetRegulatorStateTableUpdateEvent]] | ||
|- | |- | ||
| 3 || [[# | | 3 || [[#GetRegulatorStateTableCount|GetRegulatorStateTableCount]] | ||
|} | |} | ||
Line 476: | Line 484: | ||
Takes an input [[#PowerDomain|DeviceCode]] and returns an [[#IRegulatorSession]]. | Takes an input [[#PowerDomain|DeviceCode]] and returns an [[#IRegulatorSession]]. | ||
== | == GetRegulatorStateTable == | ||
Takes a type-0xA output buffer of [[#PowerDomainState|PowerDomainState]] and an input s32 '''MaxCount'''. Returns an output s32 '''OutCount'''. | |||
[7.0.0+] The type-0xA output buffer was replaced with a type-0x22 output buffer. | |||
== GetRegulatorStateTableUpdateEvent == | |||
No input. Returns an output Event handle. | No input. Returns an output Event handle. | ||
== | == GetRegulatorStateTableCount == | ||
No input. Returns 0x3. | No input. Returns 0x3. | ||
Line 493: | Line 502: | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 0 || | | 0 || RequestOutput | ||
|- | |- | ||
| 1 || | | 1 || CancelOutputRequest | ||
|- | |- | ||
| 2 || | | 2 || IsOutputEnabled | ||
|- | |- | ||
| 3 || | | 3 || GetVoltageRangeInMicroVolt | ||
|- | |- | ||
| 4 || | | 4 || GetVoltageInMicroVolt | ||
|- | |- | ||
| 5 || | | 5 || RequestVoltageInMicroVolt | ||
|- | |- | ||
| 6 || | | 6 || CancelVoltageRequest | ||
|- | |- | ||
| 7 || [13.0.0+] [[#GetMinimumOffStateHoldTime|GetMinimumOffStateHoldTime]] | | 7 || [13.0.0+] [[#GetMinimumOffStateHoldTime|GetMinimumOffStateHoldTime]] | ||
Line 511: | Line 520: | ||
| 8 || [13.0.0+] [[#RequestMinimumOffStateHoldTime|RequestMinimumOffStateHoldTime]] | | 8 || [13.0.0+] [[#RequestMinimumOffStateHoldTime|RequestMinimumOffStateHoldTime]] | ||
|- | |- | ||
| 9 || [13.0.0+] [[# | | 9 || [13.0.0+] [[#CancelMinimumOffStateHoldTimeRequest|CancelMinimumOffStateHoldTimeRequest]] | ||
|} | |} | ||
=== GetMinimumOffStateHoldTime === | === GetMinimumOffStateHoldTime === | ||
No input. Returns an output u64. | No input. Returns an output u64. | ||
Line 522: | Line 529: | ||
Takes an input u64. No output. | Takes an input u64. No output. | ||
=== | === CancelMinimumOffStateHoldTimeRequest === | ||
No input/output. | No input/output. | ||
Line 536: | Line 541: | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 0 || [[# | | 0 || [[#GetTimeInSeconds|GetTimeInSeconds]] | ||
|- | |- | ||
| 1 || [[# | | 1 || [[#SetTimeInSeconds|SetTimeInSeconds]] | ||
|- | |- | ||
| 2 || [[# | | 2 || [[#SetResetOnShutdown|SetResetOnShutdown]] | ||
|- | |- | ||
| 3 || [[# | | 3 || [[#GetResetDetected|GetResetDetected]] | ||
|- | |- | ||
| 4 || [[# | | 4 || [[#ClearResetDetected|ClearResetDetected]] | ||
|- | |- | ||
| 10 || [10.0.0+] [[# | | 10 || [10.0.0+] [[#EnableAlarm|EnableAlarm]] | ||
|- | |- | ||
| 11 || [10.0.0+] [[#DisableRtcAlarm|DisableRtcAlarm]] | | 11 || [10.0.0+] [[#DisableRtcAlarm|DisableRtcAlarm]] | ||
|- | |||
| 12 || [18.0.0+] | |||
|- | |||
| 13 || [18.0.0+] | |||
|} | |} | ||
== | [20.0.0+] Cmd13 now takes a total of 4-bytes of input instead of 8-bytes and returns a total of 2-bytes of output. | ||
== GetTimeInSeconds == | |||
Same as [[#GetRtcTime|GetRtcTime]], but takes an input [[Bus_services#I2cDevice|DeviceCode]] ([[#bpc:r|bpc:r]] uses hardcoded value 0x3B000001). | Same as [[#GetRtcTime|GetRtcTime]], but takes an input [[Bus_services#I2cDevice|DeviceCode]] ([[#bpc:r|bpc:r]] uses hardcoded value 0x3B000001). | ||
== | == SetTimeInSeconds == | ||
Same as [[#SetRtcTime|SetRtcTime]], but takes an input [[Bus_services#I2cDevice|DeviceCode]] ([[#bpc:r|bpc:r]] uses hardcoded value 0x3B000001). | Same as [[#SetRtcTime|SetRtcTime]], but takes an input [[Bus_services#I2cDevice|DeviceCode]] ([[#bpc:r|bpc:r]] uses hardcoded value 0x3B000001). | ||
== | == SetResetOnShutdown == | ||
Takes an input bool '''DoReset''' and an input [[Bus_services#I2cDevice|DeviceCode]]. Similar to [[#SetUpRtcResetOnShutdown|SetUpRtcResetOnShutdown]], 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'''. | Takes an input bool '''DoReset''' and an input [[Bus_services#I2cDevice|DeviceCode]]. Similar to [[#SetUpRtcResetOnShutdown|SetUpRtcResetOnShutdown]], 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'''. | ||
== | == GetResetDetected == | ||
Same as [[#GetRtcResetDetected|GetRtcResetDetected]], but takes an input [[Bus_services#I2cDevice|DeviceCode]] ([[#bpc:r|bpc:r]] uses hardcoded value 0x3B000001). | Same as [[#GetRtcResetDetected|GetRtcResetDetected]], but takes an input [[Bus_services#I2cDevice|DeviceCode]] ([[#bpc:r|bpc:r]] uses hardcoded value 0x3B000001). | ||
== | == ClearResetDetected == | ||
Same as [[#ClearRtcResetDetected|ClearRtcResetDetected]], but takes an input [[Bus_services#I2cDevice|DeviceCode]] ([[#bpc:r|bpc:r]] uses hardcoded value 0x3B000001). | Same as [[#ClearRtcResetDetected|ClearRtcResetDetected]], but takes an input [[Bus_services#I2cDevice|DeviceCode]] ([[#bpc:r|bpc:r]] uses hardcoded value 0x3B000001). | ||
== | == EnableAlarm == | ||
Takes an input [[#Module|DeviceCode]], an input u32 '''RtcAlarmId''' (0 = RtcAlarm1, 1 = RtcAlarm2) and an u64 '''RtcAlarmTime'''. No output. | Takes an input [[#Module|DeviceCode]], an input u32 '''RtcAlarmId''' (0 = RtcAlarm1, 1 = RtcAlarm2) and an u64 '''RtcAlarmTime'''. No output. | ||
== | == DisableAlarm == | ||
Takes an input [[#Module|DeviceCode]] and an input u32 '''RtcAlarmId''' (0 = RtcAlarm1, 1 = RtcAlarm2). No output. | Takes an input [[#Module|DeviceCode]] and an input u32 '''RtcAlarmId''' (0 = RtcAlarm1, 1 = RtcAlarm2). No output. | ||