Re: [PATCH] i2c: cadence: Handling Slave monitor mode

Wolfram Sang
2015-04-02T20:28:41Z

[-- Attachment #1: Type: text/plain, Size: 1303 bytes --]

> >> In slave monitor mode, the I2C interface is set up as a master and
> >> continues to attempt a transfer to a particular slave until the
> >> slave device responds with an ACK.
> >>
> >> Added this feature for zero length transfers enable the controller
> >> for slave monitor interrupt and get the status. Disable the slave
> >> monitor mode feature upon successful handling.
> >>
> >> Signed-off-by: Nava kishore Manne <navam@xilinx.com>
> >> Acked-by: Harini Katakam <harinik@xilinx.com>
> >
> > I am not sure this is going to work.
> >
> > How often is this access tried when there is no device? It should be
> > tried only once.
>
> Once slave monitor is enabled in the host controller, it retries till there's an
> ACK or slave monitor is disabled. The SW wont be involved and need not

So, it is kind of flooding the bus until the timeout? That is not a
single zero byte message.

> be interrupted in this gap. The way this feature works in the controller though,
> I'm afraid there's no way to distinguish between no slave/ busy slave.
> The out is the software timeout in that case.
> Please suggest how to use this feature better.

I suggest to not use the feature and accept that this device cannot do
zero byte length messages.

Thanks,

Wolfram