Line 1: |
Line 1: |
− | #REDIRECT [[AM services]] | + | Operation Mode Manager (OMM) is a sysmodule responsible for arbitrating the operation changes between docked and handheld modes. |
| + | |
| + | = omm = |
| + | This is "nn::omm::detail::IOperationModeManager" |
| + | |
| + | Besides [[PTM_services|PTM]], this is the only service that interacts with the [[Dock]] through [[USB_services|usb:pd*]]. |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name |
| + | |- |
| + | | 0 || GetOperationMode |
| + | |- |
| + | | 1 || GetOperationModeChangeEvent |
| + | |- |
| + | | 2 || EnableAudioVisual |
| + | |- |
| + | | 3 || DisableAudioVisual |
| + | |- |
| + | | 4 || EnterSleepAndWait |
| + | |- |
| + | | 5 || GetCradleStatus |
| + | |- |
| + | | 6 || FadeInDisplay |
| + | |- |
| + | | 7 || FadeOutDisplay |
| + | |- |
| + | | 8 || [2.0.0+] GetCradleFwVersion |
| + | |- |
| + | | 9 || [2.0.0+] NotifyCecSettingsChanged |
| + | |- |
| + | | 10 || [3.0.0+] SetOperationModePolicy |
| + | |- |
| + | | 11 || [3.0.0+] GetDefaultDisplayResolution |
| + | |- |
| + | | 12 || [3.0.0+] GetDefaultDisplayResolutionChangeEvent |
| + | |- |
| + | | 13 || [3.0.0+] UpdateDefaultDisplayResolution |
| + | |- |
| + | | 14 || [3.0.0+] ShouldSleepOnBoot |
| + | |- |
| + | | 15 || [4.0.0+] NotifyHdcpApplicationExecutionStarted |
| + | |- |
| + | | 16 || [4.0.0+] NotifyHdcpApplicationExecutionFinished |
| + | |- |
| + | | 17 || [4.0.0+] NotifyHdcpApplicationDrawingStarted |
| + | |- |
| + | | 18 || [4.0.0+] NotifyHdcpApplicationDrawingFinished |
| + | |- |
| + | | 19 || [4.0.0+] GetHdcpAuthenticationFailedEvent |
| + | |- |
| + | | 20 || [4.0.0+] GetHdcpAuthenticationFailedEmulationEnabled |
| + | |- |
| + | | 21 || [4.0.0+] SetHdcpAuthenticationFailedEmulation |
| + | |- |
| + | | 22 || [4.0.0+] GetHdcpStateChangeEvent |
| + | |- |
| + | | 23 || [4.0.0+] GetHdcpState |
| + | |- |
| + | | 24 || [5.0.0+] ShowCardUpdateProcessing |
| + | |- |
| + | | 25 || [5.0.0+] SetApplicationCecSettingsAndNotifyChanged |
| + | |- |
| + | | 26 || [7.0.0+] [[#GetOperationModeSystemInfo]] |
| + | |- |
| + | | 27 || [9.0.0+] GetAppletFullAwakingSystemEvent |
| + | |- |
| + | | 28 || [12.0.0+] [[#CreateCradleFirmwareUpdater]] |
| + | |- |
| + | | 500 || [14.0.0+] LblSwitchBacklightOnForAm |
| + | |- |
| + | | 501 || [14.0.0+] LblSwitchBacklightOffForAm |
| + | |- |
| + | | 900 || [14.0.0+] HideStartupLogo |
| + | |} |
| + | |
| + | == GetOperationModeSystemInfo == |
| + | No input, returns an output u32. |
| + | |
| + | This is used by [[#GetOperationModeSystemInfo|ICommonStateGetter GetOperationModeSystemInfo]]. |
| + | |
| + | == CreateCradleFirmwareUpdater == |
| + | No input. Returns an [[#ICradleFirmwareUpdater]]. |
| + | |
| + | == ICradleFirmwareUpdater == |
| + | This is "nn::omm::detail::ICradleFirmwareUpdater". |
| + | |
| + | This was added with [12.0.0+]. |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name |
| + | |- |
| + | | 0 || Start |
| + | |- |
| + | | 1 || Finish |
| + | |- |
| + | | 2 || GetUpdateDeviceStatus |
| + | |- |
| + | | 3 || GetUpdateProgress |
| + | |- |
| + | | 4 || GetUpdateDeviceStatusChangeEvent |
| + | |- |
| + | | 5 || GetUpdateProgress2 |
| + | |} |
| + | |
| + | = ommdisp = |
| + | This was added with [14.0.0+]. |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name |
| + | |- |
| + | | 100 || |
| + | |- |
| + | | 101 || |
| + | |- |
| + | | 110 || |
| + | |- |
| + | | 111 || |
| + | |- |
| + | | 200 || |
| + | |- |
| + | | 210 || |
| + | |- |
| + | | 300 || |
| + | |- |
| + | | 301 || |
| + | |- |
| + | | 302 || |
| + | |- |
| + | | 303 || |
| + | |- |
| + | | 304 || |
| + | |- |
| + | | 305 || |
| + | |- |
| + | | 306 || |
| + | |- |
| + | | 307 || |
| + | |- |
| + | | 308 || |
| + | |- |
| + | | 309 || |
| + | |- |
| + | | 310 || |
| + | |- |
| + | | 311 || |
| + | |- |
| + | | 312 || |
| + | |- |
| + | | 313 || |
| + | |- |
| + | | 314 || |
| + | |- |
| + | | 315 || |
| + | |- |
| + | | 316 || |
| + | |- |
| + | | 330 || |
| + | |- |
| + | | 340 || |
| + | |- |
| + | | 341 || |
| + | |- |
| + | | 342 || |
| + | |- |
| + | | 343 || |
| + | |- |
| + | | 344 || |
| + | |- |
| + | | 345 || |
| + | |- |
| + | | 346 || |
| + | |- |
| + | | 350 || |
| + | |- |
| + | | 351 || |
| + | |- |
| + | | 360 || |
| + | |- |
| + | | 361 || |
| + | |- |
| + | | 370 || |
| + | |- |
| + | | 371 || |
| + | |- |
| + | | 400 || |
| + | |- |
| + | | 410 || |
| + | |- |
| + | | 500 || |
| + | |- |
| + | | 501 || |
| + | |- |
| + | | 510 || |
| + | |- |
| + | | 520 || |
| + | |- |
| + | | 540 || |
| + | |- |
| + | | 600 || |
| + | |- |
| + | | 700 || |
| + | |- |
| + | | 701 || |
| + | |- |
| + | | 710 || |
| + | |- |
| + | | 711 || |
| + | |- |
| + | | 720 || |
| + | |- |
| + | | 721 || |
| + | |- |
| + | | 722 || |
| + | |- |
| + | | 800 || |
| + | |- |
| + | | 810 || |
| + | |} |
| + | |
| + | = idle:sys = |
| + | This is "nn::idle::detail::IPolicyManagerSystem" |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name |
| + | |- |
| + | | 0 || GetAutoPowerDownEvent |
| + | |- |
| + | | 1 || [7.0.0+] IsAutoPowerDownRequested ([1.0.0-3.0.2] ) |
| + | |- |
| + | | 2 || [1.0.0-3.0.2] |
| + | |- |
| + | | 3 || [[#SetHandlingContext]] |
| + | |- |
| + | | 4 || LoadAndApplySettings |
| + | |- |
| + | | 5 || ReportUserIsActive |
| + | |} |
| + | |
| + | == SetHandlingContext == |
| + | [3.0.0+] Now takes an additional 0x10-bytes of input. |
| + | |
| + | [13.0.0+] Total input size is now 0x30 instead of 0x38. |
| + | |
| + | = spsm = |
| + | This is "nn::spsm::detail::IPowerStateInterface". |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Cmd || Name |
| + | |- |
| + | | 0 || GetCurrentState |
| + | |- |
| + | | 1 || EnterSleep |
| + | |- |
| + | | 2 || GetLastWakeReason |
| + | |- |
| + | | 3 || Shutdown |
| + | |- |
| + | | 4 || GetNotificationMessageEventHandle |
| + | |- |
| + | | 5 || ReceiveNotificationMessage |
| + | |- |
| + | | 6 || AnalyzeLogForLastSleepWakeSequence |
| + | |- |
| + | | 7 || ResetEventLog |
| + | |- |
| + | | 8 || AnalyzePerformanceLogForLastSleepWakeSequence |
| + | |- |
| + | | 9 || ChangeHomeButtonLongPressingTime |
| + | |- |
| + | | 10 || PutErrorState |
| + | |- |
| + | | 11 || [1.0.0-3.0.2] InvalidateCurrentHomeButtonPressing |
| + | |} |
| + | |
| + | [3.0.0+] Cmd11 now takes a total of 8-bytes of input. |