diff mbox series

pwm: Use -EINVAL for unsupported polarity

Message ID 20201111202257.414889-1-thierry.reding@gmail.com
State Accepted
Headers show
Series pwm: Use -EINVAL for unsupported polarity | expand

Commit Message

Thierry Reding Nov. 11, 2020, 8:22 p.m. UTC
Instead of using a mix of -EOPNOTSUPP and -ENOTSUPP, use the more
standard -EINVAL to signal that the specified polarity value was
invalid.

Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
---
 drivers/pwm/pwm-crc.c     | 2 +-
 drivers/pwm/pwm-iqs620a.c | 2 +-
 drivers/pwm/pwm-rcar.c    | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

Comments

Uwe Kleine-König Nov. 12, 2020, 7:53 a.m. UTC | #1
On Wed, Nov 11, 2020 at 09:22:57PM +0100, Thierry Reding wrote:
> Instead of using a mix of -EOPNOTSUPP and -ENOTSUPP, use the more
> standard -EINVAL to signal that the specified polarity value was
> invalid.
> 
> Signed-off-by: Thierry Reding <thierry.reding@gmail.com>

Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>

I wonder if we should go further and do the same if the request cannot
be fulfilled for other reasons (usually: period to big)

-ERANGE and -EINVAL seem to be a common there, there is also an -ETIME
in drivers/pwm/pwm-imx-tpm.c and drivers/pwm/pwm-renesas-tpu.c uses
ENOTSUPP.

Best regards
Uwe
Lee Jones Nov. 12, 2020, 8:11 a.m. UTC | #2
On Wed, 11 Nov 2020, Thierry Reding wrote:

> Instead of using a mix of -EOPNOTSUPP and -ENOTSUPP, use the more
> standard -EINVAL to signal that the specified polarity value was
> invalid.
> 
> Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
> ---
>  drivers/pwm/pwm-crc.c     | 2 +-
>  drivers/pwm/pwm-iqs620a.c | 2 +-
>  drivers/pwm/pwm-rcar.c    | 2 +-
>  3 files changed, 3 insertions(+), 3 deletions(-)

Acked-by: Lee Jones <lee.jones@linaro.org>
diff mbox series

Patch

diff --git a/drivers/pwm/pwm-crc.c b/drivers/pwm/pwm-crc.c
index ecfdfac0c2d9..1e2276808b7a 100644
--- a/drivers/pwm/pwm-crc.c
+++ b/drivers/pwm/pwm-crc.c
@@ -64,7 +64,7 @@  static int crc_pwm_apply(struct pwm_chip *chip, struct pwm_device *pwm,
 	}
 
 	if (state->polarity != PWM_POLARITY_NORMAL)
-		return -EOPNOTSUPP;
+		return -EINVAL;
 
 	if (pwm_is_enabled(pwm) && !state->enabled) {
 		err = regmap_write(crc_pwm->regmap, BACKLIGHT_EN, 0);
diff --git a/drivers/pwm/pwm-iqs620a.c b/drivers/pwm/pwm-iqs620a.c
index 7d33e3646436..5ede8255926e 100644
--- a/drivers/pwm/pwm-iqs620a.c
+++ b/drivers/pwm/pwm-iqs620a.c
@@ -50,7 +50,7 @@  static int iqs620_pwm_apply(struct pwm_chip *chip, struct pwm_device *pwm,
 	int ret;
 
 	if (state->polarity != PWM_POLARITY_NORMAL)
-		return -ENOTSUPP;
+		return -EINVAL;
 
 	if (state->period < IQS620_PWM_PERIOD_NS)
 		return -EINVAL;
diff --git a/drivers/pwm/pwm-rcar.c b/drivers/pwm/pwm-rcar.c
index 3e23f1e4e1f6..002ab79a7ec2 100644
--- a/drivers/pwm/pwm-rcar.c
+++ b/drivers/pwm/pwm-rcar.c
@@ -168,7 +168,7 @@  static int rcar_pwm_apply(struct pwm_chip *chip, struct pwm_device *pwm,
 
 	/* This HW/driver only supports normal polarity */
 	if (state->polarity != PWM_POLARITY_NORMAL)
-		return -ENOTSUPP;
+		return -EINVAL;
 
 	if (!state->enabled) {
 		rcar_pwm_disable(rp);