From: Chad Goodman Date: Sun, 25 Nov 2012 10:16:48 +0000 (-0800) Subject: 3D GPU: overclock 3D gpu to 480MHz X-Git-Url: https://ziggy471.com/git/gitweb.cgi?p=ziggy471-sgs3-jb.git;a=commitdiff;h=c6196bd33ec21d74706b63b1f27fe25b34ecc7c6 3D GPU: overclock 3D gpu to 480MHz Signed-off-by: Ziggy --- --- /dev/null +++ b/arch/arm/kernel/machine_kexec.c.rej @@ -0,0 +1,12 @@ +--- arch/arm/kernel/machine_kexec.c ++++ arch/arm/kernel/machine_kexec.c +@@ -106,6 +111,9 @@ + mem_text_write_kernel_word(&kexec_indirection_page, page_list); + mem_text_write_kernel_word(&kexec_mach_type, machine_arch_type); + mem_text_write_kernel_word(&kexec_boot_atags, image->start - KEXEC_ARM_ZIMAGE_OFFSET + KEXEC_ARM_ATAGS_OFFSET); ++#ifdef CONFIG_KEXEC_HARDBOOT ++ mem_text_write_kernel_word(&kexec_hardboot, image->hardboot); ++#endif + + /* copy our kernel relocation code to the control code page */ + memcpy(reboot_code_buffer, --- a/arch/arm/mach-msm/clock-8960.c +++ b/arch/arm/mach-msm/clock-8960.c @@ -3392,6 +3392,34 @@ static unsigned long fmax_gfx3d_8960_v2[ [VDD_DIG_HIGH] = 400000000 }; +static struct clk_freq_tbl clk_tbl_gfx3d_8960_oc[] = { + F_GFX3D( 0, gnd, 0, 0), + F_GFX3D( 27000000, pxo, 0, 0), + F_GFX3D( 48000000, pll8, 1, 8), + F_GFX3D( 54857000, pll8, 1, 7), + F_GFX3D( 64000000, pll8, 1, 6), + F_GFX3D( 76800000, pll8, 1, 5), + F_GFX3D( 96000000, pll8, 1, 4), + F_GFX3D(128000000, pll8, 1, 3), + F_GFX3D(145455000, pll2, 2, 11), + F_GFX3D(160000000, pll2, 1, 5), + F_GFX3D(177778000, pll2, 2, 9), + F_GFX3D(200000000, pll2, 1, 4), + F_GFX3D(228571000, pll2, 2, 7), + F_GFX3D(266667000, pll2, 1, 3), + F_GFX3D(300000000, pll3, 1, 4), + F_GFX3D(320000000, pll2, 2, 5), + F_GFX3D(400000000, pll2, 1, 2), + F_GFX3D(480000000, pll3, 2, 5), + F_END +}; + +static unsigned long fmax_gfx3d_8960_oc[MAX_VDD_LEVELS] __initdata = { + [VDD_DIG_LOW] = 128000000, + [VDD_DIG_NOMINAL] = 320000000, + [VDD_DIG_HIGH] = 480000000 +}; + static struct clk_freq_tbl clk_tbl_gfx3d_8064[] = { F_GFX3D( 0, gnd, 0, 0), F_GFX3D( 27000000, pxo, 0, 0), @@ -5888,9 +5916,9 @@ static void __init msm8960_clock_init(vo memcpy(msm_clocks_8960, msm_clocks_8960_v1, sizeof(msm_clocks_8960_v1)); if (SOCINFO_VERSION_MAJOR(socinfo_get_version()) >= 2) { - gfx3d_clk.freq_tbl = clk_tbl_gfx3d_8960_v2; + gfx3d_clk.freq_tbl = clk_tbl_gfx3d_8960_oc; - memcpy(gfx3d_clk.c.fmax, fmax_gfx3d_8960_v2, + memcpy(gfx3d_clk.c.fmax, fmax_gfx3d_8960_oc, sizeof(gfx3d_clk.c.fmax)); memcpy(ijpeg_clk.c.fmax, fmax_ijpeg_8960_v2, sizeof(ijpeg_clk.c.fmax)); --- a/arch/arm/mach-msm/devices-8960.c +++ b/arch/arm/mach-msm/devices-8960.c @@ -2631,7 +2631,7 @@ static struct msm_bus_vectors grp3d_nomi .src = MSM_BUS_MASTER_GRAPHICS_3D, .dst = MSM_BUS_SLAVE_EBI_CH0, .ab = 0, - .ib = KGSL_CONVERT_TO_MBPS(2656), + .ib = KGSL_CONVERT_TO_MBPS(3968), }, }; @@ -2640,7 +2640,7 @@ static struct msm_bus_vectors grp3d_max_ .src = MSM_BUS_MASTER_GRAPHICS_3D, .dst = MSM_BUS_SLAVE_EBI_CH0, .ab = 0, - .ib = KGSL_CONVERT_TO_MBPS(3968), + .ib = KGSL_CONVERT_TO_MBPS(5290), }, }; @@ -2788,14 +2788,14 @@ static struct resource kgsl_3d0_resource static struct kgsl_device_platform_data kgsl_3d0_pdata = { .pwrlevel = { { - .gpu_freq = 400000000, + .gpu_freq = 480000000, .bus_freq = 4, .io_fraction = 0, }, { - .gpu_freq = 300000000, + .gpu_freq = 400000000, .bus_freq = 3, - .io_fraction = 33, + .io_fraction = 0, }, { .gpu_freq = 200000000,