[PATCH linux dev-4.7 v2] drivers/fsi: Add delay before sampling input on SDA

Jeremy Kerr jk at ozlabs.org
Tue Mar 21 11:57:29 AEDT 2017


Hi Chris,

> The echo delay in the driver clocks '1's on the line so as long as the
> echo_delay() utility is used there is no risk of random data in this
> phase. 

Ah, I'd missed the set_sda_output(1), there. That should be fine then.

> Yes that's true, cpu load shouldn't be a factor in this case then. The
> failure mode is during the sampling of input data during the slave
> response phase of the command.  CRC received does not match the CRC
> calculated due to bit flips
> related to sampling/clocking timing issues.  This problem only appears
> when hostboot is accessing the BMC.  Increasing delay does correct the
> issue.  I don't have a good explanation for why this timing behavior
> occurs given its not cpu load related.

My concern here is that with such a dramatic change in timing there
(200x), and not knowing what the underlying problem is, we're just
making the issue less likely to occur, rather than fixing it.

Do you know if we have access to HW folks to scope the data & clock? We
could set a GPIO when we see a CRC error, to use as an external
trigger...

Cheers,


Jeremy


More information about the openbmc mailing list