void mali_pm_os_suspend(void) { MALI_DEBUG_PRINT(3, ("Mali PM: OS suspend\n")); mali_gp_scheduler_suspend(); mali_pp_scheduler_suspend(); mali_utilization_suspend(); mali_group_power_off(MALI_TRUE); mali_power_on = MALI_FALSE; }
void mali_pm_os_suspend(void) { MALI_DEBUG_PRINT(3, ("Mali PM: OS suspend\n")); mali_gp_scheduler_suspend(); mali_pp_scheduler_suspend(); mali_utilization_suspend(); /* MALI_SEC */ #if !defined(CONFIG_PM_RUNTIME) mali_group_power_off(); mali_power_on = MALI_FALSE; #endif }
/** This function is called when Operating system wants to power down * the mali GPU device. */ static int mali_pm_suspend(struct device *dev) { int err = 0; _mali_osk_lock_wait(lock, _MALI_OSK_LOCKMODE_RW); if ((mali_device_state == _MALI_DEVICE_SUSPEND)) { _mali_osk_lock_signal(lock, _MALI_OSK_LOCKMODE_RW); return err; } #if MALI_DVFS_ENABLED mali_utilization_suspend(); #endif err = mali_device_suspend(MALI_PMM_EVENT_OS_POWER_DOWN, &pm_thread); mali_device_state = _MALI_DEVICE_SUSPEND; _mali_osk_lock_signal(lock, _MALI_OSK_LOCKMODE_RW); return err; }
void mali_pm_os_suspend(void) { mali_bool do_reset = MALI_FALSE; MALI_DEBUG_PRINT(3, ("Mali PM: OS suspend\n")); mali_gp_scheduler_suspend(); mali_pp_scheduler_suspend(); mali_utilization_suspend(); do_reset = mali_power_on; mali_group_power_off(MALI_TRUE); mali_power_on = MALI_FALSE; if (do_reset) { mali_pmm_acquire_protect(); //mali_pm_reset_gpu(); } }
static int mali_os_suspend(struct device *device) { int ret = 0; MALI_DEBUG_PRINT(4, ("mali_os_suspend() called\n")); #ifdef CONFIG_MALI_DVFS mali_utilization_suspend(); #endif if (NULL != device && NULL != device->driver && NULL != device->driver->pm && NULL != device->driver->pm->suspend) { /* Need to notify Mali driver about this event */ ret = device->driver->pm->suspend(device); } mali_platform_power_mode_change(device, MALI_POWER_MODE_DEEP_SLEEP); return ret; }