diff mbox series

[v2] backlight: rave-sp: don't touch initial state and register with correct device

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

Commit Message

Lucas Stach July 8, 2019, 12:41 p.m. UTC
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(-)

Comments

Daniel Thompson July 9, 2019, 9:32 a.m. UTC | #1
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
>
Lee Jones July 25, 2019, 12:04 p.m. UTC | #2
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 mbox series

Patch

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;
 }