[PATCH v3 04/13] platform/x86: i2c-multi-instantiate: Defer probe when no adapter found

From: Andy Shevchenko
Date: Tue Nov 27 2018 - 10:38:26 EST


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 <andriy.shevchenko@xxxxxxxxxxxxxxx>
Reviewed-by: Hans de Goede <hdegoede@xxxxxxxxxx>
---
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