From 41daf985820c72b6768512943dab23f5f41ef865 Mon Sep 17 00:00:00 2001 From: Andy Shevchenko Date: Wed, 28 Nov 2018 13:45:23 +0200 Subject: [PATCH] platform/x86: i2c-multi-instantiate: Accept errors of i2c_acpi_new_device() In the future i2c_acpi_new_device() will return error pointer in some cases. Prepare i2c-multi-instantiate driver to support that. Signed-off-by: Andy Shevchenko Reviewed-by: Heikki Krogerus Reviewed-by: Hans de Goede --- drivers/platform/x86/i2c-multi-instantiate.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/platform/x86/i2c-multi-instantiate.c b/drivers/platform/x86/i2c-multi-instantiate.c index 5456581b473c..e3345da82c84 100644 --- a/drivers/platform/x86/i2c-multi-instantiate.c +++ b/drivers/platform/x86/i2c-multi-instantiate.c @@ -72,9 +72,14 @@ static int i2c_multi_inst_probe(struct platform_device *pdev) board_info.irq = ret; } multi->clients[i] = i2c_acpi_new_device(dev, i, &board_info); - if (!multi->clients[i]) { - dev_err(dev, "Error creating i2c-client, idx %d\n", i); + if (IS_ERR(multi->clients[i])) + ret = PTR_ERR(multi->clients[i]); + else if (!multi->clients[i]) ret = -ENODEV; + else + ret = 0; + if (ret) { + dev_err(dev, "Error creating i2c-client, idx %d\n", i); goto error; } } -- 2.11.0