Exemplo n.º 1
0
void mali_pm_os_resume(void)
{
	struct mali_pmu_core *pmu = mali_pmu_get_global_pmu_core();
	mali_bool do_reset = MALI_FALSE;

	MALI_DEBUG_PRINT(3, ("Mali PM: OS resume\n"));

	if (MALI_TRUE != mali_power_on) {
		do_reset = MALI_TRUE;
	}

	if (NULL != pmu) {
		mali_pmu_reset(pmu);
	}

	mali_power_on = MALI_TRUE;
	_mali_osk_write_mem_barrier();

	if (do_reset) {
		mali_pm_reset_gpu();
		mali_group_power_on();
	}

	mali_gp_scheduler_resume();
	mali_pp_scheduler_resume();
}
Exemplo n.º 2
0
void mali_pm_runtime_resume(void)
{
	MALI_DEBUG_PRINT(2, ("Mali PM: Runtime resume\n"));
	if (MALI_TRUE != mali_power_on)
	{
		mali_pm_reset_gpu();
		mali_group_power_on();
	}
	mali_power_on = MALI_TRUE;
}
Exemplo n.º 3
0
static void mali_pm_powerup(void)
{
	MALI_DEBUG_PRINT(3, ("Mali PM: Setting GPU power mode to MALI_POWER_MODE_ON\n"));
	mali_platform_power_mode_change(MALI_POWER_MODE_ON);

#if MALI_PMM_RUNTIME_JOB_CONTROL_ON

	/* Aquire our reference */
	MALI_DEBUG_PRINT(4, ("Mali PM: Getting device PM reference (=> requesting MALI_POWER_MODE_ON)\n"));
	_mali_osk_pm_dev_activate();
#endif

	mali_group_power_on();
}
Exemplo n.º 4
0
void mali_pm_os_resume(enum mali_sleep_event event)
{
	MALI_DEBUG_PRINT(2, ("Mali PM: %s: from = %x\n", __FUNCTION__, event));
			
   /// if (!clock_is_on(MT_CG_MFG_PDN_BG3D_SW_CG))
   /// {
   ///    enable_clock(MT_CG_MFG_PDN_BG3D_SW_CG, "G3D_DRV");
   /// }	  
   	
	if (MALI_TRUE != mali_power_on)
	{
		mali_pm_reset_gpu();
		mali_group_power_on();
	}
	mali_gp_scheduler_resume();
	mali_pp_scheduler_resume();
	mali_power_on = MALI_TRUE;
}
Exemplo n.º 5
0
void mali_pm_os_resume(void)
{
#if !defined(CONFIG_PM_RUNTIME)
	struct mali_pmu_core *pmu = mali_pmu_get_global_pmu_core();
	mali_bool do_reset = MALI_FALSE;
#endif

	MALI_DEBUG_PRINT(3, ("Mali PM: OS resume\n"));
/* MALI_SEC */
/******************************************************************
 *
 * <2013. 08. 23>
 *  In Pegasus prime, PMU is not enabled(Power off) while
 * system wake up(suspend -> resume).
 *
 * Because PMU power is off, GPU does not work.
 * Therefore code is commented like below.
 *
 *****************************************************************/
#if !defined(CONFIG_PM_RUNTIME)
	if (MALI_TRUE != mali_power_on)
	{
		do_reset = MALI_TRUE;
	}

	if (NULL != pmu)
	{
		mali_pmu_reset(pmu);
	}

	mali_power_on = MALI_TRUE;
	_mali_osk_write_mem_barrier();

	if (do_reset)
	{
		mali_pm_reset_gpu();
		mali_group_power_on();
	}
#endif
	mali_gp_scheduler_resume();
	mali_pp_scheduler_resume();
}
void mali_pm_runtime_resume(void)
{
	struct mali_pmu_core *pmu = mali_pmu_get_global_pmu_core();
	mali_bool do_reset = MALI_FALSE;

	MALI_DEBUG_PRINT(3, ("Mali PM: Runtime resume\n"));

	if (MALI_TRUE != mali_power_on) {
		do_reset = MALI_TRUE;
	}

	if (NULL != pmu) {
		mali_pmu_reset(pmu);
	}

	mali_power_on = MALI_TRUE;
	_mali_osk_write_mem_barrier();

	if (do_reset) {
		mali_pm_reset_gpu();
	    mali_pmm_release_protect();
		mali_group_power_on();
	}
}