ARM: tegra: update balanced throttling table
Hyungwoo Yang [Mon, 7 Oct 2013 17:42:53 +0000 (10:42 -0700)]
Updated balanced throttling table. Support separate GPU throttling table.

Bug 1364149

Change-Id: Ia29361e1851b0e3abbbc1bbd8561f04a4530f531
Signed-off-by: Hyungwoo Yang <hyungwooy@nvidia.com>
Reviewed-on: http://git-master/r/303530
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>
Tested-by: Diwakar Tundlam <dtundlam@nvidia.com>

arch/arm/mach-tegra/board-ardbeg-power.c
arch/arm/mach-tegra/board-ardbeg-sensors.c
arch/arm/mach-tegra/board-loki-sensors.c
arch/arm/mach-tegra/include/mach/thermal.h
arch/arm/mach-tegra/tegra3_throttle.c

index 5f0480c..914b202 100644 (file)
@@ -54,7 +54,6 @@
 #include "board-pmu-defines.h"
 #include "devices.h"
 #include "iomap.h"
-#include "tegra-board-id.h"
 #include "tegra_cl_dvfs.h"
 #include "tegra11_soctherm.h"
 #include "tegra3_tsensor.h"
@@ -1361,7 +1360,7 @@ static struct soctherm_platform_data ardbeg_soctherm_data = {
                                        .lower = THERMAL_NO_LIMIT,
                                },
                                {
-                                       .cdev_type = "tegra-balanced",
+                                       .cdev_type = "cpu-balanced",
                                        .trip_temp = 89000,
                                        .trip_type = THERMAL_TRIP_PASSIVE,
                                        .upper = THERMAL_NO_LIMIT,
@@ -1384,7 +1383,7 @@ static struct soctherm_platform_data ardbeg_soctherm_data = {
                                        .lower = THERMAL_NO_LIMIT,
                                },
                                {
-                                       .cdev_type = "tegra-balanced",
+                                       .cdev_type = "gpu-balanced",
                                        .trip_temp = 91000,
                                        .trip_type = THERMAL_TRIP_PASSIVE,
                                        .upper = THERMAL_NO_LIMIT,
index c3d1751..a97536c 100644 (file)
@@ -846,7 +846,7 @@ static int ardbeg_camera_init(void)
        return 0;
 }
 
-static struct pid_thermal_gov_params tj_pid_params = {
+static struct pid_thermal_gov_params cpu_pid_params = {
        .max_err_temp = 4000,
        .max_err_gain = 1000,
 
@@ -857,90 +857,205 @@ static struct pid_thermal_gov_params tj_pid_params = {
        .down_compensation = 15,
 };
 
-static struct thermal_zone_params tj_tzp = {
+static struct thermal_zone_params cpu_tzp = {
        .governor_name = "pid_thermal_gov",
-       .governor_params = &tj_pid_params,
+       .governor_params = &cpu_pid_params,
 };
 
-static struct throttle_table tj_throttle_table[] = {
+static struct throttle_table cpu_throttle_table[] = {
        /* CPU_THROT_LOW cannot be used by other than CPU */
-       /*      CPU,    GPU,  C3BUS,   SCLK,    EMC   */
-       { { 2014500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1989000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1963500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1938000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1912500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1887000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1861500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1836000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1810500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1785000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1759500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1734000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1708500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1683000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1657500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1632000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1606500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1581000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1555500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1530000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1504500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1479000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1453500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1428000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1402500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1377000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1351500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1326000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1300500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1275000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1249500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1224000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1198500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1173000, 816000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1147500, 816000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1122000, 816000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1096500, 816000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1071000, 816000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1045500, 720000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1020000, 720000, NO_CAP, NO_CAP, NO_CAP } },
-       { {  994500, 720000, NO_CAP, NO_CAP, 792000 } },
-       { {  969000, 720000, NO_CAP, NO_CAP, 792000 } },
-       { {  943500, 720000, NO_CAP, NO_CAP, 792000 } },
-       { {  918000, 636000, NO_CAP, NO_CAP, 792000 } },
-       { {  892500, 636000, NO_CAP, NO_CAP, 792000 } },
-       { {  867000, 636000, NO_CAP, NO_CAP, 624000 } },
-       { {  841500, 636000, NO_CAP, NO_CAP, 624000 } },
-       { {  816000, 636000, NO_CAP, NO_CAP, 624000 } },
-       { {  790500, 540000, NO_CAP, 163200, 624000 } },
-       { {  765000, 540000, NO_CAP, 163200, 624000 } },
-       { {  739500, 540000, NO_CAP, 163200, 624000 } },
-       { {  714000, 540000, 216000, 163200, 528000 } },
-       { {  688500, 540000, 216000, 163200, 528000 } },
-       { {  663000, 540000, 216000, 163200, 528000 } },
-       { {  637500, 456000, 216000, 163200, 528000 } },
-       { {  612000, 456000, 216000, 163200, 528000 } },
-       { {  586500, 456000, 216000, 163200, 408000 } },
-       { {  561000, 456000, 216000, 163200, 408000 } },
-       { {  535500, 456000, 168000, 136000, 408000 } },
-       { {  510000, 456000, 168000, 136000, 408000 } },
-       { {  484500, 360000, 168000, 136000, 408000 } },
-       { {  459000, 360000, 168000, 136000, 348000 } },
-       { {  433500, 360000, 168000, 136000, 348000 } },
-       { {  408000, 360000, 168000, 102000, 348000 } },
+       /*      CPU,    GPU,  C2BUS,  C3BUS,   SCLK,    EMC   */
+       { { 2295000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2269500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2244000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2218500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2193000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2167500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2142000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2116500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2091000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2065500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2040000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2014500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1989000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1963500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1938000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1912500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1887000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1861500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1836000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1810500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1785000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1759500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1734000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1708500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1683000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1657500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1632000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1606500, 790000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1581000, 776000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1555500, 762000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1530000, 749000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1504500, 735000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1479000, 721000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1453500, 707000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1428000, 693000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1402500, 679000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1377000, 666000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1351500, 652000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1326000, 638000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1300500, 624000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1275000, 610000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1249500, 596000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1224000, 582000, NO_CAP, NO_CAP, NO_CAP, 792000 } },
+       { { 1198500, 569000, NO_CAP, NO_CAP, NO_CAP, 792000 } },
+       { { 1173000, 555000, NO_CAP, NO_CAP, 360000, 792000 } },
+       { { 1147500, 541000, NO_CAP, NO_CAP, 360000, 792000 } },
+       { { 1122000, 527000, NO_CAP, 684000, 360000, 792000 } },
+       { { 1096500, 513000, 444000, 684000, 360000, 792000 } },
+       { { 1071000, 499000, 444000, 684000, 360000, 792000 } },
+       { { 1045500, 486000, 444000, 684000, 360000, 792000 } },
+       { { 1020000, 472000, 444000, 684000, 324000, 792000 } },
+       { {  994500, 458000, 444000, 684000, 324000, 792000 } },
+       { {  969000, 444000, 444000, 600000, 324000, 792000 } },
+       { {  943500, 430000, 444000, 600000, 324000, 792000 } },
+       { {  918000, 416000, 396000, 600000, 324000, 792000 } },
+       { {  892500, 402000, 396000, 600000, 324000, 792000 } },
+       { {  867000, 389000, 396000, 600000, 324000, 792000 } },
+       { {  841500, 375000, 396000, 600000, 288000, 792000 } },
+       { {  816000, 361000, 396000, 600000, 288000, 792000 } },
+       { {  790500, 347000, 396000, 600000, 288000, 792000 } },
+       { {  765000, 333000, 396000, 504000, 288000, 792000 } },
+       { {  739500, 319000, 348000, 504000, 288000, 792000 } },
+       { {  714000, 306000, 348000, 504000, 288000, 624000 } },
+       { {  688500, 292000, 348000, 504000, 288000, 624000 } },
+       { {  663000, 278000, 348000, 504000, 288000, 624000 } },
+       { {  637500, 264000, 348000, 504000, 288000, 624000 } },
+       { {  612000, 250000, 348000, 504000, 252000, 624000 } },
+       { {  586500, 236000, 348000, 504000, 252000, 624000 } },
+       { {  561000, 222000, 348000, 420000, 252000, 624000 } },
+       { {  535500, 209000, 288000, 420000, 252000, 624000 } },
+       { {  510000, 195000, 288000, 420000, 252000, 624000 } },
+       { {  484500, 181000, 288000, 420000, 252000, 624000 } },
+       { {  459000, 167000, 288000, 420000, 252000, 624000 } },
+       { {  433500, 153000, 288000, 420000, 252000, 396000 } },
+       { {  408000, 139000, 288000, 420000, 252000, 396000 } },
+       { {  382500, 126000, 288000, 420000, 252000, 396000 } },
+       { {  357000, 112000, 288000, 420000, 252000, 396000 } },
+       { {  331500,  98000, 288000, 420000, 252000, 396000 } },
+       { {  306000,  84000, 288000, 420000, 252000, 396000 } },
+       { {  280500,  84000, 288000, 420000, 252000, 396000 } },
+       { {  255000,  84000, 288000, 420000, 252000, 396000 } },
+       { {  229500,  84000, 288000, 420000, 252000, 396000 } },
+       { {  204000,  84000, 288000, 420000, 252000, 396000 } },
 };
 
-static struct balanced_throttle tj_throttle = {
-       .throt_tab_size = ARRAY_SIZE(tj_throttle_table),
-       .throt_tab = tj_throttle_table,
+static struct balanced_throttle cpu_throttle = {
+       .throt_tab_size = ARRAY_SIZE(cpu_throttle_table),
+       .throt_tab = cpu_throttle_table,
+};
+
+static struct throttle_table gpu_throttle_table[] = {
+       /* CPU_THROT_LOW cannot be used by other than CPU */
+       /*      CPU,    GPU,  C2BUS,  C3BUS,   SCLK,    EMC   */
+       { { 2295000, 782800, 480000, 756000, 384000, 924000 } },
+       { { 2269500, 772200, 480000, 756000, 384000, 924000 } },
+       { { 2244000, 761600, 480000, 756000, 384000, 924000 } },
+       { { 2218500, 751100, 480000, 756000, 384000, 924000 } },
+       { { 2193000, 740500, 480000, 756000, 384000, 924000 } },
+       { { 2167500, 729900, 480000, 756000, 384000, 924000 } },
+       { { 2142000, 719300, 480000, 756000, 384000, 924000 } },
+       { { 2116500, 708700, 480000, 756000, 384000, 924000 } },
+       { { 2091000, 698100, 480000, 756000, 384000, 924000 } },
+       { { 2065500, 687500, 480000, 756000, 384000, 924000 } },
+       { { 2040000, 676900, 480000, 756000, 384000, 924000 } },
+       { { 2014500, 666000, 480000, 756000, 384000, 924000 } },
+       { { 1989000, 656000, 480000, 756000, 384000, 924000 } },
+       { { 1963500, 645000, 480000, 756000, 384000, 924000 } },
+       { { 1938000, 635000, 480000, 756000, 384000, 924000 } },
+       { { 1912500, 624000, 480000, 756000, 384000, 924000 } },
+       { { 1887000, 613000, 480000, 756000, 384000, 924000 } },
+       { { 1861500, 603000, 480000, 756000, 384000, 924000 } },
+       { { 1836000, 592000, 480000, 756000, 384000, 924000 } },
+       { { 1810500, 582000, 480000, 756000, 384000, 924000 } },
+       { { 1785000, 571000, 480000, 756000, 384000, 924000 } },
+       { { 1759500, 560000, 480000, 756000, 384000, 924000 } },
+       { { 1734000, 550000, 480000, 756000, 384000, 924000 } },
+       { { 1708500, 539000, 480000, 756000, 384000, 924000 } },
+       { { 1683000, 529000, 480000, 756000, 384000, 924000 } },
+       { { 1657500, 518000, 480000, 756000, 384000, 924000 } },
+       { { 1632000, 508000, 480000, 756000, 384000, 924000 } },
+       { { 1606500, 497000, 480000, 756000, 384000, 924000 } },
+       { { 1581000, 486000, 480000, 756000, 384000, 924000 } },
+       { { 1555500, 476000, 480000, 756000, 384000, 924000 } },
+       { { 1530000, 465000, 480000, 756000, 384000, 924000 } },
+       { { 1504500, 455000, 480000, 756000, 384000, 924000 } },
+       { { 1479000, 444000, 480000, 756000, 384000, 924000 } },
+       { { 1453500, 433000, 480000, 756000, 384000, 924000 } },
+       { { 1428000, 423000, 480000, 756000, 384000, 924000 } },
+       { { 1402500, 412000, 480000, 756000, 384000, 924000 } },
+       { { 1377000, 402000, 480000, 756000, 384000, 924000 } },
+       { { 1351500, 391000, 480000, 756000, 384000, 924000 } },
+       { { 1326000, 380000, 480000, 756000, 384000, 924000 } },
+       { { 1300500, 370000, 480000, 756000, 384000, 924000 } },
+       { { 1275000, 359000, 480000, 756000, 384000, 924000 } },
+       { { 1249500, 349000, 480000, 756000, 384000, 924000 } },
+       { { 1224000, 338000, 480000, 756000, 384000, 792000 } },
+       { { 1198500, 328000, 480000, 756000, 384000, 792000 } },
+       { { 1173000, 317000, 480000, 756000, 360000, 792000 } },
+       { { 1147500, 306000, 480000, 756000, 360000, 792000 } },
+       { { 1122000, 296000, 480000, 684000, 360000, 792000 } },
+       { { 1096500, 285000, 444000, 684000, 360000, 792000 } },
+       { { 1071000, 275000, 444000, 684000, 360000, 792000 } },
+       { { 1045500, 264000, 444000, 684000, 360000, 792000 } },
+       { { 1020000, 253000, 444000, 684000, 324000, 792000 } },
+       { {  994500, 243000, 444000, 684000, 324000, 792000 } },
+       { {  969000, 232000, 444000, 600000, 324000, 792000 } },
+       { {  943500, 222000, 444000, 600000, 324000, 792000 } },
+       { {  918000, 211000, 396000, 600000, 324000, 792000 } },
+       { {  892500, 200000, 396000, 600000, 324000, 792000 } },
+       { {  867000, 190000, 396000, 600000, 324000, 792000 } },
+       { {  841500, 179000, 396000, 600000, 288000, 792000 } },
+       { {  816000, 169000, 396000, 600000, 288000, 792000 } },
+       { {  790500, 158000, 396000, 600000, 288000, 792000 } },
+       { {  765000, 148000, 396000, 504000, 288000, 792000 } },
+       { {  739500, 137000, 348000, 504000, 288000, 792000 } },
+       { {  714000, 126000, 348000, 504000, 288000, 624000 } },
+       { {  688500, 116000, 348000, 504000, 288000, 624000 } },
+       { {  663000, 105000, 348000, 504000, 288000, 624000 } },
+       { {  637500,  95000, 348000, 504000, 288000, 624000 } },
+       { {  612000,  84000, 348000, 504000, 252000, 624000 } },
+       { {  586500,  84000, 348000, 504000, 252000, 624000 } },
+       { {  561000,  84000, 348000, 420000, 252000, 624000 } },
+       { {  535500,  84000, 288000, 420000, 252000, 624000 } },
+       { {  510000,  84000, 288000, 420000, 252000, 624000 } },
+       { {  484500,  84000, 288000, 420000, 252000, 624000 } },
+       { {  459000,  84000, 288000, 420000, 252000, 624000 } },
+       { {  433500,  84000, 288000, 420000, 252000, 396000 } },
+       { {  408000,  84000, 288000, 420000, 252000, 396000 } },
+       { {  382500,  84000, 288000, 420000, 252000, 396000 } },
+       { {  357000,  84000, 288000, 420000, 252000, 396000 } },
+       { {  331500,  84000, 288000, 420000, 252000, 396000 } },
+       { {  306000,  84000, 288000, 420000, 252000, 396000 } },
+       { {  280500,  84000, 288000, 420000, 252000, 396000 } },
+       { {  255000,  84000, 288000, 420000, 252000, 396000 } },
+       { {  229500,  84000, 288000, 420000, 252000, 396000 } },
+       { {  204000,  84000, 288000, 420000, 252000, 396000 } },
+};
+
+static struct balanced_throttle gpu_throttle = {
+       .throt_tab_size = ARRAY_SIZE(gpu_throttle_table),
+       .throt_tab = gpu_throttle_table,
 };
 
 static int __init ardbeg_tj_throttle_init(void)
 {
        if (of_machine_is_compatible("nvidia,ardbeg") ||
-           of_machine_is_compatible("nvidia,tn8"))
-               balanced_throttle_register(&tj_throttle, "tegra-balanced");
+           of_machine_is_compatible("nvidia,tn8")) {
+               balanced_throttle_register(&cpu_throttle, "cpu-balanced");
+               balanced_throttle_register(&gpu_throttle, "gpu-balanced");
+       }
+
        return 0;
 }
 module_init(ardbeg_tj_throttle_init);
@@ -1011,71 +1126,90 @@ static struct therm_est_data skin_data = {
 
 static struct throttle_table skin_throttle_table[] = {
        /* CPU_THROT_LOW cannot be used by other than CPU */
-       /*      CPU,    GPU,  C3BUS,   SCLK,    EMC   */
-       { { 2014500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1989000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1963500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1938000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1912500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1887000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1861500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1836000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1810500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1785000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1759500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1734000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1708500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1683000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1657500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1632000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1606500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1581000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1555500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1530000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1504500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1479000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1453500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1428000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1402500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1377000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1351500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1326000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1300500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1275000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1249500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1224000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1198500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1173000, 816000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1147500, 816000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1122000, 816000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1096500, 816000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1071000, 816000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1045500, 720000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1020000, 720000, NO_CAP, NO_CAP, NO_CAP } },
-       { {  994500, 720000, NO_CAP, NO_CAP, 792000 } },
-       { {  969000, 720000, NO_CAP, NO_CAP, 792000 } },
-       { {  943500, 720000, NO_CAP, NO_CAP, 792000 } },
-       { {  918000, 636000, NO_CAP, NO_CAP, 792000 } },
-       { {  892500, 636000, NO_CAP, NO_CAP, 792000 } },
-       { {  867000, 636000, NO_CAP, NO_CAP, 624000 } },
-       { {  841500, 636000, NO_CAP, NO_CAP, 624000 } },
-       { {  816000, 636000, NO_CAP, NO_CAP, 624000 } },
-       { {  790500, 540000, NO_CAP, 163200, 624000 } },
-       { {  765000, 540000, NO_CAP, 163200, 624000 } },
-       { {  739500, 540000, NO_CAP, 163200, 624000 } },
-       { {  714000, 540000, 216000, 163200, 528000 } },
-       { {  688500, 540000, 216000, 163200, 528000 } },
-       { {  663000, 540000, 216000, 163200, 528000 } },
-       { {  637500, 456000, 216000, 163200, 528000 } },
-       { {  612000, 456000, 216000, 163200, 528000 } },
-       { {  586500, 456000, 216000, 163200, 408000 } },
-       { {  561000, 456000, 216000, 163200, 408000 } },
-       { {  535500, 456000, 168000, 136000, 408000 } },
-       { {  510000, 456000, 168000, 136000, 408000 } },
-       { {  484500, 360000, 168000, 136000, 408000 } },
-       { {  459000, 360000, 168000, 136000, 348000 } },
-       { {  433500, 360000, 168000, 136000, 348000 } },
-       { {  408000, 360000, 168000, 102000, 348000 } },
+       /*      CPU,    GPU,  C2BUS,  C3BUS,   SCLK,    EMC   */
+       { { 2295000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2269500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2244000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2218500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2193000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2167500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2142000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2116500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2091000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2065500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2040000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2014500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1989000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1963500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1938000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1912500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1887000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1861500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1836000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1810500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1785000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1759500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1734000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1708500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1683000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1657500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1632000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1606500, 790000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1581000, 776000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1555500, 762000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1530000, 749000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1504500, 735000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1479000, 721000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1453500, 707000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1428000, 693000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1402500, 679000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1377000, 666000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1351500, 652000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1326000, 638000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1300500, 624000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1275000, 610000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1249500, 596000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1224000, 582000, NO_CAP, NO_CAP, NO_CAP, 792000 } },
+       { { 1198500, 569000, NO_CAP, NO_CAP, NO_CAP, 792000 } },
+       { { 1173000, 555000, NO_CAP, NO_CAP, 360000, 792000 } },
+       { { 1147500, 541000, NO_CAP, NO_CAP, 360000, 792000 } },
+       { { 1122000, 527000, NO_CAP, 684000, 360000, 792000 } },
+       { { 1096500, 513000, 444000, 684000, 360000, 792000 } },
+       { { 1071000, 499000, 444000, 684000, 360000, 792000 } },
+       { { 1045500, 486000, 444000, 684000, 360000, 792000 } },
+       { { 1020000, 472000, 444000, 684000, 324000, 792000 } },
+       { {  994500, 458000, 444000, 684000, 324000, 792000 } },
+       { {  969000, 444000, 444000, 600000, 324000, 792000 } },
+       { {  943500, 430000, 444000, 600000, 324000, 792000 } },
+       { {  918000, 416000, 396000, 600000, 324000, 792000 } },
+       { {  892500, 402000, 396000, 600000, 324000, 792000 } },
+       { {  867000, 389000, 396000, 600000, 324000, 792000 } },
+       { {  841500, 375000, 396000, 600000, 288000, 792000 } },
+       { {  816000, 361000, 396000, 600000, 288000, 792000 } },
+       { {  790500, 347000, 396000, 600000, 288000, 792000 } },
+       { {  765000, 333000, 396000, 504000, 288000, 792000 } },
+       { {  739500, 319000, 348000, 504000, 288000, 792000 } },
+       { {  714000, 306000, 348000, 504000, 288000, 624000 } },
+       { {  688500, 292000, 348000, 504000, 288000, 624000 } },
+       { {  663000, 278000, 348000, 504000, 288000, 624000 } },
+       { {  637500, 264000, 348000, 504000, 288000, 624000 } },
+       { {  612000, 250000, 348000, 504000, 252000, 624000 } },
+       { {  586500, 236000, 348000, 504000, 252000, 624000 } },
+       { {  561000, 222000, 348000, 420000, 252000, 624000 } },
+       { {  535500, 209000, 288000, 420000, 252000, 624000 } },
+       { {  510000, 195000, 288000, 420000, 252000, 624000 } },
+       { {  484500, 181000, 288000, 420000, 252000, 624000 } },
+       { {  459000, 167000, 288000, 420000, 252000, 624000 } },
+       { {  433500, 153000, 288000, 420000, 252000, 396000 } },
+       { {  408000, 139000, 288000, 420000, 252000, 396000 } },
+       { {  382500, 126000, 288000, 420000, 252000, 396000 } },
+       { {  357000, 112000, 288000, 420000, 252000, 396000 } },
+       { {  331500,  98000, 288000, 420000, 252000, 396000 } },
+       { {  306000,  84000, 288000, 420000, 252000, 396000 } },
+       { {  280500,  84000, 288000, 420000, 252000, 396000 } },
+       { {  255000,  84000, 288000, 420000, 252000, 396000 } },
+       { {  229500,  84000, 288000, 420000, 252000, 396000 } },
+       { {  204000,  84000, 288000, 420000, 252000, 396000 } },
 };
 
 static struct balanced_throttle skin_throttle = {
@@ -1104,7 +1238,7 @@ static struct nct1008_platform_data ardbeg_nct72_pdata = {
        .shutdown_local_limit = 120, /* C */
 
        .passive_delay = 1000,
-       .tzp = &tj_tzp,
+       .tzp = &cpu_tzp,
 
        .num_trips = 2,
        .trips = {
@@ -1116,7 +1250,7 @@ static struct nct1008_platform_data ardbeg_nct72_pdata = {
                        .lower = THERMAL_NO_LIMIT,
                },
                {
-                       .cdev_type = "tegra-balanced",
+                       .cdev_type = "cpu-balanced",
                        .trip_temp = 83000,
                        .trip_type = THERMAL_TRIP_PASSIVE,
                        .upper = THERMAL_NO_LIMIT,
@@ -1137,7 +1271,7 @@ static struct nct1008_platform_data ardbeg_nct72_tskin_pdata = {
        .shutdown_ext_limit = 85, /* C */
        .shutdown_local_limit = 120, /* C */
 
-       .passive_delay = 5000,
+       .passive_delay = 10000,
        .polling_delay = 1000,
        .tzp = &skin_tzp,
 
@@ -1192,7 +1326,7 @@ static int ardbeg_nct72_init(void)
                ardbeg_nct72_pdata.shutdown_ext_limit += 20;
                for (i = 0; i < ardbeg_nct72_pdata.num_trips; i++) {
                        trip_state = &ardbeg_nct72_pdata.trips[i];
-                       if (!strncmp(trip_state->cdev_type, "tegra-balanced",
+                       if (!strncmp(trip_state->cdev_type, "cpu-balanced",
                                        THERMAL_NAME_LENGTH)) {
                                trip_state->cdev_type = "_none_";
                                break;
index cbf4ab2..bfe97c1 100644 (file)
@@ -193,63 +193,90 @@ static int loki_camera_init(void)
 
 static struct throttle_table tj_throttle_table[] = {
        /* CPU_THROT_LOW cannot be used by other than CPU */
-       /*      CPU,  C2BUS,  C3BUS,   SCLK,    EMC   */
-       { { 1810500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1785000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1759500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1734000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1708500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1683000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1657500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1632000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1606500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1581000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1555500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1530000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1504500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1479000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1453500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1428000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1402500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1377000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1351500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1326000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1300500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1275000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1249500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1224000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1198500, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1173000, 636000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1147500, 636000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1122000, 636000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1096500, 636000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1071000, 636000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1045500, 636000, NO_CAP, NO_CAP, NO_CAP } },
-       { { 1020000, 636000, NO_CAP, NO_CAP, NO_CAP } },
-       { {  994500, 636000, NO_CAP, NO_CAP, NO_CAP } },
-       { {  969000, 600000, NO_CAP, NO_CAP, NO_CAP } },
-       { {  943500, 600000, NO_CAP, NO_CAP, NO_CAP } },
-       { {  918000, 600000, NO_CAP, NO_CAP, NO_CAP } },
-       { {  892500, 600000, NO_CAP, NO_CAP, NO_CAP } },
-       { {  867000, 600000, NO_CAP, NO_CAP, NO_CAP } },
-       { {  841500, 564000, NO_CAP, NO_CAP, NO_CAP } },
-       { {  816000, 564000, NO_CAP, NO_CAP, 792000 } },
-       { {  790500, 564000, NO_CAP, 372000, 792000 } },
-       { {  765000, 564000, 468000, 372000, 792000 } },
-       { {  739500, 528000, 468000, 372000, 792000 } },
-       { {  714000, 528000, 468000, 336000, 792000 } },
-       { {  688500, 528000, 420000, 336000, 792000 } },
-       { {  663000, 492000, 420000, 336000, 792000 } },
-       { {  637500, 492000, 420000, 336000, 408000 } },
-       { {  612000, 492000, 420000, 300000, 408000 } },
-       { {  586500, 492000, 360000, 336000, 408000 } },
-       { {  561000, 420000, 420000, 300000, 408000 } },
-       { {  535500, 420000, 360000, 228000, 408000 } },
-       { {  510000, 420000, 288000, 228000, 408000 } },
-       { {  484500, 324000, 288000, 228000, 408000 } },
-       { {  459000, 324000, 288000, 228000, 408000 } },
-       { {  433500, 324000, 288000, 228000, 408000 } },
-       { {  408000, 324000, 288000, 228000, 408000 } },
+       /*      CPU,    GPU,  C2BUS,  C3BUS,   SCLK,    EMC   */
+       { { 2295000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2269500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2244000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2218500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2193000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2167500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2142000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2116500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2091000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2065500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2040000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 2014500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1989000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1963500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1938000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1912500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1887000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1861500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1836000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1810500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1785000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1759500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1734000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1708500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1683000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1657500, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1632000, NO_CAP, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1606500, 790000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1581000, 776000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1555500, 762000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1530000, 749000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1504500, 735000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1479000, 721000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1453500, 707000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1428000, 693000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1402500, 679000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1377000, 666000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1351500, 652000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1326000, 638000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1300500, 624000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1275000, 610000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1249500, 596000, NO_CAP, NO_CAP, NO_CAP, NO_CAP } },
+       { { 1224000, 582000, NO_CAP, NO_CAP, NO_CAP, 792000 } },
+       { { 1198500, 569000, NO_CAP, NO_CAP, NO_CAP, 792000 } },
+       { { 1173000, 555000, NO_CAP, NO_CAP, 360000, 792000 } },
+       { { 1147500, 541000, NO_CAP, NO_CAP, 360000, 792000 } },
+       { { 1122000, 527000, NO_CAP, 684000, 360000, 792000 } },
+       { { 1096500, 513000, 444000, 684000, 360000, 792000 } },
+       { { 1071000, 499000, 444000, 684000, 360000, 792000 } },
+       { { 1045500, 486000, 444000, 684000, 360000, 792000 } },
+       { { 1020000, 472000, 444000, 684000, 324000, 792000 } },
+       { {  994500, 458000, 444000, 684000, 324000, 792000 } },
+       { {  969000, 444000, 444000, 600000, 324000, 792000 } },
+       { {  943500, 430000, 444000, 600000, 324000, 792000 } },
+       { {  918000, 416000, 396000, 600000, 324000, 792000 } },
+       { {  892500, 402000, 396000, 600000, 324000, 792000 } },
+       { {  867000, 389000, 396000, 600000, 324000, 792000 } },
+       { {  841500, 375000, 396000, 600000, 288000, 792000 } },
+       { {  816000, 361000, 396000, 600000, 288000, 792000 } },
+       { {  790500, 347000, 396000, 600000, 288000, 792000 } },
+       { {  765000, 333000, 396000, 504000, 288000, 792000 } },
+       { {  739500, 319000, 348000, 504000, 288000, 792000 } },
+       { {  714000, 306000, 348000, 504000, 288000, 624000 } },
+       { {  688500, 292000, 348000, 504000, 288000, 624000 } },
+       { {  663000, 278000, 348000, 504000, 288000, 624000 } },
+       { {  637500, 264000, 348000, 504000, 288000, 624000 } },
+       { {  612000, 250000, 348000, 504000, 252000, 624000 } },
+       { {  586500, 236000, 348000, 504000, 252000, 624000 } },
+       { {  561000, 222000, 348000, 420000, 252000, 624000 } },
+       { {  535500, 209000, 288000, 420000, 252000, 624000 } },
+       { {  510000, 195000, 288000, 420000, 252000, 624000 } },
+       { {  484500, 181000, 288000, 420000, 252000, 624000 } },
+       { {  459000, 167000, 288000, 420000, 252000, 624000 } },
+       { {  433500, 153000, 288000, 420000, 252000, 396000 } },
+       { {  408000, 139000, 288000, 420000, 252000, 396000 } },
+       { {  382500, 126000, 288000, 420000, 252000, 396000 } },
+       { {  357000, 112000, 288000, 420000, 252000, 396000 } },
+       { {  331500,  98000, 288000, 420000, 252000, 396000 } },
+       { {  306000,  84000, 288000, 420000, 252000, 396000 } },
+       { {  280500,  84000, 288000, 420000, 252000, 396000 } },
+       { {  255000,  84000, 288000, 420000, 252000, 396000 } },
+       { {  229500,  84000, 288000, 420000, 252000, 396000 } },
+       { {  204000,  84000, 288000, 420000, 252000, 396000 } },
 };
 
 static struct balanced_throttle tj_throttle = {
index 2f4fe5d..800eb74 100644 (file)
@@ -30,16 +30,21 @@ struct tegra_cooling_device {
 #define NO_CAP                 (ULONG_MAX) /* no cap */
 #define CPU_THROT_LOW          0 /* lowest throttle freq. only used for CPU */
 
-#ifdef CONFIG_TEGRA_DUAL_CBUS
-#ifdef CONFIG_TEGRA_GPU_DVFS
-#define NUM_OF_CAP_FREQS       5 /* cpu, gpu, c3bus, sclk, emc */
+#ifdef CONFIG_ARCH_TEGRA_12x_SOC
+#define GBUS_CNT               1
 #else
-#define NUM_OF_CAP_FREQS       5 /* cpu, c2bus, c3bus, sclk, emc */
+#define GBUS_CNT               0
 #endif
+
+#ifdef CONFIG_TEGRA_DUAL_CBUS
+#define CBUS_CNT               2
 #else
-#define NUM_OF_CAP_FREQS       4 /* cpu, cbus, sclk, emc */
+#define CBUS_CNT               1
 #endif
 
+/* cpu, gpu(0|1), cbus(1|2), sclk, emc */
+#define NUM_OF_CAP_FREQS       (1 + GBUS_CNT + CBUS_CNT + 1 + 1)
+
 struct throttle_table {
        unsigned long cap_freqs[NUM_OF_CAP_FREQS];
 };
index 2021cd7..879c52c 100644 (file)
@@ -47,12 +47,11 @@ static struct {
        struct clk *cap_clk;
        unsigned long cap_freq;
 } cap_freqs_table[] = {
-#ifdef CONFIG_TEGRA_DUAL_CBUS
-#ifdef CONFIG_TEGRA_GPU_DVFS
+#ifdef CONFIG_ARCH_TEGRA_12x_SOC
        { .cap_name = "cap.throttle.gbus" },
-#else
-       { .cap_name = "cap.throttle.c2bus" },
 #endif
+#ifdef CONFIG_TEGRA_GPU_DVFS
+       { .cap_name = "cap.throttle.c2bus" },
        { .cap_name = "cap.throttle.c3bus" },
 #else
        { .cap_name = "cap.throttle.cbus" },