summaryrefslogtreecommitdiffstats
path: root/arch/arm/plat-samsung/adc.c
diff options
context:
space:
mode:
authorHeiko Stuebner <heiko@sntech.de>2011-10-12 14:34:11 +0200
committerKukjin Kim <kgene.kim@samsung.com>2011-10-12 14:34:41 +0200
commitdf303e0236417ca006e04116f18641dbe4bd704a (patch)
tree3f63e46d5ee3068a0eded3394ef3adfb6cf6788b /arch/arm/plat-samsung/adc.c
parentARM: SAMSUNG: Add adc registers for S3C2443/S3C2416 (diff)
downloadlinux-df303e0236417ca006e04116f18641dbe4bd704a.tar.xz
linux-df303e0236417ca006e04116f18641dbe4bd704a.zip
ARM: SAMSUNG: Fix mux bit modification in s3c_adc_select
The mux bits in the adccon register should be cleared only if muxing is really done in ADCCON and not another register. This patch introduces a conditional for this. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/plat-samsung/adc.c')
-rw-r--r--arch/arm/plat-samsung/adc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/arm/plat-samsung/adc.c b/arch/arm/plat-samsung/adc.c
index ee8deef19481..7821055a5046 100644
--- a/arch/arm/plat-samsung/adc.c
+++ b/arch/arm/plat-samsung/adc.c
@@ -98,7 +98,8 @@ static inline void s3c_adc_select(struct adc_device *adc,
client->select_cb(client, 1);
- con &= ~S3C2410_ADCCON_MUXMASK;
+ if (cpu == TYPE_ADCV1 || cpu == TYPE_ADCV2)
+ con &= ~S3C2410_ADCCON_MUXMASK;
con &= ~S3C2410_ADCCON_STDBM;
con &= ~S3C2410_ADCCON_STARTMASK;