summaryrefslogtreecommitdiffstats
path: root/recipes-kernel/linux/linux-3.0/pm-wip/voltdm/0116-OMAP2-PRM-add-register-access-functions-for-VC-VP.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-kernel/linux/linux-3.0/pm-wip/voltdm/0116-OMAP2-PRM-add-register-access-functions-for-VC-VP.patch')
-rw-r--r--recipes-kernel/linux/linux-3.0/pm-wip/voltdm/0116-OMAP2-PRM-add-register-access-functions-for-VC-VP.patch119
1 files changed, 0 insertions, 119 deletions
diff --git a/recipes-kernel/linux/linux-3.0/pm-wip/voltdm/0116-OMAP2-PRM-add-register-access-functions-for-VC-VP.patch b/recipes-kernel/linux/linux-3.0/pm-wip/voltdm/0116-OMAP2-PRM-add-register-access-functions-for-VC-VP.patch
deleted file mode 100644
index fbb27a2e..00000000
--- a/recipes-kernel/linux/linux-3.0/pm-wip/voltdm/0116-OMAP2-PRM-add-register-access-functions-for-VC-VP.patch
+++ /dev/null
@@ -1,119 +0,0 @@
1From 3326bc8057e4dd85f135faa00a3d079fab05ac1e Mon Sep 17 00:00:00 2001
2From: Kevin Hilman <khilman@ti.com>
3Date: Mon, 28 Mar 2011 10:25:12 -0700
4Subject: [PATCH 116/149] OMAP2+: PRM: add register access functions for VC/VP
5
6On OMAP3+, the voltage controller (VC) and voltage processor (VP) are
7inside the PRM. Add some PRM helper functions for register access to
8these module registers.
9
10Signed-off-by: Kevin Hilman <khilman@ti.com>
11---
12 arch/arm/mach-omap2/prm2xxx_3xxx.c | 15 +++++++++++++++
13 arch/arm/mach-omap2/prm2xxx_3xxx.h | 8 ++++++++
14 arch/arm/mach-omap2/prm44xx.c | 22 ++++++++++++++++++++++
15 arch/arm/mach-omap2/prm44xx.h | 8 ++++++++
16 4 files changed, 53 insertions(+), 0 deletions(-)
17
18diff --git a/arch/arm/mach-omap2/prm2xxx_3xxx.c b/arch/arm/mach-omap2/prm2xxx_3xxx.c
19index 58c5c87..3b83763 100644
20--- a/arch/arm/mach-omap2/prm2xxx_3xxx.c
21+++ b/arch/arm/mach-omap2/prm2xxx_3xxx.c
22@@ -197,3 +197,18 @@ void omap3_prm_vp_clear_txdone(u8 vp_id)
23 omap2_prm_write_mod_reg(vp->tranxdone_status,
24 OCP_MOD, OMAP3_PRM_IRQSTATUS_MPU_OFFSET);
25 }
26+
27+u32 omap3_prm_vcvp_read(u8 offset)
28+{
29+ return omap2_prm_read_mod_reg(OMAP3430_GR_MOD, offset);
30+}
31+
32+void omap3_prm_vcvp_write(u32 val, u8 offset)
33+{
34+ omap2_prm_write_mod_reg(val, OMAP3430_GR_MOD, offset);
35+}
36+
37+u32 omap3_prm_vcvp_rmw(u32 mask, u32 bits, u8 offset)
38+{
39+ return omap2_prm_rmw_mod_reg_bits(mask, bits, OMAP3430_GR_MOD, offset);
40+}
41diff --git a/arch/arm/mach-omap2/prm2xxx_3xxx.h b/arch/arm/mach-omap2/prm2xxx_3xxx.h
42index 5112526..cef533d 100644
43--- a/arch/arm/mach-omap2/prm2xxx_3xxx.h
44+++ b/arch/arm/mach-omap2/prm2xxx_3xxx.h
45@@ -307,7 +307,15 @@ extern int omap2_prm_deassert_hardreset(s16 prm_mod, u8 rst_shift, u8 st_shift);
46 u32 omap3_prm_vp_check_txdone(u8 vp_id);
47 void omap3_prm_vp_clear_txdone(u8 vp_id);
48
49+/*
50+ * OMAP3 access functions for voltage controller (VC) and
51+ * voltage proccessor (VP) in the PRM.
52+ */
53+extern u32 omap3_prm_vcvp_read(u8 offset);
54+extern void omap3_prm_vcvp_write(u32 val, u8 offset);
55+extern u32 omap3_prm_vcvp_rmw(u32 mask, u32 bits, u8 offset);
56 #endif /* CONFIG_ARCH_OMAP4 */
57+
58 #endif
59
60 /*
61diff --git a/arch/arm/mach-omap2/prm44xx.c b/arch/arm/mach-omap2/prm44xx.c
62index 390e32c..495a31a 100644
63--- a/arch/arm/mach-omap2/prm44xx.c
64+++ b/arch/arm/mach-omap2/prm44xx.c
65@@ -24,6 +24,8 @@
66 #include "vp.h"
67 #include "prm44xx.h"
68 #include "prm-regbits-44xx.h"
69+#include "prcm44xx.h"
70+#include "prminst44xx.h"
71
72 /* PRM low-level functions */
73
74@@ -99,3 +101,23 @@ void omap4_prm_vp_clear_txdone(u8 vp_id)
75 OMAP4430_PRM_OCP_SOCKET_INST,
76 vp->irqstatus_mpu);
77 };
78+
79+u32 omap4_prm_vcvp_read(u8 offset)
80+{
81+ return omap4_prminst_read_inst_reg(OMAP4430_PRM_PARTITION,
82+ OMAP4430_PRM_DEVICE_INST, offset);
83+}
84+
85+void omap4_prm_vcvp_write(u32 val, u8 offset)
86+{
87+ omap4_prminst_write_inst_reg(val, OMAP4430_PRM_PARTITION,
88+ OMAP4430_PRM_DEVICE_INST, offset);
89+}
90+
91+u32 omap4_prm_vcvp_rmw(u32 mask, u32 bits, u8 offset)
92+{
93+ return omap4_prminst_rmw_inst_reg_bits(mask, bits,
94+ OMAP4430_PRM_PARTITION,
95+ OMAP4430_PRM_DEVICE_INST,
96+ offset);
97+}
98diff --git a/arch/arm/mach-omap2/prm44xx.h b/arch/arm/mach-omap2/prm44xx.h
99index b28c87d..3d66ccd 100644
100--- a/arch/arm/mach-omap2/prm44xx.h
101+++ b/arch/arm/mach-omap2/prm44xx.h
102@@ -755,6 +755,14 @@ extern u32 omap4_prm_rmw_inst_reg_bits(u32 mask, u32 bits, s16 inst, s16 idx);
103 u32 omap4_prm_vp_check_txdone(u8 vp_id);
104 void omap4_prm_vp_clear_txdone(u8 vp_id);
105
106+/*
107+ * OMAP4 access functions for voltage controller (VC) and
108+ * voltage proccessor (VP) in the PRM.
109+ */
110+extern u32 omap4_prm_vcvp_read(u8 offset);
111+extern void omap4_prm_vcvp_write(u32 val, u8 offset);
112+extern u32 omap4_prm_vcvp_rmw(u32 mask, u32 bits, u8 offset);
113+
114 # endif
115
116 #endif
117--
1181.7.2.5
119