Commit a892ee4c authored by Frank Li's avatar Frank Li Committed by Alexandre Belloni
Browse files

i3c: master: svc: Flush FIFO before sending Dynamic Address Assignment(DAA)



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: default avatarFrank Li <Frank.Li@nxp.com>
Reviewed-by: default avatarMiquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/r/20250129162250.3629189-1-Frank.Li@nxp.com


Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@bootlin.com>
parent effed5da
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -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);