Neha Malcom Francis
9f393a2d7a
board: ti: common: board_detect: Fix EEPROM read quirk for 2-byte
...
EEPROM detection logic in ti_i2c_eeprom_get() involves figuring out
whether addressing is 1-byte or 2-byte. There are currently different
behaviours seen across boards as documented in commit bf6376642fe8
("board: ti: common: board_detect: Fix EEPROM read quirk"). Adding to
the list, we see that there are 2-byte EEPROMs that read properly
with 1-byte addressing with no offset.
For ti_i2c_eeprom_am6_get where eeprom parse operation is dynamic, the
earlier commit d2ab2a2bafd5 ("board: ti: common: board_detect: Fix
EEPROM read quirk for AM6 style data") tried to resolve this by running
ti_i2c_eeprom_get() twice. However this commit along with its former
commit fails on J7 platforms where EEPROM successfully return back the
header on 1-byte addressing and continues to do so until an offset is
introduced. So the second read incorrectly determines the EEPROM as
1-byte addressing.
A more generic solution is introduced here to solve
this issue: 1-byte read without offset and 1-byte read with offset. If
both passes, it follows 1-byte addressing else we proceed with 2-byte
addressing check.
Tested on J721E, J7200, DRA7xx, AM64x
Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Fixes: d2ab2a2bafd5 (board: ti: common: board_detect: Fix EEPROM read quirk for AM6 style data)
Fixes: bf6376642fe8 (board: ti: common: board_detect: Fix EEPROM read quirk)
Tested-By: Matwey V. Kornilov <matwey.kornilov@gmail.com>
2023-01-02 16:06:07 -05:00
..
2021-03-02 14:03:02 -05:00
2022-11-14 09:33:36 -05:00
2022-08-23 12:35:37 +02:00
2022-11-10 10:08:55 -05:00
2022-08-20 16:17:50 -04:00
2022-10-20 15:26:31 +08:00
2022-11-10 10:08:55 -05:00
2022-10-30 20:07:17 +01:00
2022-06-28 17:11:48 -04:00
2022-12-23 10:14:51 -05:00
2021-01-18 15:23:06 -05:00
2022-12-05 16:06:07 -05:00
2022-12-05 16:06:07 -05:00
2022-11-07 22:45:05 +01:00
2022-10-30 20:07:17 +01:00
2022-12-05 16:06:07 -05:00
2022-12-05 16:06:07 -05:00
2022-11-21 09:23:00 -05:00
2022-12-05 16:06:07 -05:00
2022-09-18 22:56:18 +02:00
2021-02-02 15:33:42 -05:00
2022-08-23 12:40:34 +02:00
2022-12-05 16:06:07 -05:00
2022-12-05 16:06:08 -05:00
2022-12-23 10:08:35 -05:00
2022-12-05 16:06:07 -05:00
2022-12-05 16:06:08 -05:00
2022-04-18 11:25:13 +08:00
2022-02-10 07:12:16 +01:00
2022-12-22 10:31:48 -05:00
2022-10-30 20:07:17 +01:00
2022-12-23 10:09:42 -05:00
2022-11-14 09:33:36 -05:00
2022-10-31 11:01:31 -04:00
2022-12-05 16:06:08 -05:00
2022-12-05 16:06:07 -05:00
2022-12-05 16:06:07 -05:00
2021-02-02 15:33:42 -05:00
2022-09-20 18:30:02 +02:00
2022-12-22 10:31:47 -05:00
2022-11-10 10:08:55 -05:00
2022-10-31 11:01:31 -04:00
2022-10-18 08:34:25 +02:00
2022-12-05 16:06:07 -05:00
2022-11-10 10:08:55 -05:00
2022-12-05 16:06:07 -05:00
2022-10-31 11:01:31 -04:00
2022-12-23 10:14:51 -05:00
2021-02-02 15:33:42 -05:00
2021-09-04 12:26:01 -04:00
2022-12-05 16:06:08 -05:00
2022-10-24 11:34:33 +02:00
2022-12-23 10:08:35 -05:00
2022-09-04 20:00:38 +08:00
2022-12-23 10:15:13 -05:00
2022-12-23 10:07:03 -05:00
2022-12-05 16:06:07 -05:00
2022-12-23 10:14:52 -05:00
2022-12-05 16:06:08 -05:00
2022-12-23 10:14:51 -05:00
2022-12-22 10:31:48 -05:00
2022-12-05 16:06:07 -05:00
2022-11-02 13:58:17 -04:00
2021-09-30 08:08:56 -04:00
2022-10-31 11:01:31 -04:00
2022-10-31 11:01:31 -04:00
2022-12-05 16:06:07 -05:00
2022-10-31 11:01:31 -04:00
2022-12-05 16:06:07 -05:00
2022-02-10 07:12:16 +01:00
2022-11-10 10:08:55 -05:00
2022-12-05 16:06:08 -05:00
2022-04-28 09:26:44 -04:00
2022-12-23 10:15:12 -05:00
2022-11-07 07:17:55 +01:00
2022-11-10 10:08:55 -05:00
2022-10-21 13:47:56 -04:00
2022-12-05 16:06:07 -05:00
2022-12-05 16:06:08 -05:00
2022-07-08 17:57:34 -04:00
2021-09-07 16:22:30 -04:00
2022-11-10 10:08:55 -05:00
2022-08-04 16:18:47 -04:00
2022-12-22 10:31:48 -05:00
2022-08-23 12:35:37 +02:00
2022-12-05 16:06:07 -05:00
2022-10-30 20:07:16 +01:00
2022-11-03 13:27:56 +08:00
2021-02-02 15:33:42 -05:00
2022-04-18 11:25:13 +08:00
2022-11-14 09:33:36 -05:00
2022-12-05 16:06:07 -05:00
2022-11-10 10:08:55 -05:00
2022-12-09 14:10:28 -05:00
2022-02-08 23:07:58 -05:00
2022-10-06 21:05:17 -04:00
2022-10-30 20:07:17 +01:00
2021-04-08 23:59:50 +02:00
2021-09-30 08:08:56 -04:00
2022-10-31 11:01:31 -04:00
2022-02-08 23:07:58 -05:00
2022-12-23 10:14:51 -05:00
2022-12-05 16:06:07 -05:00
2022-12-23 10:15:13 -05:00
2022-10-31 11:01:31 -04:00
2022-10-31 11:01:31 -04:00
2022-04-18 11:25:13 +08:00
2021-02-02 15:33:42 -05:00
2022-12-02 08:39:00 -05:00
2022-12-05 16:06:07 -05:00
2022-04-18 11:25:13 +08:00
2022-12-19 10:56:12 +08:00
2022-12-05 16:06:07 -05:00
2022-12-23 10:15:12 -05:00
2022-12-05 16:06:07 -05:00
2022-02-10 07:12:16 +01:00
2022-12-23 10:09:42 -05:00
2022-12-22 10:31:48 -05:00
2022-10-31 11:01:31 -04:00
2022-10-31 11:01:31 -04:00
2022-12-05 16:06:07 -05:00
2022-10-06 21:05:17 -04:00
2022-12-05 16:06:08 -05:00
2022-12-05 16:06:07 -05:00
2022-12-05 16:06:07 -05:00
2022-02-08 23:07:58 -05:00
2022-11-10 10:08:55 -05:00
2022-10-31 14:47:32 -04:00
2022-02-28 10:33:45 -05:00
2022-02-08 23:07:58 -05:00
2022-12-14 22:31:33 +00:00
2022-12-05 16:06:08 -05:00
2022-10-31 11:01:31 -04:00
2022-12-22 10:31:48 -05:00
2022-12-05 16:06:07 -05:00
2022-12-05 16:06:07 -05:00
2022-10-30 20:07:17 +01:00
2022-11-10 10:08:55 -05:00
2022-08-23 12:35:37 +02:00
2022-10-19 19:30:49 +08:00
2023-01-02 16:06:07 -05:00
2022-12-22 10:31:47 -05:00
2022-12-05 16:06:07 -05:00
2022-10-31 11:01:31 -04:00
2022-12-07 16:04:16 -05:00
2022-11-10 10:08:55 -05:00
2022-01-08 11:16:03 -05:00
2022-12-23 10:09:42 -05:00
2022-12-05 16:06:07 -05:00
2022-11-10 10:08:55 -05:00
2022-08-20 21:18:15 -04:00
2022-12-05 16:06:07 -05:00
2021-12-27 08:41:38 -05:00
2022-12-05 16:06:08 -05:00
2022-12-05 16:06:07 -05:00
2022-08-23 12:35:37 +02:00