backlight: pwm_bl: Drop support for legacy PWM probing
Commit Message
There is no in-tree user left which relies on legacy probing. So drop
support for it which removes another user of the deprecated
pwm_request() function.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
drivers/video/backlight/pwm_bl.c | 12 ------------
include/linux/pwm_backlight.h | 1 -
2 files changed, 13 deletions(-)
base-commit: 9abf2313adc1ca1b6180c508c25f22f9395cc780
Comments
On Thu, Nov 17, 2022 at 08:21:51AM +0100, Uwe Kleine-König wrote:
> There is no in-tree user left which relies on legacy probing. So drop
> support for it which removes another user of the deprecated
> pwm_request() function.
>
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
I have to take the "no in-tree user" on faith since I'm not familiar
enough with PWM history to check that. However from a backlight
point-of-view it looks like a nice tidy up:
Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
Daniel.
On Thu, Nov 17, 2022 at 10:14:01AM +0000, Daniel Thompson wrote:
> On Thu, Nov 17, 2022 at 08:21:51AM +0100, Uwe Kleine-König wrote:
> > There is no in-tree user left which relies on legacy probing. So drop
> > support for it which removes another user of the deprecated
> > pwm_request() function.
> >
> > Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
>
> I have to take the "no in-tree user" on faith since I'm not familiar
> enough with PWM history to check that. However from a backlight
> point-of-view it looks like a nice tidy up:
> Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
Probably "in-tree provider" would have been the better term. You can
convince you about that:
$ git grep -l platform_pwm_backlight_data | xargs grep pwm_id
That is, no machine used pwm_id to make the legacy lookup necessary.
Who will pick up this patch? Should I resend for s/user/provider/?
Best regards
Uwe
On Thu, Nov 17, 2022 at 11:28:14AM +0100, Uwe Kleine-König wrote:
> On Thu, Nov 17, 2022 at 10:14:01AM +0000, Daniel Thompson wrote:
> > On Thu, Nov 17, 2022 at 08:21:51AM +0100, Uwe Kleine-König wrote:
> > > There is no in-tree user left which relies on legacy probing. So drop
> > > support for it which removes another user of the deprecated
> > > pwm_request() function.
> > >
> > > Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> >
> > I have to take the "no in-tree user" on faith since I'm not familiar
> > enough with PWM history to check that. However from a backlight
> > point-of-view it looks like a nice tidy up:
> > Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
>
> Probably "in-tree provider" would have been the better term. You can
> convince you about that:
>
> $ git grep -l platform_pwm_backlight_data | xargs grep pwm_id
>
> That is, no machine used pwm_id to make the legacy lookup necessary.
Thanks for that. pwm_request() seems so old that my intuition about
how device APIs in Linux work misled me and I completely missed that
the consumption of pwm_id at the call site was the key to the source
navigation here.
> Who will pick up this patch? Should I resend for s/user/provider/?
Lee Jones should hoover this up. Normally I only pick up backlight
patches when Lee's on holiday ;-).
No need to resend on my account. I interpreted the original
description as "provider" anyway, I just didn't know how best to
search for them.
Daniel.
On Thu, 17 Nov 2022, Uwe Kleine-König wrote:
> There is no in-tree user left which relies on legacy probing. So drop
> support for it which removes another user of the deprecated
> pwm_request() function.
>
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> ---
> drivers/video/backlight/pwm_bl.c | 12 ------------
> include/linux/pwm_backlight.h | 1 -
> 2 files changed, 13 deletions(-)
Applied, thanks.
@@ -28,7 +28,6 @@ struct pwm_bl_data {
struct regulator *power_supply;
struct gpio_desc *enable_gpio;
unsigned int scale;
- bool legacy;
unsigned int post_pwm_on_delay;
unsigned int pwm_off_delay;
int (*notify)(struct device *,
@@ -455,7 +454,6 @@ static int pwm_backlight_probe(struct platform_device *pdev)
struct platform_pwm_backlight_data defdata;
struct backlight_properties props;
struct backlight_device *bl;
- struct device_node *node = pdev->dev.of_node;
struct pwm_bl_data *pb;
struct pwm_state state;
unsigned int i;
@@ -506,12 +504,6 @@ static int pwm_backlight_probe(struct platform_device *pdev)
}
pb->pwm = devm_pwm_get(&pdev->dev, NULL);
- if (IS_ERR(pb->pwm) && PTR_ERR(pb->pwm) != -EPROBE_DEFER && !node) {
- dev_err(&pdev->dev, "unable to request PWM, trying legacy API\n");
- pb->legacy = true;
- pb->pwm = pwm_request(data->pwm_id, "pwm-backlight");
- }
-
if (IS_ERR(pb->pwm)) {
ret = PTR_ERR(pb->pwm);
if (ret != -EPROBE_DEFER)
@@ -604,8 +596,6 @@ static int pwm_backlight_probe(struct platform_device *pdev)
if (IS_ERR(bl)) {
dev_err(&pdev->dev, "failed to register backlight\n");
ret = PTR_ERR(bl);
- if (pb->legacy)
- pwm_free(pb->pwm);
goto err_alloc;
}
@@ -639,8 +629,6 @@ static int pwm_backlight_remove(struct platform_device *pdev)
if (pb->exit)
pb->exit(&pdev->dev);
- if (pb->legacy)
- pwm_free(pb->pwm);
return 0;
}
@@ -8,7 +8,6 @@
#include <linux/backlight.h>
struct platform_pwm_backlight_data {
- int pwm_id;
unsigned int max_brightness;
unsigned int dft_brightness;
unsigned int lth_brightness;