aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/prcm.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-omap2/prcm.c')
-rw-r--r--arch/arm/mach-omap2/prcm.c26
1 files changed, 1 insertions, 25 deletions
diff --git a/arch/arm/mach-omap2/prcm.c b/arch/arm/mach-omap2/prcm.c
index dd95cbbdecc7..fe0865bd64cf 100644
--- a/arch/arm/mach-omap2/prcm.c
+++ b/arch/arm/mach-omap2/prcm.c
@@ -33,6 +33,7 @@
33#include "cm44xx.h" 33#include "cm44xx.h"
34#include "prm2xxx_3xxx.h" 34#include "prm2xxx_3xxx.h"
35#include "prm44xx.h" 35#include "prm44xx.h"
36#include "prcm44xx.h"
36#include "prm-regbits-24xx.h" 37#include "prm-regbits-24xx.h"
37#include "prm-regbits-44xx.h" 38#include "prm-regbits-44xx.h"
38#include "control.h" 39#include "control.h"
@@ -80,31 +81,6 @@ void omap_prcm_arch_reset(char mode, const char *cmd)
80 prcm_offs, OMAP4_RM_RSTCTRL); 81 prcm_offs, OMAP4_RM_RSTCTRL);
81} 82}
82 83
83/* Read a PRM register, AND it, and shift the result down to bit 0 */
84u32 omap4_prm_read_bits_shift(void __iomem *reg, u32 mask)
85{
86 u32 v;
87
88 v = __raw_readl(reg);
89 v &= mask;
90 v >>= __ffs(mask);
91
92 return v;
93}
94
95/* Read-modify-write a register in a PRM module. Caller must lock */
96u32 omap4_prm_rmw_reg_bits(u32 mask, u32 bits, void __iomem *reg)
97{
98 u32 v;
99
100 v = __raw_readl(reg);
101 v &= ~mask;
102 v |= bits;
103 __raw_writel(v, reg);
104
105 return v;
106}
107
108/** 84/**
109 * omap2_cm_wait_idlest - wait for IDLEST bit to indicate module readiness 85 * omap2_cm_wait_idlest - wait for IDLEST bit to indicate module readiness
110 * @reg: physical address of module IDLEST register 86 * @reg: physical address of module IDLEST register