Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 208e7628 authored by Jayant Shekhar's avatar Jayant Shekhar Committed by Sandeep Panda
Browse files

msm: mdss: update backlight during unblank if required



Some panel don't require backlight to be updated during
unblank and only require update upon first commit. Add
support to update the backlight based on panel specific
property.

Change-Id: I43f33505be5151640ad7dc2ee1a14df8a55a6dfe
Signed-off-by: default avatarJayant Shekhar <jshekhar@codeaurora.org>
Signed-off-by: default avatarSandeep Panda <spanda@codeaurora.org>
parent 0940fb6a
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -462,6 +462,8 @@ Optional properites:

- qcom,mdss-dsi-display-timings:	Parent node that lists the different resolutions that the panel supports.
					Each child represents timings settings for a specific resolution.
- qcom,mdss-dsi-post-init-delay:        Specifies required number of frames to wait so that panel can be functional
					to show proper display.

Additional properties added to the second level nodes that represent timings properties:
- qcom,mdss-dsi-timing-default:		Property that specifies the current child as the default
+3 −0
Original line number Diff line number Diff line
@@ -2390,6 +2390,9 @@ static int mdss_panel_parse_dt(struct device_node *np,
	rc = of_property_read_u32(np, "qcom,mdss-dsi-init-delay-us", &tmp);
	pinfo->mipi.init_delay = (!rc ? tmp : 0);

	rc = of_property_read_u32(np, "qcom,mdss-dsi-post-init-delay", &tmp);
	pinfo->mipi.post_init_delay = (!rc ? tmp : 0);

	mdss_dsi_parse_roi_alignment(np, pinfo);

	mdss_dsi_parse_trigger(np, &(pinfo->mipi.mdp_trigger),
+3 −3
Original line number Diff line number Diff line
@@ -1768,10 +1768,10 @@ static int mdss_fb_blank_unblank(struct msm_fb_data_type *mfd)
			 * the backlight would remain 0 (0 is set in blank).
			 * Hence resetting back to calibration mode value
			 */
			if (!IS_CALIB_MODE_BL(mfd))
				mdss_fb_set_backlight(mfd, mfd->unset_bl_level);
			else
			if (IS_CALIB_MODE_BL(mfd))
				mdss_fb_set_backlight(mfd, mfd->calib_mode_bl);
			else if (!mfd->panel_info->mipi.post_init_delay)
				mdss_fb_set_backlight(mfd, mfd->unset_bl_level);

			/*
			 * it blocks the backlight update between unblank and
+1 −0
Original line number Diff line number Diff line
@@ -406,6 +406,7 @@ struct mipi_panel_info {

	char lp11_init;
	u32  init_delay;
	u32  post_init_delay;
};

struct edp_panel_info {