• Chris Packham's avatar
    i2c: mpc: Poll for MCF · 4a8ac5e4
    Chris Packham authored
    During some transfers the bus can still be busy when an interrupt is
    received. Commit 763778cd ("i2c: mpc: Restore reread of I2C status
    register") attempted to address this by re-reading MPC_I2C_SR once but
    that just made it less likely to happen without actually preventing it.
    Instead of a single re-read, poll with a timeout so that the bus is given
    enough time to settle but a genuine stuck SCL is still noticed.
    
    Fixes: 1538d82f ("i2c: mpc: Interrupt driven transfer")
    Signed-off-by: default avatarChris Packham <chris.packham@alliedtelesis.co.nz>
    Signed-off-by: default avatarWolfram Sang <wsa@kernel.org>
    4a8ac5e4
i2c-mpc.c 23.5 KB