[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20231003225431.owtpcds7rrijj7yf@zenone.zhora.eu>
Date: Wed, 4 Oct 2023 00:54:31 +0200
From: Andi Shyti <andi.shyti@...nel.org>
To: Jian Zhang <zhangjian.3032@...edance.com>
Cc: brendan.higgins@...ux.dev, benh@...nel.crashing.org,
joel@....id.au, andrew@...id.au, zhangjian3032@...il.com,
yulei.sh@...edance.com, xiexinnan@...edance.com,
Tommy Huang <tommy_huang@...eedtech.com>,
Wolfram Sang <wsa@...nel.org>,
"open list:ARM/ASPEED I2C DRIVER" <linux-i2c@...r.kernel.org>,
"moderated list:ARM/ASPEED I2C DRIVER" <openbmc@...ts.ozlabs.org>,
"moderated list:ARM/ASPEED MACHINE SUPPORT"
<linux-arm-kernel@...ts.infradead.org>,
"moderated list:ARM/ASPEED MACHINE SUPPORT"
<linux-aspeed@...ts.ozlabs.org>,
open list <linux-kernel@...r.kernel.org>
Subject: Re: [External] Re: [PATCH v2] i2c: aspeed: Fix i2c bus hang in slave
read
Hi Jian,
On Thu, Sep 28, 2023 at 11:04:23AM -0400, Jian Zhang wrote:
> > From: "Andi Shyti"<andi.shyti@...nel.org>
> > Date: Thu, Sep 28, 2023, 22:51
> > Subject: [External] Re: [PATCH v2] i2c: aspeed: Fix i2c bus hang in slave read
> > To: "Jian Zhang"<zhangjian.3032@...edance.com>
> > Cc: <brendan.higgins@...ux.dev>, <benh@...nel.crashing.org>, <joel@....id.au>, <andrew@...id.au>, <zhangjian3032@...il.com>, <yulei.sh@...edance.com>, <xiexinnan@...edance.com>, "Tommy Huang"<tommy_huang@...eedtech.com>, "Wolfram Sang"<wsa@...nel.org>, "open list:ARM/ASPEED I2C DRIVER"<linux-i2c@...r.kernel.org>, "moderated list:ARM/ASPEED I2C DRIVER"<openbmc@...ts.ozlabs.org>, "moderated list:ARM/ASPEED MACHINE SUPPORT"<linux-arm-kernel@...ts.infradead.org>, "moderated list:ARM/ASPEED MACHINE SUPPORT"<linux-aspeed@...ts.ozlabs.org>, "open list"<linux-kernel@...r.kernel.org>
> > Hi Jian,
> >
> > On Wed, Sep 27, 2023 at 11:42:43PM +0800, Jian Zhang wrote:
> > > When the `CONFIG_I2C_SLAVE` option is enabled and the device operates
> > > as a slave, a situation arises where the master sends a START signal
> > > without the accompanying STOP signal. This action results in a
> > > persistent I2C bus timeout. The core issue stems from the fact that
> > > the i2c controller remains in a slave read state without a timeout
> > > mechanism. As a consequence, the bus perpetually experiences timeouts.
> > >
> > > In this case, the i2c bus will be reset, but the slave_state reset is
> > > missing.
Acked-by: Andi Shyti <andi.shyti@...nel.org>
I checked the flow in the driver and makes sense to me. I'd also
love a last minute comment from Brendan or Benjamin or Joel.
> > > Fixes: fee465150b45 ("i2c: aspeed: Reset the i2c controller when timeout occurs")
> > > Signed-off-by: Jian Zhang <zhangjian.3032@...edance.com>
> >
> > Why I'm failing to find your v1 patch? And where is the
> > changelog?
> Sorry, something was missing,
> v2:
> * remove the i2c slave reset and only move the `bus->slave_state =
> ASPEED_I2C_SLAVE_INACTIVE` to the aspeed_i2c_init
>
> [0]: https://lore.kernel.org/linux-arm-kernel/20230810072155.3726352-1-zhangjian.3032@bytedance.com/T/
Thanks! I should really check my filters here.
Andi
> Jian
> >
> > Andi
Powered by blists - more mailing lists