Patch "drm/panel: st7701: Fix AVCL calculation" has been added to the 6.7-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/panel: st7701: Fix AVCL calculation

to the 6.7-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-panel-st7701-fix-avcl-calculation.patch
and it can be found in the queue-6.7 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 6a920a45bb53ffb93b968108a7682997a1e57587
Author: Chris Morgan <macromorgan@xxxxxxxxxxx>
Date:   Fri Dec 8 09:48:45 2023 -0600

    drm/panel: st7701: Fix AVCL calculation
    
    [ Upstream commit 799825aa87200ade1ba21db853d1c2ff720dcfe0 ]
    
    The AVCL register, according to the datasheet, comes in increments
    of -0.2v between -4.4v (represented by 0x0) to -5.0v (represented
    by 0x3). The current calculation is done by adding the defined
    AVCL value in mV to -4400 and then dividing by 200 to get the register
    value. Unfortunately if I subtract -4400 from -4400 I get -8800, which
    divided by 200 gives me -44. If I instead subtract -4400 from -4400
    I get 0, which divided by 200 gives me 0. Based on the datasheet this
    is the expected register value.
    
    Fixes: 83b7a8e7e88e ("drm/panel/panel-sitronix-st7701: Parametrize voltage and timing")
    
    Signed-off-by: Chris Morgan <macromorgan@xxxxxxxxxxx>
    Reviewed-by: Neil Armstrong <neil.armstrong@xxxxxxxxxx>
    Link: https://lore.kernel.org/r/20231208154847.130615-2-macroalpha82@xxxxxxxxx
    Signed-off-by: Neil Armstrong <neil.armstrong@xxxxxxxxxx>
    Link: https://patchwork.freedesktop.org/patch/msgid/20231208154847.130615-2-macroalpha82@xxxxxxxxx
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/gpu/drm/panel/panel-sitronix-st7701.c b/drivers/gpu/drm/panel/panel-sitronix-st7701.c
index 0459965e1b4f..036ac403ed21 100644
--- a/drivers/gpu/drm/panel/panel-sitronix-st7701.c
+++ b/drivers/gpu/drm/panel/panel-sitronix-st7701.c
@@ -288,7 +288,7 @@ static void st7701_init_sequence(struct st7701 *st7701)
 		   FIELD_PREP(DSI_CMD2_BK1_PWRCTRL2_AVDD_MASK,
 			      DIV_ROUND_CLOSEST(desc->avdd_mv - 6200, 200)) |
 		   FIELD_PREP(DSI_CMD2_BK1_PWRCTRL2_AVCL_MASK,
-			      DIV_ROUND_CLOSEST(-4400 + desc->avcl_mv, 200)));
+			      DIV_ROUND_CLOSEST(-4400 - desc->avcl_mv, 200)));
 
 	/* T2D = 0.2us * T2D[3:0] */
 	ST7701_DSI(st7701, DSI_CMD2_BK1_SPD1,




[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