drm: mali-dp: Add writeback connector
Mali-DP has a memory writeback engine which can be used to write the composition result to a memory buffer. Expose this functionality as a DRM writeback connector on supported hardware. Changes since v1: Daniel Vetter: - Don't require a modeset when writeback routing changes - Make writeback connector always disconnected Changes since v2: - Rebase onto new drm_writeback_connector - Add reset callback, allocating subclassed state Daniel Vetter: - Squash out-fence support into this commit Gustavo Padovan: - Don't signal fence directly from driver (and drop malidp_mw_job) Changes since v3: - Modifications to fit with Mali-DP commit tail changes Signed-off-by: Brian Starkey <brian.starkey@arm.com> [rebased and fixed conflicts] Signed-off-by: Mihail Atanassov <mihail.atanassov@arm.com> Signed-off-by: Liviu Dudau <liviu.dudau@arm.com>
This commit is contained in:

gecommit door
Liviu Dudau

bovenliggende
09368e32a9
commit
8cbc5caf36
@@ -411,6 +411,16 @@ static int malidp_crtc_atomic_check(struct drm_crtc *crtc,
|
||||
}
|
||||
}
|
||||
|
||||
/* If only the writeback routing has changed, we don't need a modeset */
|
||||
if (state->connectors_changed) {
|
||||
u32 old_mask = crtc->state->connector_mask;
|
||||
u32 new_mask = state->connector_mask;
|
||||
|
||||
if ((old_mask ^ new_mask) ==
|
||||
(1 << drm_connector_index(&malidp->mw_connector.base)))
|
||||
state->connectors_changed = false;
|
||||
}
|
||||
|
||||
ret = malidp_crtc_atomic_check_gamma(crtc, state);
|
||||
ret = ret ? ret : malidp_crtc_atomic_check_ctm(crtc, state);
|
||||
ret = ret ? ret : malidp_crtc_atomic_check_scaling(crtc, state);
|
||||
|
Verwijs in nieuw issue
Block a user