diff options
author | Tony Lindgren <tony@atomide.com> | 2011-03-11 12:20:03 -0500 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2011-03-11 12:20:03 -0500 |
commit | a2358a7bc35e388978fc2f7f6b071a0fd27d78c1 (patch) | |
tree | fbdc2ddb066243a11aebc490c4d54e6a42be51e2 /arch/arm/mach-omap2/opp3xxx_data.c | |
parent | 94a06b74e724caabcf0464c81527cfbcae0c8aff (diff) | |
parent | a08572ae529b1e8de12393eeced661feae8fd44c (diff) |
Merge branch 'integration-2.6.39-for-tony' of git://git.pwsan.com/linux-integration into omap-for-linus
Conflicts:
arch/arm/mach-omap2/pm34xx.c
Diffstat (limited to 'arch/arm/mach-omap2/opp3xxx_data.c')
-rw-r--r-- | arch/arm/mach-omap2/opp3xxx_data.c | 66 |
1 files changed, 65 insertions, 1 deletions
diff --git a/arch/arm/mach-omap2/opp3xxx_data.c b/arch/arm/mach-omap2/opp3xxx_data.c index fd3a1af8d51e..d2bd1bd83bf0 100644 --- a/arch/arm/mach-omap2/opp3xxx_data.c +++ b/arch/arm/mach-omap2/opp3xxx_data.c | |||
@@ -4,8 +4,9 @@ | |||
4 | * Copyright (C) 2009-2010 Texas Instruments Incorporated - http://www.ti.com/ | 4 | * Copyright (C) 2009-2010 Texas Instruments Incorporated - http://www.ti.com/ |
5 | * Nishanth Menon | 5 | * Nishanth Menon |
6 | * Kevin Hilman | 6 | * Kevin Hilman |
7 | * Copyright (C) 2010 Nokia Corporation. | 7 | * Copyright (C) 2010-2011 Nokia Corporation. |
8 | * Eduardo Valentin | 8 | * Eduardo Valentin |
9 | * Paul Walmsley | ||
9 | * | 10 | * |
10 | * This program is free software; you can redistribute it and/or modify | 11 | * This program is free software; you can redistribute it and/or modify |
11 | * it under the terms of the GNU General Public License version 2 as | 12 | * it under the terms of the GNU General Public License version 2 as |
@@ -20,9 +21,72 @@ | |||
20 | 21 | ||
21 | #include <plat/cpu.h> | 22 | #include <plat/cpu.h> |
22 | 23 | ||
24 | #include "control.h" | ||
23 | #include "omap_opp_data.h" | 25 | #include "omap_opp_data.h" |
24 | #include "pm.h" | 26 | #include "pm.h" |
25 | 27 | ||
28 | /* 34xx */ | ||
29 | |||
30 | /* VDD1 */ | ||
31 | |||
32 | #define OMAP3430_VDD_MPU_OPP1_UV 975000 | ||
33 | #define OMAP3430_VDD_MPU_OPP2_UV 1075000 | ||
34 | #define OMAP3430_VDD_MPU_OPP3_UV 1200000 | ||
35 | #define OMAP3430_VDD_MPU_OPP4_UV 1270000 | ||
36 | #define OMAP3430_VDD_MPU_OPP5_UV 1350000 | ||
37 | |||
38 | struct omap_volt_data omap34xx_vddmpu_volt_data[] = { | ||
39 | VOLT_DATA_DEFINE(OMAP3430_VDD_MPU_OPP1_UV, OMAP343X_CONTROL_FUSE_OPP1_VDD1, 0xf4, 0x0c), | ||
40 | VOLT_DATA_DEFINE(OMAP3430_VDD_MPU_OPP2_UV, OMAP343X_CONTROL_FUSE_OPP2_VDD1, 0xf4, 0x0c), | ||
41 | VOLT_DATA_DEFINE(OMAP3430_VDD_MPU_OPP3_UV, OMAP343X_CONTROL_FUSE_OPP3_VDD1, 0xf9, 0x18), | ||
42 | VOLT_DATA_DEFINE(OMAP3430_VDD_MPU_OPP4_UV, OMAP343X_CONTROL_FUSE_OPP4_VDD1, 0xf9, 0x18), | ||
43 | VOLT_DATA_DEFINE(OMAP3430_VDD_MPU_OPP5_UV, OMAP343X_CONTROL_FUSE_OPP5_VDD1, 0xf9, 0x18), | ||
44 | VOLT_DATA_DEFINE(0, 0, 0, 0), | ||
45 | }; | ||
46 | |||
47 | /* VDD2 */ | ||
48 | |||
49 | #define OMAP3430_VDD_CORE_OPP1_UV 975000 | ||
50 | #define OMAP3430_VDD_CORE_OPP2_UV 1050000 | ||
51 | #define OMAP3430_VDD_CORE_OPP3_UV 1150000 | ||
52 | |||
53 | struct omap_volt_data omap34xx_vddcore_volt_data[] = { | ||
54 | VOLT_DATA_DEFINE(OMAP3430_VDD_CORE_OPP1_UV, OMAP343X_CONTROL_FUSE_OPP1_VDD2, 0xf4, 0x0c), | ||
55 | VOLT_DATA_DEFINE(OMAP3430_VDD_CORE_OPP2_UV, OMAP343X_CONTROL_FUSE_OPP2_VDD2, 0xf4, 0x0c), | ||
56 | VOLT_DATA_DEFINE(OMAP3430_VDD_CORE_OPP3_UV, OMAP343X_CONTROL_FUSE_OPP3_VDD2, 0xf9, 0x18), | ||
57 | VOLT_DATA_DEFINE(0, 0, 0, 0), | ||
58 | }; | ||
59 | |||
60 | /* 36xx */ | ||
61 | |||
62 | /* VDD1 */ | ||
63 | |||
64 | #define OMAP3630_VDD_MPU_OPP50_UV 1012500 | ||
65 | #define OMAP3630_VDD_MPU_OPP100_UV 1200000 | ||
66 | #define OMAP3630_VDD_MPU_OPP120_UV 1325000 | ||
67 | #define OMAP3630_VDD_MPU_OPP1G_UV 1375000 | ||
68 | |||
69 | struct omap_volt_data omap36xx_vddmpu_volt_data[] = { | ||
70 | VOLT_DATA_DEFINE(OMAP3630_VDD_MPU_OPP50_UV, OMAP3630_CONTROL_FUSE_OPP50_VDD1, 0xf4, 0x0c), | ||
71 | VOLT_DATA_DEFINE(OMAP3630_VDD_MPU_OPP100_UV, OMAP3630_CONTROL_FUSE_OPP100_VDD1, 0xf9, 0x16), | ||
72 | VOLT_DATA_DEFINE(OMAP3630_VDD_MPU_OPP120_UV, OMAP3630_CONTROL_FUSE_OPP120_VDD1, 0xfa, 0x23), | ||
73 | VOLT_DATA_DEFINE(OMAP3630_VDD_MPU_OPP1G_UV, OMAP3630_CONTROL_FUSE_OPP1G_VDD1, 0xfa, 0x27), | ||
74 | VOLT_DATA_DEFINE(0, 0, 0, 0), | ||
75 | }; | ||
76 | |||
77 | /* VDD2 */ | ||
78 | |||
79 | #define OMAP3630_VDD_CORE_OPP50_UV 1000000 | ||
80 | #define OMAP3630_VDD_CORE_OPP100_UV 1200000 | ||
81 | |||
82 | struct omap_volt_data omap36xx_vddcore_volt_data[] = { | ||
83 | VOLT_DATA_DEFINE(OMAP3630_VDD_CORE_OPP50_UV, OMAP3630_CONTROL_FUSE_OPP50_VDD2, 0xf4, 0x0c), | ||
84 | VOLT_DATA_DEFINE(OMAP3630_VDD_CORE_OPP100_UV, OMAP3630_CONTROL_FUSE_OPP100_VDD2, 0xf9, 0x16), | ||
85 | VOLT_DATA_DEFINE(0, 0, 0, 0), | ||
86 | }; | ||
87 | |||
88 | /* OPP data */ | ||
89 | |||
26 | static struct omap_opp_def __initdata omap34xx_opp_def_list[] = { | 90 | static struct omap_opp_def __initdata omap34xx_opp_def_list[] = { |
27 | /* MPU OPP1 */ | 91 | /* MPU OPP1 */ |
28 | OPP_INITIALIZER("mpu", true, 125000000, 975000), | 92 | OPP_INITIALIZER("mpu", true, 125000000, 975000), |