On Wed, Sep 21, 2022 at 08:38:42AM -0500, Nishanth Menon wrote: > The situation is similar to commit bf6376642fe8 ("board: ti: common: > board_detect: Fix EEPROM read quirk"). This is seen on a variant of > eeproms seen on some BeagleBone-AI64 which now has a mix of both 1 byte > addressing and 2 byte addressing eeproms. > > Unlike the am335x (ti_i2c_eeprom_am_get) and dra7 > (ti_i2c_eeprom_dra7_get) which use constant data structure which allows > us to do a complete read of the data, the > am6(ti_i2c_eeprom_am6_get) eeprom parse operation is dynamic. > > This removes the option of being able to read the complete eeprom data > in one single shot. > > Fortunately, on the I2C bus, we do see the following behavior: In 1 > byte mode, if we attempt to read the first header data yet again, the > misbehaving 2 byte addressing device acts in constant addressing mode > which results in the header not matching up and follow on attempt at 2 > byte addressing scheme grabs the correct data. > > This costs us an extra ~3 milliseconds, which is a minor penalty > compared to the consistent image support we need to have. > > Reported-by: Jason Kridner <jkrid...@beagleboard.org> > Fixes: a58147c2dbbf ("board: ti: common: board_detect: Do 1byte address > checks first.") > Signed-off-by: Nishanth Menon <n...@ti.com>
Applied to u-boot/master, thanks! -- Tom
signature.asc
Description: PGP signature