ARM: Tegra: power: Tegra3 T33S updated EDP limits
[linux-3.10.git] / arch / arm / mach-tegra / edp.c
index 400518e..b0604cc 100644 (file)
@@ -99,8 +99,42 @@ static char __initdata tegra_edp_map[] = {
        0x4b, 0x8c, 0x82, 0x7d, 0x6e, 0x03, 0x28, 0x55,
        0x8c, 0x82, 0x73, 0x5f, 0x03, 0x23, 0x2d, 0x8c,
        0x82, 0x82, 0x6e, 0x03, 0x23, 0x3c, 0x8c, 0x82,
-       0x78, 0x6e, 0x03, 0x23, 0x4b, 0x8c, 0x82, 0x78,
-       0x5f, 0x03, 0x23, 0x55, 0x8c, 0x82, 0x6e, 0x5a,
+       0x78, 0x69, 0x03, 0x23, 0x4b, 0x8c, 0x82, 0x6e,
+       0x5a, 0x03, 0x23, 0x55, 0x8c, 0x82, 0x64, 0x50,
+       0x04, 0x32, 0x2d, 0x96, 0x8c, 0x8c, 0x8c, 0x04,
+       0x32, 0x3c, 0x96, 0x8c, 0x8c, 0x8c, 0x04, 0x32,
+       0x46, 0x96, 0x8c, 0x8c, 0x8c, 0x04, 0x32, 0x4b,
+       0x82, 0x78, 0x78, 0x78, 0x04, 0x32, 0x55, 0x82,
+       0x78, 0x78, 0x78, 0x04, 0x2f, 0x2d, 0x96, 0x8c,
+       0x8c, 0x8c, 0x04, 0x2f, 0x3c, 0x96, 0x8c, 0x8c,
+       0x8c, 0x04, 0x2f, 0x46, 0x96, 0x8c, 0x8c, 0x82,
+       0x04, 0x2f, 0x4b, 0x82, 0x78, 0x78, 0x78, 0x04,
+       0x2f, 0x55, 0x82, 0x78, 0x78, 0x78, 0x04, 0x28,
+       0x2d, 0x96, 0x8c, 0x8c, 0x82, 0x04, 0x28, 0x3c,
+       0x96, 0x8c, 0x8c, 0x82, 0x04, 0x28, 0x46, 0x96,
+       0x8c, 0x8c, 0x78, 0x04, 0x28, 0x4b, 0x82, 0x78,
+       0x78, 0x78, 0x04, 0x28, 0x55, 0x82, 0x78, 0x78,
+       0x6e, 0x04, 0x23, 0x2d, 0x96, 0x8c, 0x8c, 0x78,
+       0x04, 0x23, 0x3c, 0x96, 0x8c, 0x82, 0x78, 0x04,
+       0x23, 0x46, 0x96, 0x8c, 0x82, 0x6e, 0x04, 0x23,
+       0x4b, 0x82, 0x78, 0x78, 0x6e, 0x04, 0x23, 0x55,
+       0x82, 0x78, 0x78, 0x64, 0x04, 0x1e, 0x2d, 0x96,
+       0x8c, 0x82, 0x6e, 0x04, 0x1e, 0x3c, 0x96, 0x8c,
+       0x78, 0x64, 0x04, 0x1e, 0x46, 0x96, 0x8c, 0x78,
+       0x5a, 0x04, 0x1e, 0x4b, 0x82, 0x78, 0x78, 0x5a,
+       0x04, 0x1e, 0x55, 0x82, 0x78, 0x69, 0x50, 0x04,
+       0x19, 0x2d, 0x96, 0x8c, 0x6e, 0x5a, 0x04, 0x19,
+       0x3c, 0x96, 0x82, 0x6e, 0x55, 0x04, 0x19, 0x46,
+       0x96, 0x82, 0x64, 0x50, 0x04, 0x19, 0x4b, 0x82,
+       0x78, 0x64, 0x50, 0x04, 0x19, 0x55, 0x82, 0x78,
+       0x55, 0x3c, 0x05, 0x64, 0x3c, 0xaa, 0xa0, 0xa0,
+       0xa0, 0x05, 0x64, 0x55, 0x8c, 0x82, 0x82, 0x82,
+       0x05, 0x3c, 0x3c, 0x8c, 0x82, 0x82, 0x82, 0x05,
+       0x3c, 0x55, 0x8c, 0x82, 0x82, 0x82, 0x06, 0x64,
+       0x3c, 0xaa, 0xa0, 0x82, 0x82, 0x06, 0x64, 0x55,
+       0x8c, 0x82, 0x82, 0x82, 0x06, 0x3c, 0x3c, 0x8c,
+       0x82, 0x82, 0x82, 0x06, 0x3c, 0x55, 0x8c, 0x82,
+       0x82, 0x82,
 };
 
 
@@ -126,6 +160,10 @@ void __init tegra_init_cpu_edp_limits(unsigned int regulator_mA)
        struct tegra_edp_entry *t = (struct tegra_edp_entry *)tegra_edp_map;
        int tsize = sizeof(tegra_edp_map)/sizeof(struct tegra_edp_entry);
 
+       /* FIXME: Now for T33 we use 6A limit - fix this later */
+       if (cpu_speedo_id > 3)
+               regulator_mA = 6000;
+
        if (!regulator_mA) {
                edp_limits = edp_default_limits;
                edp_limits_size = ARRAY_SIZE(edp_default_limits);