devm_pwm_get() can return -EPROBE_DEFER if the pwm regulator is not ready yet. Use dev_err_probe() for pwm regulator resources to indicate the deferral reason when waiting for the resource to come up. Signed-off-by: zhaoxiao <zhaoxiao@xxxxxxxxxxxxx> --- v2:Remove the redundant brackets '}' drivers/input/misc/da7280.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/drivers/input/misc/da7280.c b/drivers/input/misc/da7280.c index b08610d6e575..65f3e0251b23 100644 --- a/drivers/input/misc/da7280.c +++ b/drivers/input/misc/da7280.c @@ -1165,13 +1165,9 @@ static int da7280_probe(struct i2c_client *client, if (haptics->const_op_mode == DA7280_PWM_MODE) { haptics->pwm_dev = devm_pwm_get(dev, NULL); - error = PTR_ERR_OR_ZERO(haptics->pwm_dev); - if (error) { - if (error != -EPROBE_DEFER) - dev_err(dev, "Unable to request PWM: %d\n", - error); - return error; - } + if (IS_ERR(haptics->pwm_dev)) + return dev_err_probe(dev, PTR_ERR(haptics->pwm_dev), + "Unable to request PWM\n"); /* Sync up PWM state and ensure it is off. */ pwm_init_state(haptics->pwm_dev, &state); -- 2.20.1