diff options
author | Shawn Xiao <b49994@freescale.com> | 2015-05-14 20:08:42 +0800 |
---|---|---|
committer | Prabhu Sundararaj <prabhu.sundararaj@freescale.com> | 2015-05-15 11:18:15 -0500 |
commit | fc6e710576142fbd831a5c50847d582ddb695fde (patch) | |
tree | bfb5e80ddfb744c92ce0ff28b6823b1933a4e88c | |
parent | 0bb8691062ac99b3311a4a5dd99ea3c42b9c7d04 (diff) |
MGS-732 [#ccc] fix gpu hang when disable power management
gpu hang when disable power management, because GPU PU is turned off
before gpu probe,
gpu power management need handle this case and turn the power on first.
Date: May 11, 2015
Signed-off-by: Xianzhong <b07117@freescale.com>
-rw-r--r-- | drivers/mxc/gpu-viv/arch/XAQ2/hal/kernel/gc_hal_kernel_hardware.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/mxc/gpu-viv/arch/XAQ2/hal/kernel/gc_hal_kernel_hardware.c b/drivers/mxc/gpu-viv/arch/XAQ2/hal/kernel/gc_hal_kernel_hardware.c index e428040cb96f..e6338d0386fd 100644 --- a/drivers/mxc/gpu-viv/arch/XAQ2/hal/kernel/gc_hal_kernel_hardware.c +++ b/drivers/mxc/gpu-viv/arch/XAQ2/hal/kernel/gc_hal_kernel_hardware.c @@ -4103,12 +4103,6 @@ gckHARDWARE_SetPowerManagementState( command = Hardware->kernel->command; gcmkVERIFY_OBJECT(command, gcvOBJ_COMMAND); - if (Hardware->powerManagement == gcvFALSE) - { - gcmkFOOTER_NO(); - return gcvSTATUS_OK; - } - /* Start profiler. */ gcmkPROFILE_INIT(freq, time); @@ -4179,6 +4173,14 @@ gckHARDWARE_SetPowerManagementState( break; } + if (Hardware->powerManagement == gcvFALSE + && State != gcvPOWER_ON + ) + { + gcmkFOOTER_NO(); + return gcvSTATUS_OK; + } + /* Get current process and thread IDs. */ gcmkONERROR(gckOS_GetProcessID(&process)); gcmkONERROR(gckOS_GetThreadID(&thread)); |