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:

committed by
Liviu Dudau

parent
09368e32a9
commit
8cbc5caf36
@@ -21,6 +21,7 @@
|
||||
|
||||
#include "malidp_drv.h"
|
||||
#include "malidp_hw.h"
|
||||
#include "malidp_mw.h"
|
||||
|
||||
enum {
|
||||
MW_NOT_ENABLED = 0, /* SE writeback not enabled */
|
||||
@@ -996,7 +997,11 @@ static irqreturn_t malidp_se_irq(int irq, void *arg)
|
||||
|
||||
if (status & se->vsync_irq) {
|
||||
switch (hwdev->mw_state) {
|
||||
case MW_ONESHOT:
|
||||
drm_writeback_signal_completion(&malidp->mw_connector, 0);
|
||||
break;
|
||||
case MW_STOP:
|
||||
drm_writeback_signal_completion(&malidp->mw_connector, 0);
|
||||
/* disable writeback after stop */
|
||||
hwdev->mw_state = MW_NOT_ENABLED;
|
||||
break;
|
||||
|
Reference in New Issue
Block a user