msm: acpuclock-8974: Add support for Speed Bin 2 (2150.4MHz) parts
Add the 7 PVS bin tables for the new speed bin.
Change-Id: I68e71ba218ddd1892fc3f60080fd7e5b05461ca8
Signed-off-by: Matt Wagantall <mattw@codeaurora.org>
diff --git a/arch/arm/mach-msm/acpuclock-8974.c b/arch/arm/mach-msm/acpuclock-8974.c
index 370be84..c960516 100644
--- a/arch/arm/mach-msm/acpuclock-8974.c
+++ b/arch/arm/mach-msm/acpuclock-8974.c
@@ -470,6 +470,216 @@
{ 0, { 0 } }
};
+static struct acpu_level acpu_freq_tbl_2p2g_pvs0[] __initdata = {
+ { 1, { 300000, PLL_0, 0, 0 }, L2(0), 800000, 400000 },
+ { 0, { 345600, HFPLL, 2, 36 }, L2(3), 800000, 3200000 },
+ { 1, { 422400, HFPLL, 2, 44 }, L2(3), 805000, 3200000 },
+ { 0, { 499200, HFPLL, 2, 52 }, L2(6), 815000, 3200000 },
+ { 1, { 576000, HFPLL, 1, 30 }, L2(6), 825000, 3200000 },
+ { 1, { 652800, HFPLL, 1, 34 }, L2(7), 835000, 3200000 },
+ { 1, { 729600, HFPLL, 1, 38 }, L2(7), 845000, 3200000 },
+ { 0, { 806400, HFPLL, 1, 42 }, L2(10), 855000, 3200000 },
+ { 1, { 883200, HFPLL, 1, 46 }, L2(10), 865000, 3200000 },
+ { 0, { 960000, HFPLL, 1, 50 }, L2(10), 875000, 3200000 },
+ { 1, { 1036800, HFPLL, 1, 54 }, L2(10), 890000, 3200000 },
+ { 0, { 1113600, HFPLL, 1, 58 }, L2(12), 900000, 3200000 },
+ { 0, { 1190400, HFPLL, 1, 62 }, L2(12), 915000, 3200000 },
+ { 0, { 1267200, HFPLL, 1, 66 }, L2(12), 925000, 3200000 },
+ { 1, { 1344000, HFPLL, 1, 70 }, L2(12), 940000, 3200000 },
+ { 0, { 1420800, HFPLL, 1, 74 }, L2(16), 950000, 3200000 },
+ { 0, { 1497600, HFPLL, 1, 78 }, L2(16), 965000, 3200000 },
+ { 0, { 1574400, HFPLL, 1, 82 }, L2(16), 980000, 3200000 },
+ { 0, { 1651200, HFPLL, 1, 86 }, L2(16), 995000, 3200000 },
+ { 1, { 1728000, HFPLL, 1, 90 }, L2(16), 1010000, 3200000 },
+ { 0, { 1804800, HFPLL, 1, 94 }, L2(19), 1025000, 3200000 },
+ { 0, { 1881600, HFPLL, 1, 98 }, L2(19), 1040000, 3200000 },
+ { 0, { 1958400, HFPLL, 1, 102 }, L2(19), 1055000, 3200000 },
+ { 1, { 2035200, HFPLL, 1, 106 }, L2(19), 1070000, 3200000 },
+ { 0, { 2112000, HFPLL, 1, 110 }, L2(19), 1085000, 3200000 },
+ { 1, { 2150400, HFPLL, 1, 112 }, L2(19), 1100000, 3200000 },
+ { 0, { 0 } }
+};
+
+static struct acpu_level acpu_freq_tbl_2p2g_pvs1[] __initdata = {
+ { 1, { 300000, PLL_0, 0, 0 }, L2(0), 800000, 400000 },
+ { 0, { 345600, HFPLL, 2, 36 }, L2(3), 800000, 3200000 },
+ { 1, { 422400, HFPLL, 2, 44 }, L2(3), 800000, 3200000 },
+ { 0, { 499200, HFPLL, 2, 52 }, L2(6), 800000, 3200000 },
+ { 1, { 576000, HFPLL, 1, 30 }, L2(6), 810000, 3200000 },
+ { 1, { 652800, HFPLL, 1, 34 }, L2(7), 820000, 3200000 },
+ { 1, { 729600, HFPLL, 1, 38 }, L2(7), 830000, 3200000 },
+ { 0, { 806400, HFPLL, 1, 42 }, L2(10), 840000, 3200000 },
+ { 1, { 883200, HFPLL, 1, 46 }, L2(10), 850000, 3200000 },
+ { 0, { 960000, HFPLL, 1, 50 }, L2(10), 860000, 3200000 },
+ { 1, { 1036800, HFPLL, 1, 54 }, L2(10), 875000, 3200000 },
+ { 0, { 1113600, HFPLL, 1, 58 }, L2(12), 885000, 3200000 },
+ { 0, { 1190400, HFPLL, 1, 62 }, L2(12), 895000, 3200000 },
+ { 0, { 1267200, HFPLL, 1, 66 }, L2(12), 910000, 3200000 },
+ { 1, { 1344000, HFPLL, 1, 70 }, L2(12), 920000, 3200000 },
+ { 0, { 1420800, HFPLL, 1, 74 }, L2(16), 930000, 3200000 },
+ { 0, { 1497600, HFPLL, 1, 78 }, L2(16), 945000, 3200000 },
+ { 0, { 1574400, HFPLL, 1, 82 }, L2(16), 960000, 3200000 },
+ { 0, { 1651200, HFPLL, 1, 86 }, L2(16), 975000, 3200000 },
+ { 1, { 1728000, HFPLL, 1, 90 }, L2(16), 990000, 3200000 },
+ { 0, { 1804800, HFPLL, 1, 94 }, L2(19), 1005000, 3200000 },
+ { 0, { 1881600, HFPLL, 1, 98 }, L2(19), 1020000, 3200000 },
+ { 0, { 1958400, HFPLL, 1, 102 }, L2(19), 1030000, 3200000 },
+ { 1, { 2035200, HFPLL, 1, 106 }, L2(19), 1045000, 3200000 },
+ { 0, { 2112000, HFPLL, 1, 110 }, L2(19), 1060000, 3200000 },
+ { 1, { 2150400, HFPLL, 1, 112 }, L2(19), 1075000, 3200000 },
+ { 0, { 0 } }
+};
+
+static struct acpu_level acpu_freq_tbl_2p2g_pvs2[] __initdata = {
+ { 1, { 300000, PLL_0, 0, 0 }, L2(0), 775000, 400000 },
+ { 0, { 345600, HFPLL, 2, 36 }, L2(3), 775000, 3200000 },
+ { 1, { 422400, HFPLL, 2, 44 }, L2(3), 775000, 3200000 },
+ { 0, { 499200, HFPLL, 2, 52 }, L2(6), 785000, 3200000 },
+ { 1, { 576000, HFPLL, 1, 30 }, L2(6), 795000, 3200000 },
+ { 1, { 652800, HFPLL, 1, 34 }, L2(7), 805000, 3200000 },
+ { 1, { 729600, HFPLL, 1, 38 }, L2(7), 815000, 3200000 },
+ { 0, { 806400, HFPLL, 1, 42 }, L2(10), 825000, 3200000 },
+ { 1, { 883200, HFPLL, 1, 46 }, L2(10), 835000, 3200000 },
+ { 0, { 960000, HFPLL, 1, 50 }, L2(10), 845000, 3200000 },
+ { 1, { 1036800, HFPLL, 1, 54 }, L2(10), 855000, 3200000 },
+ { 0, { 1113600, HFPLL, 1, 58 }, L2(12), 865000, 3200000 },
+ { 0, { 1190400, HFPLL, 1, 62 }, L2(12), 875000, 3200000 },
+ { 0, { 1267200, HFPLL, 1, 66 }, L2(12), 890000, 3200000 },
+ { 1, { 1344000, HFPLL, 1, 70 }, L2(12), 900000, 3200000 },
+ { 0, { 1420800, HFPLL, 1, 74 }, L2(16), 910000, 3200000 },
+ { 0, { 1497600, HFPLL, 1, 78 }, L2(16), 925000, 3200000 },
+ { 0, { 1574400, HFPLL, 1, 82 }, L2(16), 940000, 3200000 },
+ { 0, { 1651200, HFPLL, 1, 86 }, L2(16), 955000, 3200000 },
+ { 1, { 1728000, HFPLL, 1, 90 }, L2(16), 970000, 3200000 },
+ { 0, { 1804800, HFPLL, 1, 94 }, L2(19), 980000, 3200000 },
+ { 0, { 1881600, HFPLL, 1, 98 }, L2(19), 995000, 3200000 },
+ { 0, { 1958400, HFPLL, 1, 102 }, L2(19), 1005000, 3200000 },
+ { 1, { 2035200, HFPLL, 1, 106 }, L2(19), 1020000, 3200000 },
+ { 0, { 2112000, HFPLL, 1, 110 }, L2(19), 1035000, 3200000 },
+ { 1, { 2150400, HFPLL, 1, 112 }, L2(19), 1050000, 3200000 },
+ { 0, { 0 } }
+};
+
+static struct acpu_level acpu_freq_tbl_2p2g_pvs3[] __initdata = {
+ { 1, { 300000, PLL_0, 0, 0 }, L2(0), 775000, 400000 },
+ { 0, { 345600, HFPLL, 2, 36 }, L2(3), 775000, 3200000 },
+ { 1, { 422400, HFPLL, 2, 44 }, L2(3), 775000, 3200000 },
+ { 0, { 499200, HFPLL, 2, 52 }, L2(6), 775000, 3200000 },
+ { 1, { 576000, HFPLL, 1, 30 }, L2(6), 780000, 3200000 },
+ { 1, { 652800, HFPLL, 1, 34 }, L2(7), 790000, 3200000 },
+ { 1, { 729600, HFPLL, 1, 38 }, L2(7), 800000, 3200000 },
+ { 0, { 806400, HFPLL, 1, 42 }, L2(10), 810000, 3200000 },
+ { 1, { 883200, HFPLL, 1, 46 }, L2(10), 820000, 3200000 },
+ { 0, { 960000, HFPLL, 1, 50 }, L2(10), 830000, 3200000 },
+ { 1, { 1036800, HFPLL, 1, 54 }, L2(10), 840000, 3200000 },
+ { 0, { 1113600, HFPLL, 1, 58 }, L2(12), 850000, 3200000 },
+ { 0, { 1190400, HFPLL, 1, 62 }, L2(12), 860000, 3200000 },
+ { 0, { 1267200, HFPLL, 1, 66 }, L2(12), 875000, 3200000 },
+ { 1, { 1344000, HFPLL, 1, 70 }, L2(12), 885000, 3200000 },
+ { 0, { 1420800, HFPLL, 1, 74 }, L2(16), 895000, 3200000 },
+ { 0, { 1497600, HFPLL, 1, 78 }, L2(16), 910000, 3200000 },
+ { 0, { 1574400, HFPLL, 1, 82 }, L2(16), 925000, 3200000 },
+ { 0, { 1651200, HFPLL, 1, 86 }, L2(16), 935000, 3200000 },
+ { 1, { 1728000, HFPLL, 1, 90 }, L2(16), 950000, 3200000 },
+ { 0, { 1804800, HFPLL, 1, 94 }, L2(19), 960000, 3200000 },
+ { 0, { 1881600, HFPLL, 1, 98 }, L2(19), 970000, 3200000 },
+ { 0, { 1958400, HFPLL, 1, 102 }, L2(19), 985000, 3200000 },
+ { 1, { 2035200, HFPLL, 1, 106 }, L2(19), 995000, 3200000 },
+ { 0, { 2112000, HFPLL, 1, 110 }, L2(19), 1010000, 3200000 },
+ { 1, { 2150400, HFPLL, 1, 112 }, L2(19), 1025000, 3200000 },
+ { 0, { 0 } }
+};
+
+static struct acpu_level acpu_freq_tbl_2p2g_pvs4[] __initdata = {
+ { 1, { 300000, PLL_0, 0, 0 }, L2(0), 775000, 400000 },
+ { 0, { 345600, HFPLL, 2, 36 }, L2(3), 775000, 3200000 },
+ { 1, { 422400, HFPLL, 2, 44 }, L2(3), 775000, 3200000 },
+ { 0, { 499200, HFPLL, 2, 52 }, L2(6), 775000, 3200000 },
+ { 1, { 576000, HFPLL, 1, 30 }, L2(6), 775000, 3200000 },
+ { 1, { 652800, HFPLL, 1, 34 }, L2(7), 780000, 3200000 },
+ { 1, { 729600, HFPLL, 1, 38 }, L2(7), 790000, 3200000 },
+ { 0, { 806400, HFPLL, 1, 42 }, L2(10), 800000, 3200000 },
+ { 1, { 883200, HFPLL, 1, 46 }, L2(10), 810000, 3200000 },
+ { 0, { 960000, HFPLL, 1, 50 }, L2(10), 820000, 3200000 },
+ { 1, { 1036800, HFPLL, 1, 54 }, L2(10), 830000, 3200000 },
+ { 0, { 1113600, HFPLL, 1, 58 }, L2(12), 840000, 3200000 },
+ { 0, { 1190400, HFPLL, 1, 62 }, L2(12), 850000, 3200000 },
+ { 0, { 1267200, HFPLL, 1, 66 }, L2(12), 860000, 3200000 },
+ { 1, { 1344000, HFPLL, 1, 70 }, L2(12), 870000, 3200000 },
+ { 0, { 1420800, HFPLL, 1, 74 }, L2(16), 880000, 3200000 },
+ { 0, { 1497600, HFPLL, 1, 78 }, L2(16), 895000, 3200000 },
+ { 0, { 1574400, HFPLL, 1, 82 }, L2(16), 910000, 3200000 },
+ { 0, { 1651200, HFPLL, 1, 86 }, L2(16), 920000, 3200000 },
+ { 1, { 1728000, HFPLL, 1, 90 }, L2(16), 930000, 3200000 },
+ { 0, { 1804800, HFPLL, 1, 94 }, L2(19), 940000, 3200000 },
+ { 0, { 1881600, HFPLL, 1, 98 }, L2(19), 950000, 3200000 },
+ { 0, { 1958400, HFPLL, 1, 102 }, L2(19), 960000, 3200000 },
+ { 1, { 2035200, HFPLL, 1, 106 }, L2(19), 975000, 3200000 },
+ { 0, { 2112000, HFPLL, 1, 110 }, L2(19), 985000, 3200000 },
+ { 1, { 2150400, HFPLL, 1, 112 }, L2(19), 1000000, 3200000 },
+ { 0, { 0 } }
+};
+
+static struct acpu_level acpu_freq_tbl_2p2g_pvs5[] __initdata = {
+ { 1, { 300000, PLL_0, 0, 0 }, L2(0), 750000, 400000 },
+ { 0, { 345600, HFPLL, 2, 36 }, L2(3), 750000, 3200000 },
+ { 1, { 422400, HFPLL, 2, 44 }, L2(3), 750000, 3200000 },
+ { 0, { 499200, HFPLL, 2, 52 }, L2(6), 750000, 3200000 },
+ { 1, { 576000, HFPLL, 1, 30 }, L2(6), 760000, 3200000 },
+ { 1, { 652800, HFPLL, 1, 34 }, L2(7), 770000, 3200000 },
+ { 1, { 729600, HFPLL, 1, 38 }, L2(7), 780000, 3200000 },
+ { 0, { 806400, HFPLL, 1, 42 }, L2(10), 790000, 3200000 },
+ { 1, { 883200, HFPLL, 1, 46 }, L2(10), 800000, 3200000 },
+ { 0, { 960000, HFPLL, 1, 50 }, L2(10), 810000, 3200000 },
+ { 1, { 1036800, HFPLL, 1, 54 }, L2(10), 820000, 3200000 },
+ { 0, { 1113600, HFPLL, 1, 58 }, L2(12), 830000, 3200000 },
+ { 0, { 1190400, HFPLL, 1, 62 }, L2(12), 840000, 3200000 },
+ { 0, { 1267200, HFPLL, 1, 66 }, L2(12), 850000, 3200000 },
+ { 1, { 1344000, HFPLL, 1, 70 }, L2(12), 860000, 3200000 },
+ { 0, { 1420800, HFPLL, 1, 74 }, L2(16), 870000, 3200000 },
+ { 0, { 1497600, HFPLL, 1, 78 }, L2(16), 880000, 3200000 },
+ { 0, { 1574400, HFPLL, 1, 82 }, L2(16), 890000, 3200000 },
+ { 0, { 1651200, HFPLL, 1, 86 }, L2(16), 900000, 3200000 },
+ { 1, { 1728000, HFPLL, 1, 90 }, L2(16), 910000, 3200000 },
+ { 0, { 1804800, HFPLL, 1, 94 }, L2(19), 920000, 3200000 },
+ { 0, { 1881600, HFPLL, 1, 98 }, L2(19), 930000, 3200000 },
+ { 0, { 1958400, HFPLL, 1, 102 }, L2(19), 940000, 3200000 },
+ { 1, { 2035200, HFPLL, 1, 106 }, L2(19), 955000, 3200000 },
+ { 0, { 2112000, HFPLL, 1, 110 }, L2(19), 965000, 3200000 },
+ { 1, { 2150400, HFPLL, 1, 112 }, L2(19), 975000, 3200000 },
+ { 0, { 0 } }
+};
+
+static struct acpu_level acpu_freq_tbl_2p2g_pvs6[] __initdata = {
+ { 1, { 300000, PLL_0, 0, 0 }, L2(0), 75000, 400000 },
+ { 0, { 345600, HFPLL, 2, 36 }, L2(3), 75000, 3200000 },
+ { 1, { 422400, HFPLL, 2, 44 }, L2(3), 75000, 3200000 },
+ { 0, { 499200, HFPLL, 2, 52 }, L2(6), 75000, 3200000 },
+ { 1, { 576000, HFPLL, 1, 30 }, L2(6), 75000, 3200000 },
+ { 1, { 652800, HFPLL, 1, 34 }, L2(7), 76000, 3200000 },
+ { 1, { 729600, HFPLL, 1, 38 }, L2(7), 77000, 3200000 },
+ { 0, { 806400, HFPLL, 1, 42 }, L2(10), 78000, 3200000 },
+ { 1, { 883200, HFPLL, 1, 46 }, L2(10), 79000, 3200000 },
+ { 0, { 960000, HFPLL, 1, 50 }, L2(10), 80000, 3200000 },
+ { 1, { 1036800, HFPLL, 1, 54 }, L2(10), 81000, 3200000 },
+ { 0, { 1113600, HFPLL, 1, 58 }, L2(12), 82000, 3200000 },
+ { 0, { 1190400, HFPLL, 1, 62 }, L2(12), 83000, 3200000 },
+ { 0, { 1267200, HFPLL, 1, 66 }, L2(12), 84000, 3200000 },
+ { 1, { 1344000, HFPLL, 1, 70 }, L2(12), 85000, 3200000 },
+ { 0, { 1420800, HFPLL, 1, 74 }, L2(16), 86000, 3200000 },
+ { 0, { 1497600, HFPLL, 1, 78 }, L2(16), 87000, 3200000 },
+ { 0, { 1574400, HFPLL, 1, 82 }, L2(16), 87500, 3200000 },
+ { 0, { 1651200, HFPLL, 1, 86 }, L2(16), 88500, 3200000 },
+ { 1, { 1728000, HFPLL, 1, 90 }, L2(16), 89500, 3200000 },
+ { 0, { 1804800, HFPLL, 1, 94 }, L2(19), 90500, 3200000 },
+ { 0, { 1881600, HFPLL, 1, 98 }, L2(19), 91500, 3200000 },
+ { 0, { 1958400, HFPLL, 1, 102 }, L2(19), 92000, 3200000 },
+ { 1, { 2035200, HFPLL, 1, 106 }, L2(19), 93000, 3200000 },
+ { 0, { 2112000, HFPLL, 1, 110 }, L2(19), 94000, 3200000 },
+ { 1, { 2150400, HFPLL, 1, 112 }, L2(19), 95000, 3200000 },
+ { 0, { 0 } }
+};
+
static struct acpu_level acpu_freq_tbl_2p3g_pvs0[] __initdata = {
{ 1, { 300000, PLL_0, 0, 0 }, L2(0), 800000, 400000 },
{ 0, { 345600, HFPLL, 2, 36 }, L2(3), 800000, 3200000 },
@@ -716,6 +926,17 @@
[1][5] = { acpu_freq_tbl_2p3g_pvs5, sizeof(acpu_freq_tbl_2p3g_pvs5) },
[1][6] = { acpu_freq_tbl_2p3g_pvs6, sizeof(acpu_freq_tbl_2p3g_pvs6) },
[1][7] = { acpu_freq_tbl_2p3g_pvs6, sizeof(acpu_freq_tbl_2p3g_pvs6) },
+
+ /* 8974v2 2.0GHz Parts */
+ [2][0] = { acpu_freq_tbl_2p2g_pvs0, sizeof(acpu_freq_tbl_2p2g_pvs0) },
+ [2][1] = { acpu_freq_tbl_2p2g_pvs1, sizeof(acpu_freq_tbl_2p2g_pvs1) },
+ [2][2] = { acpu_freq_tbl_2p2g_pvs2, sizeof(acpu_freq_tbl_2p2g_pvs2) },
+ [2][3] = { acpu_freq_tbl_2p2g_pvs3, sizeof(acpu_freq_tbl_2p2g_pvs3) },
+ [2][4] = { acpu_freq_tbl_2p2g_pvs4, sizeof(acpu_freq_tbl_2p2g_pvs4) },
+ [2][5] = { acpu_freq_tbl_2p2g_pvs5, sizeof(acpu_freq_tbl_2p2g_pvs5) },
+ [2][6] = { acpu_freq_tbl_2p2g_pvs6, sizeof(acpu_freq_tbl_2p2g_pvs6) },
+ [2][7] = { acpu_freq_tbl_2p2g_pvs6, sizeof(acpu_freq_tbl_2p2g_pvs6) },
+
};
static struct msm_bus_scale_pdata bus_scale_data __initdata = {