summaryrefslogtreecommitdiffstats
path: root/drivers/pwm
diff options
context:
space:
mode:
authorBoris BREZILLON <b.brezillon@overkiz.com>2013-09-18 17:06:21 +0200
committerThierry Reding <thierry.reding@gmail.com>2013-09-19 14:04:32 +0200
commitceb12f939809b3445d0b2118d4b07638bb07afa6 (patch)
treef21a7f36ae193f0ca7d02b88bf29de39c4b1edb7 /drivers/pwm
parentpwm: atmel-tcb: add missing clk source config (diff)
downloadlinux-ceb12f939809b3445d0b2118d4b07638bb07afa6.tar.xz
linux-ceb12f939809b3445d0b2118d4b07638bb07afa6.zip
pwm: atmel-tcb: fix max time computation for slow clk source
Use the the tcb counter width to compute the maximum time that can be represented using the slow clock source instead of the static 16 bit width. Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
Diffstat (limited to 'drivers/pwm')
-rw-r--r--drivers/pwm/pwm-atmel-tcb.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/pwm/pwm-atmel-tcb.c b/drivers/pwm/pwm-atmel-tcb.c
index 026696970d77..f3dcd02390f1 100644
--- a/drivers/pwm/pwm-atmel-tcb.c
+++ b/drivers/pwm/pwm-atmel-tcb.c
@@ -307,7 +307,7 @@ static int atmel_tcb_pwm_config(struct pwm_chip *chip, struct pwm_device *pwm,
i = slowclk;
rate = 32768;
min = div_u64(NSEC_PER_SEC, rate);
- max = min << 16;
+ max = min << tc->tcb_config->counter_width;
/* If period is too big return ERANGE error */
if (max < period_ns)