ti: common: board_detect: Handle EEPROM probe more gracefully
authorAndreas Dannenberg <dannenberg@ti.com>
Tue, 7 Jan 2020 07:45:53 +0000 (13:15 +0530)
committerLokesh Vutla <lokeshvutla@ti.com>
Mon, 20 Jan 2020 04:40:28 +0000 (10:10 +0530)
Use dm_i2c_probe() rather than i2c_get_chip() when trying to access
board-detection EEPROM devices. This has the advantage of more gracefully
handling the case when the EEPROM is not present by allowing to exit the
function early rather than failing and outputting an error message on the
I2C transactions that follow.

Signed-off-by: Andreas Dannenberg <dannenberg@ti.com>
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
board/ti/common/board_detect.c

index 59ec57062d7f219b8634150979f3f5d781657a6c..b230bb6f8d49f82fba5506160582fb3a1e5ecd0b 100644 (file)
@@ -94,7 +94,7 @@ static int __maybe_unused ti_i2c_eeprom_get(int bus_addr, int dev_addr,
        rc = uclass_get_device_by_seq(UCLASS_I2C, bus_addr, &bus);
        if (rc)
                return rc;
-       rc = i2c_get_chip(bus, dev_addr, 1, &dev);
+       rc = dm_i2c_probe(bus, dev_addr, 0, &dev);
        if (rc)
                return rc;