[Skiboot] [PATCH] i2c: Fix i2c request hang during opal init if timers are not checked

Vasant Hegde hegdevasant at linux.vnet.ibm.com
Mon Dec 10 19:46:00 AEDT 2018


On 11/29/2018 11:47 PM, Frederic Barrat wrote:
> If an i2c request cannot go through the first time, because the bus is
> found in error and need a reset or it's locked by the OCC for example,
> the underlying i2c implementation is using timers to manage the
> request. However during opal init, opal pollers may not be called, it
> depends in the context in which the i2c request is made. If the
> pollers are not called, the timers are not checked and we can end up
> with an i2c request which will not move foward and skiboot hangs.
> 
> Fix it by explicitly checking the timers if we are waiting for an i2c
> request to complete and it seems to be taking a while.
> 
> Signed-off-by: Frederic Barrat <fbarrat at linux.ibm.com>

I hit similar issue today with upstream master code. and this patch fixes the issue.

Tested-by: Vasant Hegde <hegdevasant at linux.vnet.ibm.com>

-Vasant



More information about the Skiboot mailing list