On Tue, Jun 20, 2017 at 02:15:15PM -0700, Brendan Higgins wrote: > Added initial master support for Aspeed I2C controller. Supports > fourteen busses present in AST24XX and AST25XX BMC SoCs by Aspeed. > > Signed-off-by: Brendan Higgins <brendanhiggins@xxxxxxxxxx> Applied to for-next, thanks for all the hard work! One question however which can be solved incrementally if needed: > + if (command & ASPEED_I2CD_SDA_LINE_STS) { > + /* Bus is idle: no recovery needed. */ > + if (command & ASPEED_I2CD_SCL_LINE_STS) > + goto out; > + dev_dbg(bus->dev, "SCL hung (state %x), attempting recovery\n", > + command); > + > + reinit_completion(&bus->cmd_complete); > + writel(ASPEED_I2CD_M_STOP_CMD, bus->base + ASPEED_I2C_CMD_REG); If SCL is stuck low, how do you want to send a STOP?
Attachment:
signature.asc
Description: PGP signature