kernel-power git -> kernel-bfs
[kernel-bfs] / kernel-bfs-2.6.28 / debian / patches / overclock_smartreflex_805.diff
diff --git a/kernel-bfs-2.6.28/debian/patches/overclock_smartreflex_805.diff b/kernel-bfs-2.6.28/debian/patches/overclock_smartreflex_805.diff
deleted file mode 100644 (file)
index c6df156..0000000
+++ /dev/null
@@ -1,236 +0,0 @@
-diff -urN kernel-power-2.6.28/arch/arm/mach-omap2/omap3-opp.h kernel-power-2.6.28.SR/arch/arm/mach-omap2/omap3-opp.h
---- kernel-power-2.6.28/arch/arm/mach-omap2/omap3-opp.h        2011-10-11 13:51:21.441301622 +0100
-+++ kernel-power-2.6.28.SR/arch/arm/mach-omap2/omap3-opp.h     2011-10-22 16:31:45.291911000 +0100
-@@ -11,8 +11,7 @@
- #define S900M   900000000
- #define S850M   850000000
- #define S805M   805000000
--#define S750M   750000000
--#define S700M   700000000
-+#define S720M   720000000
- #define S600M   600000000
- #define S550M   550000000
- #define S500M   500000000
-diff -urN kernel-power-2.6.28/arch/arm/mach-omap2/pm.c kernel-power-2.6.28.SR/arch/arm/mach-omap2/pm.c
---- kernel-power-2.6.28/arch/arm/mach-omap2/pm.c       2011-10-11 13:51:21.444897248 +0100
-+++ kernel-power-2.6.28.SR/arch/arm/mach-omap2/pm.c    2011-10-30 07:29:47.355582000 +0000
-@@ -44,25 +44,23 @@
- struct omap_opp omap3_mpu_rate_table[] = {
-       {0, 0, 0},
--      {0, 1, 0x1E},
--      /*underclocking*/
--      {S125M, 2, 0x1E},
-       /*default*/
--      {S250M, 3, 0x26},
--      {S500M, 4, 0x30},
--      {S550M, 5, 0x36},
--      {S600M, 6, 0x3C},
-+      {S125M, VDD1_OPP1,  0x1E},
-+      {S250M, VDD1_OPP2,  0x26},
-+      {S500M, VDD1_OPP3,  0x30},
-+      {S550M, VDD1_OPP4,  0x36},
-+      {S600M, VDD1_OPP5,  0x3C},
-       /*overclocking*/
--      {S700M, 7, 0x3C},
--      {S750M, 8, 0x3C},
--      {S805M, 9, 0x3C},
--      {S850M, 10, 0x3C},
--      {S900M, 11, 0x3C},
--      {S950M, 12, 0x3C},
--      {S1000M, 13, 0x3C},
--      {S1100M, 14, 0x48},
--      {S1150M, 15, 0x48},
-+      {S720M, VDD1_OPP6,  0x3C},
-+      {S805M, VDD1_OPP7,  0x3C},
-+      {S850M, VDD1_OPP8,  0x3C},
-+      {S900M, VDD1_OPP9,  0x3C},
-+      {S950M, VDD1_OPP10, 0x3C},
-+      {S1000M,VDD1_OPP11, 0x3C},
-+      {S1100M,VDD1_OPP12, 0x48},
-+      {S1150M,VDD1_OPP13, 0x48},
- };
-+EXPORT_SYMBOL(omap3_mpu_rate_table);
- struct omap_opp omap3_l3_rate_table[] = {
-       {0, 0, 0},
-@@ -76,25 +74,23 @@
- struct omap_opp omap3_dsp_rate_table[] = {
-       {0, 0, 0},
--      /*underclocking*/
--      {S90M,  1, 0x1E},
-       /*default*/
--      {S90M,  2, 0x1E},
--      {S180M, 3, 0x26},
--      {S360M, 4, 0x30},
--      {S400M, 5, 0x36},
--      {S430M, 6, 0x3C},
-+      {S90M,  VDD1_OPP1,  0x1E},
-+      {S180M, VDD1_OPP2,  0x26},
-+      {S360M, VDD1_OPP3,  0x30},
-+      {S400M, VDD1_OPP4,  0x36},
-+      {S430M, VDD1_OPP5,  0x3C},
-       /*overclocking*/
--      {S430M, 7, 0x3C},
--      {S430M, 8, 0x3C},
--      {S430M, 9, 0x3C},/*800MHz*/
--      {S500M, 10, 0x3C},
--      {S500M, 11, 0x3C},
--      {S500M, 12, 0x3C},
--      {S500M, 13, 0x3C},
--      {S520M, 14, 0x48},
--      {S520M, 15, 0x48},
-+      {S520M, VDD1_OPP6,  0x3C},
-+      {S520M, VDD1_OPP7,  0x3C},
-+      {S520M, VDD1_OPP8,  0x3C},
-+      {S520M, VDD1_OPP9,  0x3C},
-+      {S520M, VDD1_OPP10, 0x3C},
-+      {S520M, VDD1_OPP11, 0x3C},
-+      {S520M, VDD1_OPP12, 0x48},
-+      {S520M, VDD1_OPP13, 0x48},
- };
-+EXPORT_SYMBOL(omap3_dsp_rate_table);
- unsigned short enable_dyn_sleep;
- unsigned short clocks_off_while_idle;
-@@ -342,13 +338,13 @@
-       }
-       if (attr == &vdd1_opp_attr) {
--              if (value < 1 || value > 5) {
-+              if (value < MIN_VDD1_OPP || value > MAX_VDD1_OPP) {
-                       printk(KERN_ERR "vdd_opp_store: Invalid value\n");
-                       return -EINVAL;
-               }
-               resource_set_opp_level(PRCM_VDD1, value, flags);
-       } else if (attr == &vdd2_opp_attr) {
--              if (value < 1 || value > 3) {
-+              if (value < MIN_VDD2_OPP || value > MAX_VDD2_OPP) {
-                       printk(KERN_ERR "vdd_opp_store: Invalid value\n");
-                       return -EINVAL;
-               }
-diff -urN kernel-power-2.6.28/arch/arm/mach-omap2/smartreflex.c kernel-power-2.6.28.SR/arch/arm/mach-omap2/smartreflex.c
---- kernel-power-2.6.28/arch/arm/mach-omap2/smartreflex.c      2011-10-11 13:51:21.441301622 +0100
-+++ kernel-power-2.6.28.SR/arch/arm/mach-omap2/smartreflex.c   2011-10-22 14:15:45.469275000 +0100
-@@ -81,7 +81,8 @@
-       u32             clk_length;
-       u32             req_opp_no;
-       u32             opp1_nvalue, opp2_nvalue, opp3_nvalue, opp4_nvalue;
--      u32             opp5_nvalue;
-+      u32             opp5_nvalue;\r
-+      u32             opp6_nvalue, opp7_nvalue;
-       u32             senp_mod, senn_mod;
-       void __iomem    *srbase_addr;
-       void __iomem    *vpbase_addr;
-@@ -164,6 +165,29 @@
-               }
-       }
- }
-+void sr_calculate_rg(u32 rfuse, u32 gain_fuse, u32 delta_nt,\r
-+      u32 *rnsen, u32 *sengain)\r
-+{\r
-+      u32 nadj;\r
-+      nadj = ((1 << (gain_fuse + 8)) / rfuse) + delta_nt;\r
-+      cal_reciprocal(nadj, sengain, rnsen);\r
-+}\r
-+\r
-+static u32 calculate_opp_nvalue(u32 opp5_nvalue, u32 delta_p, u32 delta_n)\r
-+{\r
-+      u32 sen_pgain_fuse, sen_ngain_fuse, sen_prn_fuse, sen_nrn_fuse;\r
-+      u32 sen_nrn, sen_ngain, sen_prn, sen_pgain;\r
-+      sen_pgain_fuse = (opp5_nvalue & 0x00F0000) >> 0x14;\r
-+      sen_ngain_fuse = (opp5_nvalue & 0x000F0000) >> 0x10;\r
-+      sen_prn_fuse = (opp5_nvalue & 0x0000FF00) >> 0x08;\r
-+      sen_nrn_fuse = (opp5_nvalue & 0x000000FF);\r
-+      sr_calculate_rg(sen_nrn_fuse, sen_ngain_fuse, delta_n, &sen_nrn,\r
-+      &sen_ngain);\r
-+      sr_calculate_rg(sen_prn_fuse, sen_pgain_fuse, delta_p, &sen_prn,\r
-+      &sen_pgain);\r
-+      return (sen_pgain << 0x14) | (sen_ngain << 0x10)\r
-+      | (sen_prn << 0x08) | (sen_nrn);\r
-+}\r
- static u32 cal_test_nvalue(u32 sennval, u32 senpval)
- {
-@@ -231,6 +255,10 @@
-                                       OMAP343X_CONTROL_FUSE_OPP2_VDD1);
-               sr->opp1_nvalue = omap_ctrl_readl(
-                                       OMAP343X_CONTROL_FUSE_OPP1_VDD1);
-+              if (sr->opp5_nvalue) {\r
-+                      sr->opp6_nvalue = calculate_opp_nvalue(sr->opp5_nvalue, 227, 379);\r
-+                      sr->opp7_nvalue = calculate_opp_nvalue(sr->opp5_nvalue, 434, 730);\r
-+              }\r
-       } else if (sr->srid == SR2) {
-               sr->senn_mod = (omap_ctrl_readl(OMAP343X_CONTROL_FUSE_SR) &
-                                       OMAP343X_SR2_SENNENABLE_MASK) >>
-@@ -262,6 +290,10 @@
-               sr->opp3_nvalue = cal_test_nvalue(0x85b + 0x200, 0x655 + 0x200);
-               sr->opp2_nvalue = cal_test_nvalue(0x506 + 0x1a0, 0x3be + 0x1a0);
-               sr->opp1_nvalue = cal_test_nvalue(0x373 + 0x100, 0x28c + 0x100);
-+              if (sr->opp5_nvalue) {\r
-+                      sr->opp6_nvalue = calculate_opp_nvalue(sr->opp5_nvalue, 227, 379);\r
-+                      sr->opp7_nvalue = calculate_opp_nvalue(sr->opp5_nvalue, 434, 730);\r
-+              }\r
-       } else if (sr->srid == SR2) {
-               sr->senp_mod = 0x03;
-               sr->senn_mod = 0x03;
-@@ -513,7 +545,13 @@
-       sr->req_opp_no = target_opp_no;
-       if (sr->srid == SR1) {
--              switch (min(target_opp_no-1,5)) {
-+              switch (min(target_opp_no-1,7)) {
-+              case 7:\r
-+                      nvalue_reciprocal = sr->opp7_nvalue;\r
-+                      break;\r
-+              case 6:\r
-+                      nvalue_reciprocal = sr->opp6_nvalue;\r
-+                      break;\r
-               case 5:
-                       nvalue_reciprocal = sr->opp5_nvalue;
-                       break;
-diff -urN kernel-power-2.6.28/arch/arm/mach-omap2/smartreflex.h kernel-power-2.6.28.SR/arch/arm/mach-omap2/smartreflex.h
---- kernel-power-2.6.28/arch/arm/mach-omap2/smartreflex.h      2011-10-11 13:51:21.441301622 +0100
-+++ kernel-power-2.6.28.SR/arch/arm/mach-omap2/smartreflex.h   2011-10-22 13:52:40.850113000 +0100
-@@ -240,7 +240,11 @@
-                                       ID_VDD(PRCM_VDD1) | ID_OPP_NO(0x4))
- #define PRCM_VDD1_OPP5                (OMAP(AT_3430_ES2) | OTHER_ID_TYPE(ID_OPP) | \
-                                       ID_VDD(PRCM_VDD1) | ID_OPP_NO(0x5))
--#define PRCM_NO_VDD1_OPPS     5
-+#define PRCM_VDD1_OPP6                (OMAP(AT_3430_ES2) | OTHER_ID_TYPE(ID_OPP) | \\r
-+                                      ID_VDD(PRCM_VDD1) | ID_OPP_NO(0x6))\r
-+#define PRCM_VDD1_OPP7                (OMAP(AT_3430_ES2) | OTHER_ID_TYPE(ID_OPP) | \\r
-+                                      ID_VDD(PRCM_VDD1) | ID_OPP_NO(0x7))\r
-+#define PRCM_NO_VDD1_OPPS     7
- /* VDD2 OPPs */
-diff -urN kernel-power-2.6.28/arch/arm/plat-omap/include/mach/omap34xx.h kernel-power-2.6.28.SR/arch/arm/plat-omap/include/mach/omap34xx.h
---- kernel-power-2.6.28/arch/arm/plat-omap/include/mach/omap34xx.h     2011-10-11 13:51:21.441301622 +0100
-+++ kernel-power-2.6.28.SR/arch/arm/plat-omap/include/mach/omap34xx.h  2011-10-22 15:52:18.063235000 +0100
-@@ -107,6 +107,14 @@
- #define VDD1_OPP3     0x3
- #define VDD1_OPP4     0x4
- #define VDD1_OPP5     0x5
-+#define VDD1_OPP6     0x6\r
-+#define VDD1_OPP7     0x7\r
-+#define VDD1_OPP8     0x8\r
-+#define VDD1_OPP9     0x9\r
-+#define VDD1_OPP10    0xA\r
-+#define VDD1_OPP11    0xB\r
-+#define VDD1_OPP12    0xC\r
-+#define VDD1_OPP13    0xD\r
- /* VDD2 OPPS */
- #define VDD2_OPP1     0x1
-@@ -114,8 +122,7 @@
- #define VDD2_OPP3     0x3
- #define MIN_VDD1_OPP  VDD1_OPP1
--/*#define MAX_VDD1_OPP        VDD1_OPP5*/
--#define MAX_VDD1_OPP  15
-+#define MAX_VDD1_OPP  VDD1_OPP13
- #define MIN_VDD2_OPP  VDD2_OPP1
- #define MAX_VDD2_OPP  VDD2_OPP3