summaryrefslogtreecommitdiffstats
path: root/drivers/pwm/pwm-atmel.c
diff options
context:
space:
mode:
authorUwe Kleine-König <uwe@kleine-koenig.org>2019-08-24 02:10:37 +0200
committerThierry Reding <thierry.reding@gmail.com>2020-01-08 13:43:00 +0100
commitff55e7a314143e717f4d96271b541c29111502df (patch)
tree858810d2f5d29c0cbc31a48805de31de5af5efa4 /drivers/pwm/pwm-atmel.c
parentpwm: atmel: Add a hint where to find hardware documentation (diff)
downloadlinux-ff55e7a314143e717f4d96271b541c29111502df.tar.xz
linux-ff55e7a314143e717f4d96271b541c29111502df.zip
pwm: atmel: Use a constant for maximum prescale value
The maximal prescale value is 10 for all supported variants. So drop the member in the variant description and introduce a global constant instead. This reduces the size of the variant descriptions and the .apply() callback can be compiled a bit more effectively. Acked-by: Claudiu Beznea <claudiu.beznea@microchip.com> Signed-off-by: Uwe Kleine-König <uwe@kleine-koenig.org> Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
Diffstat (limited to 'drivers/pwm/pwm-atmel.c')
-rw-r--r--drivers/pwm/pwm-atmel.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/pwm/pwm-atmel.c b/drivers/pwm/pwm-atmel.c
index cd6be47b5160..199255b26aaa 100644
--- a/drivers/pwm/pwm-atmel.c
+++ b/drivers/pwm/pwm-atmel.c
@@ -50,6 +50,8 @@
#define PWMV2_CPRD 0x0C
#define PWMV2_CPRDUPD 0x10
+#define PWM_MAX_PRES 10
+
struct atmel_pwm_registers {
u8 period;
u8 period_upd;
@@ -59,7 +61,6 @@ struct atmel_pwm_registers {
struct atmel_pwm_config {
u32 max_period;
- u32 max_pres;
};
struct atmel_pwm_data {
@@ -126,7 +127,7 @@ static int atmel_pwm_calculate_cprd_and_pres(struct pwm_chip *chip,
for (*pres = 0; cycles > atmel_pwm->data->cfg.max_period; cycles >>= 1)
(*pres)++;
- if (*pres > atmel_pwm->data->cfg.max_pres) {
+ if (*pres > PWM_MAX_PRES) {
dev_err(chip->dev, "pres exceeds the maximum value\n");
return -EINVAL;
}
@@ -289,7 +290,6 @@ static const struct atmel_pwm_data atmel_sam9rl_pwm_data = {
.cfg = {
/* 16 bits to keep period and duty. */
.max_period = 0xffff,
- .max_pres = 10,
},
};
@@ -303,7 +303,6 @@ static const struct atmel_pwm_data atmel_sama5_pwm_data = {
.cfg = {
/* 16 bits to keep period and duty. */
.max_period = 0xffff,
- .max_pres = 10,
},
};
@@ -317,7 +316,6 @@ static const struct atmel_pwm_data mchp_sam9x60_pwm_data = {
.cfg = {
/* 32 bits to keep period and duty. */
.max_period = 0xffffffff,
- .max_pres = 10,
},
};