• Home
  • Raw
  • Download

Lines Matching full:pm

92 STATIC VOID OsPmTickTimerStart(LosPmCB *pm)  in OsPmTickTimerStart()  argument
97 LosPmTickTimer *tickTimer = pm->tickTimer; in OsPmTickTimerStart()
104 if ((tickTimer->timerStop != NULL) && (pm->enterSleepTime != 0)) { in OsPmTickTimerStart()
111 currTime = pm->enterSleepTime + realSleepTime; in OsPmTickTimerStart()
112 pm->enterSleepTime = 0; in OsPmTickTimerStart()
123 STATIC BOOL OsPmTickTimerStop(LosPmCB *pm) in OsPmTickTimerStop() argument
130 LosPmTickTimer *tickTimer = pm->tickTimer; in OsPmTickTimerStop()
145 pm->enterSleepTime = LOS_SysCycleGet(); in OsPmTickTimerStop()
156 STATIC VOID OsPmCpuResume(LosPmCB *pm) in OsPmCpuResume() argument
158 if ((pm->sysMode == LOS_SYS_NORMAL_SLEEP) && (pm->sysctrl->normalResume != NULL)) { in OsPmCpuResume()
159 pm->sysctrl->normalResume(); in OsPmCpuResume()
160 } else if ((pm->sysMode == LOS_SYS_LIGHT_SLEEP) && (pm->sysctrl->lightResume != NULL)) { in OsPmCpuResume()
161 pm->sysctrl->lightResume(); in OsPmCpuResume()
162 } else if ((pm->sysMode == LOS_SYS_DEEP_SLEEP) && (pm->sysctrl->deepResume != NULL)) { in OsPmCpuResume()
163 pm->sysctrl->deepResume(); in OsPmCpuResume()
167 STATIC VOID OsPmCpuSuspend(LosPmCB *pm) in OsPmCpuSuspend() argument
170 LOS_ASSERT(pm->sysctrl != NULL); in OsPmCpuSuspend()
172 if (pm->sysMode == LOS_SYS_NORMAL_SLEEP) { in OsPmCpuSuspend()
173 pm->sysctrl->normalSuspend(); in OsPmCpuSuspend()
174 } else if (pm->sysMode == LOS_SYS_LIGHT_SLEEP) { in OsPmCpuSuspend()
175 pm->sysctrl->lightSuspend(); in OsPmCpuSuspend()
176 } else if (pm->sysMode == LOS_SYS_DEEP_SLEEP) { in OsPmCpuSuspend()
177 pm->sysctrl->deepSuspend(); in OsPmCpuSuspend()
179 pm->sysctrl->shutdownSuspend(); in OsPmCpuSuspend()
183 STATIC VOID OsPmResumePrepare(LosPmCB *pm, UINT32 mode, UINT32 prepare) in OsPmResumePrepare() argument
185 if ((prepare == 0) && (pm->device->resume != NULL)) { in OsPmResumePrepare()
186 pm->device->resume(mode); in OsPmResumePrepare()
189 if (((prepare == 0) || (prepare == OS_PM_SYS_DEVICE_EARLY)) && (pm->sysctrl->late != NULL)) { in OsPmResumePrepare()
190 pm->sysctrl->late(mode); in OsPmResumePrepare()
217 STATIC UINT32 OsPmSuspendCheck(LosPmCB *pm, Suspend *sysSuspendEarly, Suspend *deviceSuspend, LOS_S… in OsPmSuspendCheck() argument
222 pm->sysMode = pm->pmMode; in OsPmSuspendCheck()
223 if (pm->lock > 0) { in OsPmSuspendCheck()
224 pm->sysMode = LOS_SYS_NORMAL_SLEEP; in OsPmSuspendCheck()
229 pm->isWake = FALSE; in OsPmSuspendCheck()
230 *mode = pm->sysMode; in OsPmSuspendCheck()
231 *sysSuspendEarly = pm->sysctrl->early; in OsPmSuspendCheck()
232 *deviceSuspend = pm->device->suspend; in OsPmSuspendCheck()
237 STATIC UINT32 OsPmSuspendSleep(LosPmCB *pm) in OsPmSuspendSleep() argument
245 ret = OsPmSuspendCheck(pm, &sysSuspendEarly, &deviceSuspend, &mode); in OsPmSuspendSleep()
259 if (pm->isWake || (pm->lock > 0)) { in OsPmSuspendSleep()
263 tickTimerStop = OsPmTickTimerStop(pm); in OsPmSuspendSleep()
269 OsPmCpuSuspend(pm); in OsPmSuspendSleep()
271 OsPmCpuResume(pm); in OsPmSuspendSleep()
273 OsPmTickTimerStart(pm); in OsPmSuspendSleep()
276 pm->sysMode = LOS_SYS_NORMAL_SLEEP; in OsPmSuspendSleep()
277 OsPmResumePrepare(pm, (UINT32)mode, prepare); in OsPmSuspendSleep()
287 LosPmCB *pm = &g_pmCB; in OsPmNormalSleep() local
291 OsPmCpuSuspend(pm); in OsPmNormalSleep()
293 OsPmCpuResume(pm); in OsPmNormalSleep()
298 STATIC UINT32 OsPmDeviceRegister(LosPmCB *pm, LosPmDevice *device) in OsPmDeviceRegister() argument
307 pm->device = device; in OsPmDeviceRegister()
313 STATIC UINT32 OsPmTickTimerRegister(LosPmCB *pm, LosPmTickTimer *tickTimer) in OsPmTickTimerRegister() argument
327 pm->enterSleepTime = 0; in OsPmTickTimerRegister()
329 pm->tickTimer = tickTimer; in OsPmTickTimerRegister()
337 STATIC UINT32 OsPmSysctrlRegister(LosPmCB *pm, LosPmSysctrl *sysctrl) in OsPmSysctrlRegister() argument
341 pm->sysctrl->early = sysctrl->early; in OsPmSysctrlRegister()
344 pm->sysctrl->late = sysctrl->late; in OsPmSysctrlRegister()
347 pm->sysctrl->normalSuspend = sysctrl->normalSuspend; in OsPmSysctrlRegister()
350 pm->sysctrl->normalResume = sysctrl->normalResume; in OsPmSysctrlRegister()
353 pm->sysctrl->lightSuspend = sysctrl->lightSuspend; in OsPmSysctrlRegister()
356 pm->sysctrl->lightResume = sysctrl->lightResume; in OsPmSysctrlRegister()
359 pm->sysctrl->deepSuspend = sysctrl->deepSuspend; in OsPmSysctrlRegister()
362 pm->sysctrl->deepResume = sysctrl->deepResume; in OsPmSysctrlRegister()
365 pm->sysctrl->shutdownSuspend = sysctrl->shutdownSuspend; in OsPmSysctrlRegister()
368 pm->sysctrl->shutdownResume = sysctrl->shutdownResume; in OsPmSysctrlRegister()
376 LosPmCB *pm = &g_pmCB; in LOS_PmRegister() local
384 return OsPmDeviceRegister(pm, (LosPmDevice *)node); in LOS_PmRegister()
386 return OsPmTickTimerRegister(pm, (LosPmTickTimer *)node); in LOS_PmRegister()
388 return OsPmSysctrlRegister(pm, (LosPmSysctrl *)node); in LOS_PmRegister()
396 STATIC UINT32 OsPmDeviceUnregister(LosPmCB *pm, LosPmDevice *device) in OsPmDeviceUnregister() argument
401 if (pm->device == device) { in OsPmDeviceUnregister()
402 pm->device = NULL; in OsPmDeviceUnregister()
403 pm->pmMode = LOS_SYS_NORMAL_SLEEP; in OsPmDeviceUnregister()
412 STATIC UINT32 OsPmTickTimerUnregister(LosPmCB *pm, LosPmTickTimer *tickTimer) in OsPmTickTimerUnregister() argument
417 if (pm->tickTimer == tickTimer) { in OsPmTickTimerUnregister()
418 pm->tickTimer = NULL; in OsPmTickTimerUnregister()
419 if ((pm->pmMode != LOS_SYS_NORMAL_SLEEP) && (pm->pmMode != LOS_SYS_LIGHT_SLEEP)) { in OsPmTickTimerUnregister()
420 pm->pmMode = LOS_SYS_NORMAL_SLEEP; in OsPmTickTimerUnregister()
430 STATIC UINT32 OsPmSysctrlUnregister(LosPmCB *pm, LosPmSysctrl *sysctrl) in OsPmSysctrlUnregister() argument
436 pm->pmMode = LOS_SYS_NORMAL_SLEEP; in OsPmSysctrlUnregister()
443 LosPmCB *pm = &g_pmCB; in LOS_PmUnregister() local
451 return OsPmDeviceUnregister(pm, (LosPmDevice *)node); in LOS_PmUnregister()
453 return OsPmTickTimerUnregister(pm, (LosPmTickTimer *)node); in LOS_PmUnregister()
455 return OsPmSysctrlUnregister(pm, (LosPmSysctrl *)node); in LOS_PmUnregister()
466 LosPmCB *pm = &g_pmCB; in LOS_PmWakeSet() local
469 pm->isWake = TRUE; in LOS_PmWakeSet()
477 LosPmCB *pm = &g_pmCB; in LOS_PmModeGet() local
480 mode = pm->pmMode; in LOS_PmModeGet()
489 LosPmCB *pm = &g_pmCB; in LOS_PmModeSet() local
497 if ((mode != LOS_SYS_NORMAL_SLEEP) && (pm->device == NULL)) { in LOS_PmModeSet()
502 if ((mode == LOS_SYS_LIGHT_SLEEP) && (pm->sysctrl->lightSuspend == NULL)) { in LOS_PmModeSet()
507 if ((mode == LOS_SYS_DEEP_SLEEP) && (pm->sysctrl->deepSuspend == NULL)) { in LOS_PmModeSet()
512 if ((mode == LOS_SYS_SHUTDOWN) && (pm->sysctrl->shutdownSuspend == NULL)) { in LOS_PmModeSet()
517 pm->pmMode = mode; in LOS_PmModeSet()
527 LosPmCB *pm = &g_pmCB; in LOS_PmLockInfoShow() local
529 LOS_DL_LIST *head = &pm->lockList; in LOS_PmLockInfoShow()
550 LosPmCB *pm = &g_pmCB; in OsPmLockRequest() local
553 LOS_DL_LIST *head = &pm->lockList; in OsPmLockRequest()
587 if (pm->lock < OS_PM_LOCK_MAX) { in OsPmLockRequest()
588 pm->lock++; in OsPmLockRequest()
609 LosPmCB *pm = &g_pmCB; in LOS_PmLockRelease() local
612 LOS_DL_LIST *head = &pm->lockList; in LOS_PmLockRelease()
623 mode = (UINT32)pm->pmMode; in LOS_PmLockRelease()
645 if (pm->lock > 0) { in LOS_PmLockRelease()
646 pm->lock--; in LOS_PmLockRelease()
647 if (pm->lock == 0) { in LOS_PmLockRelease()
671 PRINT_ERR("Pm delay lock %s release faled! : 0x%x\n", name, ret); in OsPmSwtmrHandler()
728 LosPmCB *pm = &g_pmCB; in OsIsPmMode() local
731 if ((pm->sysMode != LOS_SYS_NORMAL_SLEEP) && (pm->lock == 0)) { in OsIsPmMode()
742 LosPmCB *pm = &g_pmCB; in OsPmInit() local
744 (VOID)memset_s(pm, sizeof(LosPmCB), 0, sizeof(LosPmCB)); in OsPmInit()
746 pm->pmMode = LOS_SYS_NORMAL_SLEEP; in OsPmInit()
747 LOS_ListInit(&pm->lockList); in OsPmInit()
756 pm->sysctrl = &g_sysctrl; in OsPmInit()