Likewise the rest of the i2c_acpi_new_device() users, defer the probe
of the i2c-multi-intantiate driver in case adapter is not yet found.

Signed-off-by: Andy Shevchenko <[email protected]>
Reviewed-by: Hans de Goede <[email protected]>
---
 drivers/platform/x86/i2c-multi-instantiate.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/platform/x86/i2c-multi-instantiate.c 
b/drivers/platform/x86/i2c-multi-instantiate.c
index bab79bdeebc7..0e3a36f3ef64 100644
--- a/drivers/platform/x86/i2c-multi-instantiate.c
+++ b/drivers/platform/x86/i2c-multi-instantiate.c
@@ -73,7 +73,7 @@ static int i2c_multi_inst_probe(struct platform_device *pdev)
                }
                multi->clients[i] = i2c_acpi_new_device(dev, i, &board_info);
                if (!multi->clients[i])
-                       ret = -ENODEV;
+                       ret = -EPROBE_DEFER; /* Wait for i2c-adapter to load */
                else if (IS_ERR(multi->clients[i]))
                        ret = PTR_ERR(multi->clients[i]);
                else
-- 
2.19.2

Reply via email to