This is a note to let you know that I've just added the patch titled drm: bridge: samsung-dsim: Drain command transfer FIFO before transfer to the 6.5-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: drm-bridge-samsung-dsim-drain-command-transfer-fifo-.patch and it can be found in the queue-6.5 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. commit f596948fa4c365dcd5ac905f960bfeb06b537f62 Author: Marek Vasut <marex@xxxxxxx> Date: Thu Jun 15 22:15:11 2023 +0200 drm: bridge: samsung-dsim: Drain command transfer FIFO before transfer [ Upstream commit 14806c6415820b1c4bc317655c40784d050a2edb ] Wait until the command transfer FIFO is empty before loading in the next command. The previous behavior where the code waited until command transfer FIFO was not full suffered from transfer corruption, where the last command in the FIFO could be overwritten in case the FIFO indicates not full, but also does not have enough space to store another transfer yet. Signed-off-by: Marek Vasut <marex@xxxxxxx> Reviewed-by: Jagan Teki <jagan@xxxxxxxxxxxxxxxxxxxx> Tested-by: Jagan Teki <jagan@xxxxxxxxxxxxxxxxxxxx> # imx8mm-icore Link: https://patchwork.freedesktop.org/patch/msgid/20230615201511.565923-1-marex@xxxxxxx Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx> diff --git a/drivers/gpu/drm/bridge/samsung-dsim.c b/drivers/gpu/drm/bridge/samsung-dsim.c index 73ec60757dbcb..9e253af69c7a1 100644 --- a/drivers/gpu/drm/bridge/samsung-dsim.c +++ b/drivers/gpu/drm/bridge/samsung-dsim.c @@ -1009,7 +1009,7 @@ static int samsung_dsim_wait_for_hdr_fifo(struct samsung_dsim *dsi) do { u32 reg = samsung_dsim_read(dsi, DSIM_FIFOCTRL_REG); - if (!(reg & DSIM_SFR_HEADER_FULL)) + if (reg & DSIM_SFR_HEADER_EMPTY) return 0; if (!cond_resched())