[PATCH v2 1/2] i3c: master: svc: fix IBIWON not set if IBI follow a hot join
Frank Li
Frank.li at nxp.com
Thu Jun 13 09:06:38 PDT 2024
On Mon, Jun 03, 2024 at 05:19:19PM +0200, Miquel Raynal wrote:
> Hi Frank,
>
> Frank.Li at nxp.com wrote on Mon, 3 Jun 2024 11:15:26 -0400:
>
> > When an In-Band Interrupt(IBI) occurs after svc_i3c_master_do_daa_locked(),
> > typically triggered during a Hot Join (HJ) event, the IBIWON flag fails to
> > be set when issuing an auto IBI command.
> >
> > The issue stems from the omission of emitting STOP upon successful
> > execution of svc_i3c_master_do_daa_locked(). Consequently, the controller
> > interprets it as a repeat start when emitting the auto IBI command. Per the
> > I3C specification, an IBI should never occur during a repeat start, thus
> > preventing the IBIWON flag from being set.
> >
> > Emit STOP regardless of the success or failure of
> > svc_i3c_master_do_daa_locked() to match I3C spec requirement.
> >
> > Cc: <stable at vger.kernel.org>
> > Fixes: 05b26c31a485 ("i3c: master: svc: add hot join support")
> > Signed-off-by: Frank Li <Frank.Li at nxp.com>
>
> Reviewed-by: Miquel Raynal <miquel.raynal at bootlin.com>
Please hold on this patch. Hardware can emit stop automatically. It need
better fix. Let me work on new version for this one.
>
> Thanks,
> Miquèl
More information about the linux-i3c
mailing list