From 34271928bb17be0772324d579241325c108d5f37 Mon Sep 17 00:00:00 2001 From: hujing3 Date: Thu, 1 Sep 2022 17:36:55 +0800 Subject: [PATCH] display/backlight: support hbm dcs only with 51 cmd some product use 51 cmd to support HBM, shouldn't reset brightness when hbm on Change-Id: Ia2db13dfc3f131f9137bbb6f9ee6cd80406b7a8f Signed-off-by: hujing3 Reviewed-on: https://gerrit.mot.com/2376249 SME-Granted: SME Approvals Granted SLTApproved: Slta Waiver Tested-by: Jira Key Reviewed-by: Yeqing Wang Reviewed-by: Hua Tan Submit-Approved: Jira Key --- msm/dsi/dsi_panel.c | 9 ++++++++- msm/dsi/dsi_panel.h | 1 + 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/msm/dsi/dsi_panel.c b/msm/dsi/dsi_panel.c index 116073228b22..a178451c4f19 100644 --- a/msm/dsi/dsi_panel.c +++ b/msm/dsi/dsi_panel.c @@ -879,7 +879,10 @@ static bool dsi_panel_set_hbm_backlight(struct dsi_panel *panel, u32 *bl_lvl) panel->bl_config.bl_max_level : panel->bl_lvl_during_hbm; DSI_INFO("HBM set bl_level=%d bl_max_level = %d bl_lvl_during_hbm = %d\n", bl_level, panel->bl_config.bl_max_level, panel->bl_lvl_during_hbm); - return false; + if(panel->is_hbm_using_51_cmd && dsi_panel_param_is_hbm_on(panel)) + return true; + else + return false; } else { panel->bl_lvl_during_hbm = bl_level; if (dsi_panel_param_is_hbm_on(panel)) { @@ -4398,6 +4401,10 @@ static int dsi_panel_parse_param_prop(struct dsi_panel *panel, panel->bl_lvl_during_hbm = panel->bl_config.bl_max_level; + panel->is_hbm_using_51_cmd = of_property_read_bool(of_node, + "qcom,mdss-dsi-panel-hbm-is-51cmd"); + if (panel->is_hbm_using_51_cmd) + DSI_INFO("HBM command is using 0x51 command\n"); } rc = -EINVAL; diff --git a/msm/dsi/dsi_panel.h b/msm/dsi/dsi_panel.h index 92fdcd2f6351..7503cfd7f576 100644 --- a/msm/dsi/dsi_panel.h +++ b/msm/dsi/dsi_panel.h @@ -405,6 +405,7 @@ struct dsi_panel { int panel_recovery_retry; bool is_panel_dead; + bool is_hbm_using_51_cmd; int hbm_en_gpio; };