This patch addresses an issue with the Anbernic RG353V-V2 panel initialization that was caused by incorrect parameter. The correct initialization sequence was derived by referencing the JELOS (Just Enough Linux OS) BSP kernel's device tree for the V2 panel, which is identified by the ID "38 21". The relevant device tree can be found at: https://github.com/JustEnoughLinuxOS/rk356x-kernel/blob/d4d7335a5ca18fc216a29712d5c6cecfb86147d2/arch/arm64/boot/dts/rockchip/rk3568-evb-rg353v.dtsi#L582 The proper initialization sequence was further informed by dissecting instructions as outlined in the "Rockchip_DRM_Panel_Porting_Guide", specifically in Chapter 3.3 of the document. https://web.archive.org/web/20240209211932if_/http://download.t-firefly.com/product/Board/Common/Document/Developer/Rockchip_Developer_Guide_DRM_Panel_Porting_CN.pdf Upon comparing the initialization sequence within the rg353v2_init_sequence function against the device tree in the BSP kernel, discrepancies were identified in two instructions. The relevant instructions in the device tree are: 1. 15 00 03 b6 7f 7f corresponding to the ST7703_CMD_SETVCOM command with parameters 7f 7f 2. 39 00 05 b8 26 62 f0 63 corresponding to the ST7703_CMD_SETPOWER_EXT command with parameters 26 62 f0 63 Adjusting the parameters to match those specified in the BSP kernel's device tree allow the panel to initialize correctly. Signed-off-by: Ao Zhong <hacc1225@xxxxxxxxx> --- drivers/gpu/drm/panel/panel-sitronix-st7703.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/panel/panel-sitronix-st7703.c b/drivers/gpu/drm/panel/panel-sitronix-st7703.c index b55bafd1a8be..a346d6c3d283 100644 --- a/drivers/gpu/drm/panel/panel-sitronix-st7703.c +++ b/drivers/gpu/drm/panel/panel-sitronix-st7703.c @@ -357,8 +357,8 @@ static int rg353v2_init_sequence(struct st7703 *ctx) 0x28, 0x03, 0xff, 0x00, 0x00, 0x00, 0x00); mipi_dsi_dcs_write_seq(dsi, ST7703_CMD_SETCYC, 0x80); mipi_dsi_dcs_write_seq(dsi, ST7703_CMD_SETBGP, 0x0a, 0x0a); - mipi_dsi_dcs_write_seq(dsi, ST7703_CMD_SETVCOM, 0x92, 0x92); - mipi_dsi_dcs_write_seq(dsi, ST7703_CMD_SETPOWER_EXT, 0x25, 0x22, + mipi_dsi_dcs_write_seq(dsi, ST7703_CMD_SETVCOM, 0x7f, 0x7f); + mipi_dsi_dcs_write_seq(dsi, ST7703_CMD_SETPOWER_EXT, 0x26, 0x62, 0xf0, 0x63); mipi_dsi_dcs_write_seq(dsi, ST7703_CMD_SETMIPI, 0x33, 0x81, 0x05, 0xf9, 0x0e, 0x0e, 0x20, 0x00, 0x00, 0x00, 0x00, -- 2.43.0