diff mbox series

[U-Boot,2/3] drivers: core: uclass: Get next device fail with driver probe fail

Message ID 20191122222323.28898-3-vladimir.olovyannikov@broadcom.com
State Deferred
Headers show
Series Introduce APIs for multi PCIe host controller platforms | expand

Commit Message

Vladimir Olovyannikov Nov. 22, 2019, 10:23 p.m. UTC
From: Srinath Mannam <srinath.mannam@broadcom.com>

Add changes to fix get next device failed if driver probe failed
issue. In Multi PCIe host controller platforms, if one PCIe host
driver probe failed with any reason then it stops to find next
PCIe host controller device pointer to call its driver probe.

Signed-off-by: Srinath Mannam <srinath.mannam@broadcom.com>
Signed-off-by: Vladimir Olovyannikov <vladimir.olovyannikov@broadcom.com>
---
 drivers/core/uclass.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Bin Meng Nov. 23, 2019, 12:54 p.m. UTC | #1
Hi Vladimir,

On Sat, Nov 23, 2019 at 6:23 AM Vladimir Olovyannikov
<vladimir.olovyannikov@broadcom.com> wrote:
>
> From: Srinath Mannam <srinath.mannam@broadcom.com>
>
> Add changes to fix get next device failed if driver probe failed
> issue. In Multi PCIe host controller platforms, if one PCIe host
> driver probe failed with any reason then it stops to find next
> PCIe host controller device pointer to call its driver probe.
>
> Signed-off-by: Srinath Mannam <srinath.mannam@broadcom.com>
> Signed-off-by: Vladimir Olovyannikov <vladimir.olovyannikov@broadcom.com>
> ---
>  drivers/core/uclass.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/core/uclass.c b/drivers/core/uclass.c
> index c520ef113a..ab50f8f6db 100644
> --- a/drivers/core/uclass.c
> +++ b/drivers/core/uclass.c
> @@ -442,7 +442,7 @@ int uclass_get_device_tail(struct udevice *dev, int ret, struct udevice **devp)
>         assert(dev);
>         ret = device_probe(dev);
>         if (ret)
> -               return ret;
> +               dev_dbg(dev, "%s device_probe failed\n", __func__);

Could you please try pci_init() which I believe should satisfy your requirement?

>
>         *devp = dev;
>

Regards,
Bin
diff mbox series

Patch

diff --git a/drivers/core/uclass.c b/drivers/core/uclass.c
index c520ef113a..ab50f8f6db 100644
--- a/drivers/core/uclass.c
+++ b/drivers/core/uclass.c
@@ -442,7 +442,7 @@  int uclass_get_device_tail(struct udevice *dev, int ret, struct udevice **devp)
 	assert(dev);
 	ret = device_probe(dev);
 	if (ret)
-		return ret;
+		dev_dbg(dev, "%s device_probe failed\n", __func__);
 
 	*devp = dev;