diff options
author | Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> | 2008-07-23 21:28:55 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-07-24 10:47:25 -0700 |
commit | 5aa0769d089125e63f8dc23e0283e559e1790493 (patch) | |
tree | 5e5ef96ab69abe0a75ec9712297f2e493055e900 | |
parent | 82736f4d1d2b7063b829cc93171a6e5aea8a9c49 (diff) | |
download | kernel_samsung_smdk4412-5aa0769d089125e63f8dc23e0283e559e1790493.zip kernel_samsung_smdk4412-5aa0769d089125e63f8dc23e0283e559e1790493.tar.gz kernel_samsung_smdk4412-5aa0769d089125e63f8dc23e0283e559e1790493.tar.bz2 |
atmel_pwm: set up only one PWM clock when allocating a clock
This patch will only setup one clock, if free, and return this clock to the
caller. The previous solution would setup both clocks with the same prescaler
and divider and return PWM_CPR_CLKB, thus taking both clocks in the same call
without the caller knowing.
Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
Cc: David Brownell <david-b@pacbell.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | drivers/misc/atmel_pwm.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/misc/atmel_pwm.c b/drivers/misc/atmel_pwm.c index 5b5a14d..6aa5294 100644 --- a/drivers/misc/atmel_pwm.c +++ b/drivers/misc/atmel_pwm.c @@ -211,8 +211,7 @@ int pwm_clk_alloc(unsigned prescale, unsigned div) if ((mr & 0xffff) == 0) { mr |= val; ret = PWM_CPR_CLKA; - } - if ((mr & (0xffff << 16)) == 0) { + } else if ((mr & (0xffff << 16)) == 0) { mr |= val << 16; ret = PWM_CPR_CLKB; } |