summaryrefslogtreecommitdiff
path: root/arch/arm/mach-ep93xx/core.c
diff options
context:
space:
mode:
authorHartley Sweeten <hartleys@visionengravers.com>2010-06-14 16:54:16 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2010-06-16 22:56:06 +0100
commita0fb007bf0c7de9ae361a9ad3821df4c69d4d2d9 (patch)
tree036f9f1363464fcaf68a58d3ba7336d1c8bf6cf0 /arch/arm/mach-ep93xx/core.c
parent16bcf78f8cac9cc3057c6ce3800490cb6e684ce8 (diff)
ARM: 6174/1: ep93xx: clear devcfg bits before setting them
The ep93xx core helper function ep93xx_devcfg_set_clear should mask the clear_bits before setting the new set_bits in case the clear_bits are a mask value that also includes the set_bits. Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Acked-by: Ryan Mallon <ryan@bluewatersys.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-ep93xx/core.c')
-rw-r--r--arch/arm/mach-ep93xx/core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm/mach-ep93xx/core.c b/arch/arm/mach-ep93xx/core.c
index f4b25bf00b64..8e37a045188c 100644
--- a/arch/arm/mach-ep93xx/core.c
+++ b/arch/arm/mach-ep93xx/core.c
@@ -216,8 +216,8 @@ void ep93xx_devcfg_set_clear(unsigned int set_bits, unsigned int clear_bits)
spin_lock_irqsave(&syscon_swlock, flags);
val = __raw_readl(EP93XX_SYSCON_DEVCFG);
- val |= set_bits;
val &= ~clear_bits;
+ val |= set_bits;
__raw_writel(0xaa, EP93XX_SYSCON_SWLOCK);
__raw_writel(val, EP93XX_SYSCON_DEVCFG);