ARM: tegra11: dvfs: Update miscellaneous dvfs tables
Alex Frid [Thu, 25 Oct 2012 07:07:38 +0000 (00:07 -0700)]
- Updated dvfs tables for SBUS (system clock), Host1x, and VI clocks
- Updated maximum limits for Host1x and MSELECT clocks
- Allowed only integer divisors for Host1x, VI, and MSELECT clocks

Change-Id: I4128cde767609a6bf4ccc3dd85a0f060feaa2dcb
Signed-off-by: Alex Frid <afrid@nvidia.com>
Reviewed-on: http://git-master/r/147681
(cherry picked from commit 03a2546f2745dab8a8adda72777a062b7c113865)
Reviewed-on: http://git-master/r/161070
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>

arch/arm/mach-tegra/tegra11_clocks.c
arch/arm/mach-tegra/tegra11_dvfs.c

index a7800a7..3ef71fe 100644 (file)
@@ -6270,7 +6270,7 @@ struct clk tegra_list_clks[] = {
        PERIPH_CLK("uarte_dbg", "serial8250.0",         "uarte", 66,    0x1c4,  408000000, mux_pllp_clkm,               MUX | DIV_U151 | DIV_U151_UART | PERIPH_ON_APB),
        PERIPH_CLK("3d",        "3d",                   NULL,   24,     0x158,  600000000, mux_pllm_pllc2_c_c3_pllp_plla,       MUX | MUX8 | DIV_U71 | DIV_U71_INT | DIV_U71_IDLE | PERIPH_MANUAL_RESET),
        PERIPH_CLK("2d",        "2d",                   NULL,   21,     0x15c,  600000000, mux_pllm_pllc2_c_c3_pllp_plla,       MUX | MUX8 | DIV_U71 | DIV_U71_INT | DIV_U71_IDLE),
-       PERIPH_CLK_EX("vi",     "tegra_camera",         "vi",   20,     0x148,  425000000, mux_pllm_pllc_pllp_plla,     MUX | DIV_U71,  &tegra_vi_clk_ops),
+       PERIPH_CLK_EX("vi",     "tegra_camera",         "vi",   20,     0x148,  425000000, mux_pllm_pllc_pllp_plla,     MUX | DIV_U71 | DIV_U71_INT, &tegra_vi_clk_ops),
        PERIPH_CLK("vi_sensor", "tegra_camera",         "vi_sensor",    20,     0x1a8,  150000000, mux_pllm_pllc_pllp_plla,     MUX | DIV_U71 | PERIPH_NO_RESET),
        PERIPH_CLK("epp",       "epp",                  NULL,   19,     0x16c,  600000000, mux_pllm_pllc2_c_c3_pllp_plla,       MUX | MUX8 | DIV_U71 | DIV_U71_INT),
 #ifdef CONFIG_TEGRA_SIMULATION_PLATFORM
@@ -6279,7 +6279,7 @@ struct clk tegra_list_clks[] = {
        PERIPH_CLK_EX("msenc",  "msenc",                NULL,   91,     0x1f0,  600000000, mux_pllm_pllc2_c_c3_pllp_plla,       MUX | MUX8 | DIV_U71 | DIV_U71_INT, &tegra_msenc_clk_ops),
 #endif
        PERIPH_CLK("tsec",      "tsec",                 NULL,   83,     0x1f4,  600000000, mux_pllp_pllc2_c_c3_pllm_clkm,       MUX | MUX8 | DIV_U71 | DIV_U71_INT),
-       PERIPH_CLK("host1x",    "host1x",               NULL,   28,     0x180,  300000000, mux_pllm_pllc2_c_c3_pllp_plla,       MUX | MUX8 | DIV_U71),
+       PERIPH_CLK("host1x",    "host1x",               NULL,   28,     0x180,  324000000, mux_pllm_pllc2_c_c3_pllp_plla,       MUX | MUX8 | DIV_U71 | DIV_U71_INT),
        PERIPH_CLK_EX("dtv",    "dtv",                  NULL,   79,     0x1dc,  250000000, mux_clk_m,                   PERIPH_ON_APB,  &tegra_dtv_clk_ops),
        PERIPH_CLK("hdmi",      "hdmi",                 NULL,   51,     0x18c,  198000000, mux_pllp_pllm_plld_plla_pllc_plld2_clkm,     MUX | MUX8 | DIV_U71),
        PERIPH_CLK("disp1",     "tegradc.0",            NULL,   27,     0x138,  600000000, mux_pllp_pllm_plld_plla_pllc_plld2_clkm,     MUX | MUX8),
@@ -6309,7 +6309,7 @@ struct clk tegra_list_clks[] = {
        PERIPH_CLK("pcie",      "tegra-pcie",           "pcie", 70,     0,      250000000, mux_clk_m,                   0),
        PERIPH_CLK("afi",       "tegra-pcie",           "afi",  72,     0,      250000000, mux_clk_m,                   0),
        PERIPH_CLK("se",        "se",                   NULL,   127,    0x42c,  600000000, mux_pllp_pllc2_c_c3_pllm_clkm,       MUX | MUX8 | DIV_U71 | DIV_U71_INT | PERIPH_ON_APB),
-       PERIPH_CLK("mselect",   "mselect",              NULL,   99,     0x3b4,  108000000, mux_pllp_clkm,               MUX | DIV_U71),
+       PERIPH_CLK("mselect",   "mselect",              NULL,   99,     0x3b4,  102000000, mux_pllp_clkm,               MUX | DIV_U71 | DIV_U71_INT),
        PERIPH_CLK("cl_dvfs_ref", "tegra_cl_dvfs",      "ref",  155,    0x62c,  54000000,  mux_pllp_clkm,               MUX | DIV_U71 | DIV_U71_INT | PERIPH_ON_APB),
        PERIPH_CLK("cl_dvfs_soc", "tegra_cl_dvfs",      "soc",  155,    0x630,  54000000,  mux_pllp_clkm,               MUX | DIV_U71 | DIV_U71_INT | PERIPH_ON_APB),
        PERIPH_CLK("soc_therm", "soc_therm",            NULL,   78,     0x644,  136000000, mux_pllm_pllc_pllp_plla,     MUX | MUX8 | DIV_U71 | PERIPH_ON_APB),
index 0531153..4d5122b 100644 (file)
@@ -138,9 +138,9 @@ static struct dvfs core_dvfs_table[] = {
 #ifndef CONFIG_TEGRA_SIMULATION_PLATFORM
        CORE_DVFS("cpu_lp", -1, 1, KHZ,       384000, 504000,  624000,  660000),
        CORE_DVFS("emc",   -1, 1, KHZ,        384000, 528000,  800000,  800000),
-       CORE_DVFS("sbus",  -1, 1, KHZ,        136000, 204000,  204000,  204000),
+       CORE_DVFS("sbus",  -1, 1, KHZ,        216000, 264000,  312000,  324000),
 
-       CORE_DVFS("vi",    -1, 1, KHZ,        144000, 192000,  240000,  240000),
+       CORE_DVFS("vi",    -1, 1, KHZ,        228000, 300000,  360000,  396000),
 
        CORE_DVFS("2d",    -1, 1, KHZ,        276000, 372000,  456000,  480000),
        CORE_DVFS("3d",    -1, 1, KHZ,        276000, 372000,  456000,  480000),
@@ -151,7 +151,7 @@ static struct dvfs core_dvfs_table[] = {
        CORE_DVFS("tsec",  -1, 1, KHZ,        228000, 288000,  360000,  384000),
        CORE_DVFS("vde",   -1, 1, KHZ,        228000, 288000,  360000,  384000),
 
-       CORE_DVFS("host1x", -1, 1, KHZ,       136000, 163200,  204000,  204000),
+       CORE_DVFS("host1x", -1, 1, KHZ,       228000, 264000,  312000,  324000),
 
 #ifdef CONFIG_TEGRA_DUAL_CBUS
        CORE_DVFS("c2bus", -1, 1, KHZ,        276000, 372000,  456000,  480000),