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

Commit 34fc6ee6 authored by Raviteja Tamatam's avatar Raviteja Tamatam
Browse files

disp: msm: sde: update crtc check in drm_check_dpms



In cases of adb shell stop, connector->state->crtc is
not updated which prevents panel power down
notification to be sent. In such cases updated crtc
from old connector state.

Change-Id: I94f9e5ad469d771cc673123b4e0cc65ea8f4653e
Signed-off-by: default avatarRaviteja Tamatam <travitej@codeaurora.org>
parent 90cba358
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -891,16 +891,18 @@ static void _sde_kms_drm_check_dpms(struct drm_atomic_state *old_state,
	struct drm_connector *connector;
	struct drm_connector_state *old_conn_state;
	struct drm_crtc_state *old_crtc_state;
	struct drm_crtc *crtc;
	int i, old_mode, new_mode, old_fps, new_fps;

	for_each_old_connector_in_state(old_state, connector,
			old_conn_state, i) {
		if (!connector->state->crtc)
		crtc = connector->state->crtc ? connector->state->crtc :
			old_conn_state->crtc;
		if (!crtc)
			continue;

		new_fps = connector->state->crtc->state->mode.vrefresh;
		new_mode = _sde_kms_get_blank(connector->state->crtc->state,
						connector->state);
		new_fps = crtc->state->mode.vrefresh;
		new_mode = _sde_kms_get_blank(crtc->state, connector->state);
		if (old_conn_state->crtc) {
			old_crtc_state = drm_atomic_get_existing_crtc_state(
					old_state, old_conn_state->crtc);