Message ID | 20190708124129.5664-1-l.stach@pengutronix.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2] backlight: rave-sp: don't touch initial state and register with correct device | expand |
On Mon, Jul 08, 2019 at 02:41:29PM +0200, Lucas Stach wrote: > This way the backlight can be referenced through its device node and > enabling/disabling can be managed through the panel driver. > > Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org> > --- > drivers/video/backlight/rave-sp-backlight.c | 10 ++++++++-- > 1 file changed, 8 insertions(+), 2 deletions(-) > > diff --git a/drivers/video/backlight/rave-sp-backlight.c b/drivers/video/backlight/rave-sp-backlight.c > index 462f14a1b19d..05b5f003a3d1 100644 > --- a/drivers/video/backlight/rave-sp-backlight.c > +++ b/drivers/video/backlight/rave-sp-backlight.c > @@ -48,14 +48,20 @@ static int rave_sp_backlight_probe(struct platform_device *pdev) > struct device *dev = &pdev->dev; > struct backlight_device *bd; > > - bd = devm_backlight_device_register(dev, pdev->name, dev->parent, > + bd = devm_backlight_device_register(dev, pdev->name, dev, > dev_get_drvdata(dev->parent), > &rave_sp_backlight_ops, > &rave_sp_backlight_props); > if (IS_ERR(bd)) > return PTR_ERR(bd); > > - backlight_update_status(bd); > + /* > + * If there is a phandle pointing to the device node we can > + * assume that another device will manage the status changes. > + * If not we make sure the backlight is in a consistent state. > + */ > + if (!dev->of_node->phandle) > + backlight_update_status(bd); > > return 0; > } > -- > 2.20.1 >
On Mon, 08 Jul 2019, Lucas Stach wrote: > This way the backlight can be referenced through its device node and > enabling/disabling can be managed through the panel driver. > > Signed-off-by: Lucas Stach <l.stach@pengutronix.de> > --- > drivers/video/backlight/rave-sp-backlight.c | 10 ++++++++-- > 1 file changed, 8 insertions(+), 2 deletions(-) Applied, thanks.
diff --git a/drivers/video/backlight/rave-sp-backlight.c b/drivers/video/backlight/rave-sp-backlight.c index 462f14a1b19d..05b5f003a3d1 100644 --- a/drivers/video/backlight/rave-sp-backlight.c +++ b/drivers/video/backlight/rave-sp-backlight.c @@ -48,14 +48,20 @@ static int rave_sp_backlight_probe(struct platform_device *pdev) struct device *dev = &pdev->dev; struct backlight_device *bd; - bd = devm_backlight_device_register(dev, pdev->name, dev->parent, + bd = devm_backlight_device_register(dev, pdev->name, dev, dev_get_drvdata(dev->parent), &rave_sp_backlight_ops, &rave_sp_backlight_props); if (IS_ERR(bd)) return PTR_ERR(bd); - backlight_update_status(bd); + /* + * If there is a phandle pointing to the device node we can + * assume that another device will manage the status changes. + * If not we make sure the backlight is in a consistent state. + */ + if (!dev->of_node->phandle) + backlight_update_status(bd); return 0; }
This way the backlight can be referenced through its device node and enabling/disabling can be managed through the panel driver. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> --- drivers/video/backlight/rave-sp-backlight.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-)