aboutsummaryrefslogtreecommitdiff
path: root/board
diff options
context:
space:
mode:
authorMichal Simek <michal.simek@xilinx.com>2020-08-27 15:43:48 +0200
committerLokesh Vutla <lokeshvutla@ti.com>2020-08-31 14:40:28 +0530
commitb892b6d1e0afef8d47f256d5b3ca4687bed1bee3 (patch)
treefd18833531709dc576e5e995d0ea032f6b9afdab /board
parente66ae8e16b211eba3c61cc087a8c386d444549c7 (diff)
downloadu-boot-b892b6d1e0afef8d47f256d5b3ca4687bed1bee3.zip
u-boot-b892b6d1e0afef8d47f256d5b3ca4687bed1bee3.tar.gz
u-boot-b892b6d1e0afef8d47f256d5b3ca4687bed1bee3.tar.bz2
ti: common: Remove additional i2c read for board detection
There shouldn't be a need to call additional i2c read if above failed already. Based on comment it should be enough to try to detect legacy boards which are mentioned in the comment. Fixes: 2463f6728e82 ("ti: common: board_detect: Allow DM I2C without CONFIG_DM_I2C_COMPAT") Fixes: 0bea813d0018 ("ARM: omap-common: Add standard access for board description EEPROM") Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Diffstat (limited to 'board')
-rw-r--r--board/ti/common/board_detect.c18
1 files changed, 6 insertions, 12 deletions
diff --git a/board/ti/common/board_detect.c b/board/ti/common/board_detect.c
index e09ecda..8b3b4bc 100644
--- a/board/ti/common/board_detect.c
+++ b/board/ti/common/board_detect.c
@@ -113,18 +113,15 @@ static int __maybe_unused ti_i2c_eeprom_get(int bus_addr, int dev_addr,
/* Corrupted data??? */
if (hdr_read != header) {
- rc = dm_i2c_read(dev, 0, (uint8_t *)&hdr_read, 4);
/*
* read the eeprom header using i2c again, but use only a
* 1 byte address (some legacy boards need this..)
*/
- if (rc) {
- rc = i2c_set_chip_offset_len(dev, 1);
- if (rc)
- return rc;
+ rc = i2c_set_chip_offset_len(dev, 1);
+ if (rc)
+ return rc;
- rc = dm_i2c_read(dev, 0, (uint8_t *)&hdr_read, 4);
- }
+ rc = dm_i2c_read(dev, 0, (uint8_t *)&hdr_read, 4);
if (rc)
return rc;
}
@@ -153,16 +150,13 @@ static int __maybe_unused ti_i2c_eeprom_get(int bus_addr, int dev_addr,
/* Corrupted data??? */
if (hdr_read != header) {
- rc = i2c_read(dev_addr, 0x0, byte, (uint8_t *)&hdr_read, 4);
/*
* read the eeprom header using i2c again, but use only a
* 1 byte address (some legacy boards need this..)
*/
byte = 1;
- if (rc) {
- rc = i2c_read(dev_addr, 0x0, byte, (uint8_t *)&hdr_read,
- 4);
- }
+ rc = i2c_read(dev_addr, 0x0, byte, (uint8_t *)&hdr_read,
+ 4);
if (rc)
return rc;
}