浏览代码

disp: msm: add inverted display brightness value property

In general the brightness value, the first parameter is low byte and
the second is high byte, but some DDIC invert, so add inverted display
brightness value property.

Change-Id: I8bf5631bb66096bd28529c53643e358afffce18e
Signed-off-by: Wenjun Zhang <[email protected]>
Wenjun Zhang 5 年之前
父节点
当前提交
b55a29b194
共有 2 个文件被更改,包括 7 次插入0 次删除
  1. 6 0
      msm/dsi/dsi_panel.c
  2. 1 0
      msm/dsi/dsi_panel.h

+ 6 - 0
msm/dsi/dsi_panel.c

@@ -506,6 +506,9 @@ static int dsi_panel_update_backlight(struct dsi_panel *panel,
 
 	dsi = &panel->mipi_device;
 
+	if (panel->bl_config.bl_inverted_dbv)
+		bl_lvl = (((bl_lvl & 0xff) << 8) | (bl_lvl >> 8));
+
 	rc = mipi_dsi_dcs_set_display_brightness(dsi, bl_lvl);
 	if (rc < 0)
 		DSI_ERR("failed to update dcs backlight:%d\n", bl_lvl);
@@ -2183,6 +2186,9 @@ static int dsi_panel_parse_bl_config(struct dsi_panel *panel)
 		panel->bl_config.brightness_max_level = val;
 	}
 
+	panel->bl_config.bl_inverted_dbv = utils->read_bool(utils->data,
+		"qcom,mdss-dsi-bl-inverted-dbv");
+
 	if (panel->bl_config.type == DSI_BACKLIGHT_PWM) {
 		rc = dsi_panel_parse_bl_pwm_config(panel);
 		if (rc) {

+ 1 - 0
msm/dsi/dsi_panel.h

@@ -115,6 +115,7 @@ struct dsi_backlight_config {
 	u32 bl_level;
 	u32 bl_scale;
 	u32 bl_scale_sv;
+	bool bl_inverted_dbv;
 
 	int en_gpio;
 	/* PWM params */