summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorLoren Huang <b02279@freescale.com>2013-06-04 15:08:15 +0800
committerLoren Huang <b02279@freescale.com>2013-06-04 18:30:54 +0800
commit69b4c8dd9e2ec942b976c98bbe21b1fba94b6c7d (patch)
treeafe2da74bab65352daa3e9c77096f16a7f2b8383 /drivers
parent2e6a2ef002e475ac5a7859c92d15498b7c322b02 (diff)
ENGR00265465 gpu:Add global value for minimum 3D clock export
Add global value gpu3DMinClock so that minimum 3D clock can be change by user. When gpu min clock is too low, it may cause IPU starvation issue in certain case. Use echo x > /sys/module/galcore/parameters/gpu3DMinClock to change it. Signed-off-by: Loren Huang <b02279@freescale.com> Acked-by: Lily Zhang
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mxc/gpu-viv/arch/XAQ2/hal/kernel/gc_hal_kernel_hardware.c6
-rw-r--r--drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_driver.c3
2 files changed, 8 insertions, 1 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 34eca6ceeb80..00f383993ffe 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
@@ -36,6 +36,7 @@ typedef struct _gcsiDEBUG_REGISTERS
}
gcsiDEBUG_REGISTERS;
+extern int gpu3DMinClock;
/******************************************************************************\
********************************* Support Code *********************************
\******************************************************************************/
@@ -4680,7 +4681,10 @@ gckHARDWARE_GetFscaleValue(
)
{
*FscaleValue = Hardware->powerOnFscaleVal;
- *MinFscaleValue = 1;
+ if ((gpu3DMinClock > 0) && (gpu3DMinClock <= 64) && (Hardware->core == gcvCORE_MAJOR))
+ *MinFscaleValue = gpu3DMinClock;
+ else
+ *MinFscaleValue = 1;
*MaxFscaleValue = 64;
return gcvSTATUS_OK;
diff --git a/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_driver.c b/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_driver.c
index 163919bda058..bacd5311894d 100644
--- a/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_driver.c
+++ b/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_driver.c
@@ -149,6 +149,9 @@ module_param(logFileSize,uint, 0644);
static int showArgs = 0;
module_param(showArgs, int, 0644);
+int gpu3DMinClock = 0;
+module_param(gpu3DMinClock, int, 0644);
+
#if ENABLE_GPU_CLOCK_BY_DRIVER
unsigned long coreClock = 156000000;
module_param(coreClock, ulong, 0644);