
2 Nov
2023
2 Nov
'23
3:06 p.m.
Hello Heinrich,
On 13.10.23 15:09, Heinrich Schuchardt wrote:
In SPL probing of the designware_i2c device on the StarFive VisionFive 2 board fails with
dw_i2c: mode 0, ic_clk 1000000, speed 100000, period 10 rise 1 fall 1 tlow 5 thigh 4 spk 0 dw_i2c: bad counts. hcnt = -4 lcnt = 4 device_probe: i2c@12050000 failed to probe -22
When changing the offset for the high phase from 7 to 3 the device is probed correctly. This now matches the value from the Linux driver.
Without this fix the memory size of the StarFive VisionFive 2 board cannot be read from EEPROM.
Fixes: e71b6f6622d6 ("i2c: designware_i2c: Rewrite timing calculation")
Signed-off-by: Heinrich Schuchardt heinrich.schuchardt@canonical.com
v2: use the same timing offset at Linux provide a descriptive comment for the constant
drivers/i2c/designware_i2c.c | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-)
Applied to u-boot-i2c.git master
Thanks!
bye, Heiko
--
DENX Software Engineering GmbH, Managing Director: Erika Unter
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-52 Fax: +49-8142-66989-80 Email: hs@denx.de