Patch "drm: bridge: samsung-dsim: Drain command transfer FIFO before transfer" has been added to the 6.5-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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())



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux