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

Commit a003348e authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "disp: msm: sde: avoid secure display to secure camera transition"

parents b34a6039 54b2d681
Loading
Loading
Loading
Loading
+22 −5
Original line number Diff line number Diff line
@@ -4376,6 +4376,20 @@ static int _sde_crtc_check_secure_state_smmu_translation(struct drm_crtc *crtc,
						MSM_DISPLAY_VIDEO_MODE);
	}

	/*
	 * Secure display to secure camera needs without direct
	 * transition is currently not allowed
	 */
	if (fb_sec_dir && secure == SDE_DRM_SEC_NON_SEC &&
		smmu_state->state != ATTACHED &&
		smmu_state->secure_level == SDE_DRM_SEC_ONLY) {

		SDE_EVT32(DRMID(crtc), fb_ns, fb_sec_dir,
			smmu_state->state, smmu_state->secure_level,
			secure);
		goto sec_err;
	}

	/*
	 * In video mode check for null commit before transition
	 * from secure to non secure and vice versa
@@ -4393,6 +4407,12 @@ static int _sde_crtc_check_secure_state_smmu_translation(struct drm_crtc *crtc,
		SDE_EVT32(DRMID(crtc), fb_ns, fb_sec_dir,
			smmu_state->state, smmu_state->secure_level,
			secure, crtc->state->plane_mask, state->plane_mask);
		goto sec_err;
	}

	return 0;

sec_err:
	SDE_ERROR(
	 "crtc%d Invalid transition;sec%d state%d slvl%d ns%d sdir%d\n",
		DRMID(crtc), secure, smmu_state->state,
@@ -4400,9 +4420,6 @@ static int _sde_crtc_check_secure_state_smmu_translation(struct drm_crtc *crtc,
	return -EINVAL;
}

	return 0;
}

static int _sde_crtc_check_secure_conn(struct drm_crtc *crtc,
		struct drm_crtc_state *state, uint32_t fb_sec)
{