# \[PATCH 4/6\] pwm\_backlight: Add deferred probe support

- Subsystems: FRAMEBUFFER LAYER, BACKLIGHT CLASS/SUBSYSTEM, THE REST
- Maintainers: Helge Deller, Lee Jones, Daniel Thompson, Jingoo Han, Linus Torvalds
- List: linux-fbdev
- 3 messages, 3 authors
- Page: https://ratatoskr.run/linux-fbdev/2012/06/13463302/t

## \[PATCH 4/6\] pwm\_backlight: Add deferred probe support

- From: Laurent Pinchart \<laurent.pinchart@ideasonboard.com\>
- Date: 2012-06-15 15:17:05 
- Message: https://ratatoskr.run/linux-fbdev/2012/06/13463302.md

```text
If the PWM instance is not available yet at probe time, request a
deferred probe.

A better way to fix might be to create a PWM subsystem (possible
integrated into the GPIO subsystem) to support generic PWM objects, and
make sure the subsystem gets initialized first.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: <redacted>
---
 drivers/video/backlight/pwm_bl.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/drivers/video/backlight/pwm_bl.c b/drivers/video/backlight/pwm_bl.c
index 342b7d7..5df8b91 100644
--- a/drivers/video/backlight/pwm_bl.c
+++ b/drivers/video/backlight/pwm_bl.c
@@ -121,6 +121,8 @@ static int pwm_backlight_probe(struct platform_device *pdev)
 	if (IS_ERR(pb->pwm)) {
 		dev_err(&pdev->dev, "unable to request PWM for backlight\n");
 		ret = PTR_ERR(pb->pwm);
+		if (ret = -ENODEV)
+			ret = -EPROBE_DEFER;
 		goto err_alloc;
 	} else
 		dev_dbg(&pdev->dev, "got pwm for backlight\n");
-- 
1.7.3.4

```

## RE: \[PATCH 4/6\] pwm\_backlight: Add deferred probe support

- From: Jingoo Han \<hidden\>
- Date: 2012-06-17 23:38:02 
- Message: https://ratatoskr.run/linux-fbdev/2012/06/13463303.md

```text
On Saturday 16 June 2012 12:17:00 Laurent Pinchart wrote:
> 
> If the PWM instance is not available yet at probe time, request a
> deferred probe.
> 
> A better way to fix might be to create a PWM subsystem (possible
> integrated into the GPIO subsystem) to support generic PWM objects, and
> make sure the subsystem gets initialized first.

Cc'ed Grant Likely, Linus Walleij

Hi Laurent,
Yes, you're right. PWM subsystem is necessary to avoid the problem that PWM is not available at probe time.
Anyway, this patch looks good. Good luck.

Best regards,
Jingoo Han

> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> Cc: <redacted>
> ---
>  drivers/video/backlight/pwm_bl.c |    2 ++
>  1 files changed, 2 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/video/backlight/pwm_bl.c b/drivers/video/backlight/pwm_bl.c
> index 342b7d7..5df8b91 100644
> --- a/drivers/video/backlight/pwm_bl.c
> +++ b/drivers/video/backlight/pwm_bl.c
> @@ -121,6 +121,8 @@ static int pwm_backlight_probe(struct platform_device *pdev)
>  	if (IS_ERR(pb->pwm)) {
>  		dev_err(&pdev->dev, "unable to request PWM for backlight\n");
>  		ret = PTR_ERR(pb->pwm);
> +		if (ret = -ENODEV)
> +			ret = -EPROBE_DEFER;
>  		goto err_alloc;
>  	} else
>  		dev_dbg(&pdev->dev, "got pwm for backlight\n");
> --
> 1.7.3.4
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

```

## Re: \[PATCH 4/6\] pwm\_backlight: Add deferred probe support

- From: Simon Horman \<horms@verge.net.au\>
- Date: 2012-06-18 02:14:53 
- Message: https://ratatoskr.run/linux-fbdev/2012/06/13463304.md

```text
On Fri, Jun 15, 2012 at 05:17:05PM +0200, Laurent Pinchart wrote:
> If the PWM instance is not available yet at probe time, request a
> deferred probe.
> 
> A better way to fix might be to create a PWM subsystem (possible
> integrated into the GPIO subsystem) to support generic PWM objects, and
> make sure the subsystem gets initialized first.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> Cc: <redacted>

Tested-by: Simon Horman <horms@verge.net.au>

```
