diff --git a/drivers/pwm/core.c b/drivers/pwm/core.c index db7d260..f769cfe 100644 --- a/drivers/pwm/core.c +++ b/drivers/pwm/core.c @@ -177,6 +177,13 @@ { pwm->chip->duty_ns = duty_ns; pwm->chip->period_ns = period_ns; + + if (period_ns == 0) + return -EINVAL; + + if (duty_ns > period_ns) + return -EINVAL; + return pwm->chip->ops->config(pwm->chip, duty_ns, period_ns); } EXPORT_SYMBOL_GPL(pwm_config);