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

Message ID 20191122222323.28898-3-vladimir.olovyannikov@broadcom.com
State Needs Review / ACK
Delegated to: Tom Rini
Headers show
Series
  • Introduce APIs for multi PCIe host controller platforms
Related show

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

Patch
diff mbox series

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;