msm: mdss: add support to control dcs brightness with HS state
Some special panels may need high speed mode to send brightness to avoid panel issues, adding this change can make a better user experience using these panels. Change-Id: Id2cd4b3652892cc7677d7c6863a67d93e24d980f Signed-off-by: Yahui Wang <yahuiw@codeaurora.org>
This commit is contained in:
parent
8efb4552d1
commit
e58eb7c0ca
3 changed files with 17 additions and 0 deletions
|
@ -187,6 +187,10 @@ Optional properties:
|
|||
"bl_ctrl_wled" = Backlight controlled by WLED.
|
||||
"bl_ctrl_dcs" = Backlight controlled by DCS commands.
|
||||
other: Unknown backlight control. (default)
|
||||
- qcom,mdss-dsi-bl-dcs-command-state: A string that specifies the ctrl state for sending brightness
|
||||
controlling commands, this is only available when backlight is controlled by DCS commands.
|
||||
"dsi_lp_mode" = DSI low power mode (default).
|
||||
"dsi_hs_mode" = DSI high speed mode.
|
||||
- qcom,mdss-dsi-bl-pwm-pmi: Boolean to indicate that PWM control is through second pmic chip.
|
||||
- qcom,mdss-dsi-bl-pmic-bank-select: LPG channel for backlight.
|
||||
Requred if blpmiccontroltype is PWM
|
||||
|
|
|
@ -459,6 +459,7 @@ struct mdss_dsi_ctrl_pdata {
|
|||
bool avdd_en_gpio_invert;
|
||||
int lcd_mode_sel_gpio;
|
||||
int bklt_ctrl; /* backlight ctrl */
|
||||
enum dsi_ctrl_op_mode bklt_dcs_op_mode; /* backlight dcs ctrl mode */
|
||||
bool pwm_pmi;
|
||||
int pwm_period;
|
||||
int pwm_pmic_gpio;
|
||||
|
|
|
@ -238,6 +238,11 @@ static void mdss_dsi_panel_bklt_dcs(struct mdss_dsi_ctrl_pdata *ctrl, int level)
|
|||
cmdreq.rlen = 0;
|
||||
cmdreq.cb = NULL;
|
||||
|
||||
if (ctrl->bklt_dcs_op_mode == DSI_HS_MODE)
|
||||
cmdreq.flags |= CMD_REQ_HS_MODE;
|
||||
else
|
||||
cmdreq.flags |= CMD_REQ_LP_MODE;
|
||||
|
||||
mdss_dsi_cmdlist_put(ctrl, &cmdreq);
|
||||
}
|
||||
|
||||
|
@ -2413,6 +2418,13 @@ int mdss_panel_parse_bl_settings(struct device_node *np,
|
|||
}
|
||||
} else if (!strcmp(data, "bl_ctrl_dcs")) {
|
||||
ctrl_pdata->bklt_ctrl = BL_DCS_CMD;
|
||||
data = of_get_property(np,
|
||||
"qcom,mdss-dsi-bl-dcs-command-state", NULL);
|
||||
if (data && !strcmp(data, "dsi_hs_mode"))
|
||||
ctrl_pdata->bklt_dcs_op_mode = DSI_HS_MODE;
|
||||
else
|
||||
ctrl_pdata->bklt_dcs_op_mode = DSI_LP_MODE;
|
||||
|
||||
pr_debug("%s: Configured DCS_CMD bklt ctrl\n",
|
||||
__func__);
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue