]> git.baikalelectronics.ru Git - uboot.git/commit
board: ti: common: board_detect: Do 1byte address checks first.
authorNishanth Menon <nm@ti.com>
Fri, 17 Jun 2022 18:26:12 +0000 (13:26 -0500)
committerTom Rini <trini@konsulko.com>
Wed, 6 Jul 2022 18:30:08 +0000 (14:30 -0400)
commit15bf93e1bec63fcf5b48f12a5efe48e5e606827b
treeffab982cd8246555e1cdfc9447500a65a00c394c
parenta4c7f7373adfeda3add7d802cb8ee49427168fcd
board: ti: common: board_detect: Do 1byte address checks first.

Do 1 byte address checks first prior to doing 2 byte address checks.
When performing 2 byte addressing on 1 byte addressing eeprom, the
second byte is taken in as a write operation and ends up erasing the
eeprom region we want to preserve.

While we could have theoretically handled this by ensuring the write
protect of the eeproms are properly managed, this is not true in case
where board are updated with 1 byte eeproms to handle supply status.

Flipping the checks by checking for 1 byte addressing prior to 2 byte
addressing check prevents this problem at the minor cost of additional
overhead for boards with 2 byte addressing eeproms.

Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
board/ti/common/board_detect.c