On 11:55 Wed 23 Oct , Johan Hovold wrote: > Clean up probe error handling by checking parameters before any > allocations and removing an obsolete error label. Also remove > unnecessary reset of private gpio number. > > Acked-by: Jingoo Han <jg1.han@xxxxxxxxxxx> > Signed-off-by: Johan Hovold <jhovold@xxxxxxxxx> > --- > drivers/video/backlight/atmel-pwm-bl.c | 31 ++++++++++++------------------- > 1 file changed, 12 insertions(+), 19 deletions(-) > > diff --git a/drivers/video/backlight/atmel-pwm-bl.c b/drivers/video/backlight/atmel-pwm-bl.c > index cc5a5ed..52a8134 100644 > --- a/drivers/video/backlight/atmel-pwm-bl.c > +++ b/drivers/video/backlight/atmel-pwm-bl.c > @@ -126,40 +126,33 @@ static int atmel_pwm_bl_probe(struct platform_device *pdev) > struct atmel_pwm_bl *pwmbl; > int retval; > > + pdata = dev_get_platdata(&pdev->dev); > + if (!pdata) > + return -ENODEV; > + > + if (pdata->pwm_compare_max < pdata->pwm_duty_max || > + pdata->pwm_duty_min > pdata->pwm_duty_max || > + pdata->pwm_frequency == 0) > + return -EINVAL; > + > pwmbl = devm_kzalloc(&pdev->dev, sizeof(struct atmel_pwm_bl), > GFP_KERNEL); > if (!pwmbl) > return -ENOMEM; > > pwmbl->pdev = pdev; > - > - pdata = dev_get_platdata(&pdev->dev); > - if (!pdata) { > - retval = -ENODEV; > - goto err_free_mem; > - } > - > - if (pdata->pwm_compare_max < pdata->pwm_duty_max || > - pdata->pwm_duty_min > pdata->pwm_duty_max || > - pdata->pwm_frequency == 0) { > - retval = -EINVAL; > - goto err_free_mem; > - } > - > pwmbl->pdata = pdata; > pwmbl->gpio_on = pdata->gpio_on; > > retval = pwm_channel_alloc(pdata->pwm_channel, &pwmbl->pwmc); > if (retval) > - goto err_free_mem; > + return retval; > > if (pwmbl->gpio_on != -1) { gpio_is_valid here > retval = devm_gpio_request(&pdev->dev, pwmbl->gpio_on, > "gpio_atmel_pwm_bl"); > - if (retval) { > - pwmbl->gpio_on = -1; > + if (retval) > goto err_free_pwm; > - } > > /* Turn display off by default. */ > retval = gpio_direction_output(pwmbl->gpio_on, > @@ -197,7 +190,7 @@ static int atmel_pwm_bl_probe(struct platform_device *pdev) > > err_free_pwm: > pwm_channel_free(&pwmbl->pwmc); > -err_free_mem: > + > return retval; > } > > -- > 1.8.4 > -- To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html