public inbox for linux-i3c@lists.infradead.org
 help / color / mirror / Atom feed
* [PATCH 1/1] i3c: master: svc: Flush FIFO before sending Dynamic Address Assignment(DAA)
@ 2025-01-29 16:22 Frank Li
  2025-01-31  8:52 ` Miquel Raynal
  2025-02-20 22:20 ` Alexandre Belloni
  0 siblings, 2 replies; 4+ messages in thread
From: Frank Li @ 2025-01-29 16:22 UTC (permalink / raw)
  To: Miquel Raynal, Conor Culhane, Alexandre Belloni,
	moderated list:SILVACO I3C DUAL-ROLE MASTER, open list
  Cc: imx

Ensure the FIFO is empty before issuing the DAA command to prevent
incorrect command data from being sent. Align with other data transfers,
such as svc_i3c_master_start_xfer_locked(), which flushes the FIFO before
sending a command.

Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
Hotplug stress test find a wrong byte send out, this patch can resolve
this issue although have not identify which operation cause a byte left in
FIFO.
---
 drivers/i3c/master/svc-i3c-master.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/i3c/master/svc-i3c-master.c b/drivers/i3c/master/svc-i3c-master.c
index c1ee3828e7eec..bb660c4dcce56 100644
--- a/drivers/i3c/master/svc-i3c-master.c
+++ b/drivers/i3c/master/svc-i3c-master.c
@@ -892,6 +892,8 @@ static int svc_i3c_master_do_daa_locked(struct svc_i3c_master *master,
 	u32 reg;
 	int ret, i;
 
+	svc_i3c_master_flush_fifo(master);
+
 	while (true) {
 		/* clean SVC_I3C_MINT_IBIWON w1c bits */
 		writel(SVC_I3C_MINT_IBIWON, master->regs + SVC_I3C_MSTATUS);
-- 
2.34.1


-- 
linux-i3c mailing list
linux-i3c@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-i3c

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2025-02-20 22:21 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-29 16:22 [PATCH 1/1] i3c: master: svc: Flush FIFO before sending Dynamic Address Assignment(DAA) Frank Li
2025-01-31  8:52 ` Miquel Raynal
2025-01-31 16:14   ` Frank Li
2025-02-20 22:20 ` Alexandre Belloni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox