Commit a2100695 authored by Rob Clark's avatar Rob Clark

drm/msm/mdp5: nuke mdp5_plane_complete_flip()

We can do this all from mdp5_plane_complete_commit(), so simplify things
a bit and drop mdp5_plane_complete_flip().
Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
parent cee26588
...@@ -135,7 +135,6 @@ static void complete_flip(struct drm_crtc *crtc, struct drm_file *file) ...@@ -135,7 +135,6 @@ static void complete_flip(struct drm_crtc *crtc, struct drm_file *file)
struct mdp5_crtc *mdp5_crtc = to_mdp5_crtc(crtc); struct mdp5_crtc *mdp5_crtc = to_mdp5_crtc(crtc);
struct drm_device *dev = crtc->dev; struct drm_device *dev = crtc->dev;
struct drm_pending_vblank_event *event; struct drm_pending_vblank_event *event;
struct drm_plane *plane;
unsigned long flags; unsigned long flags;
spin_lock_irqsave(&dev->event_lock, flags); spin_lock_irqsave(&dev->event_lock, flags);
...@@ -153,10 +152,6 @@ static void complete_flip(struct drm_crtc *crtc, struct drm_file *file) ...@@ -153,10 +152,6 @@ static void complete_flip(struct drm_crtc *crtc, struct drm_file *file)
} }
spin_unlock_irqrestore(&dev->event_lock, flags); spin_unlock_irqrestore(&dev->event_lock, flags);
drm_atomic_crtc_for_each_plane(plane, crtc) {
mdp5_plane_complete_flip(plane);
}
if (mdp5_crtc->ctl && !crtc->state->enable) { if (mdp5_crtc->ctl && !crtc->state->enable) {
/* set STAGE_UNUSED for all layers */ /* set STAGE_UNUSED for all layers */
mdp5_ctl_blend(mdp5_crtc->ctl, NULL, 0, 0); mdp5_ctl_blend(mdp5_crtc->ctl, NULL, 0, 0);
......
...@@ -208,7 +208,6 @@ int mdp5_irq_domain_init(struct mdp5_kms *mdp5_kms); ...@@ -208,7 +208,6 @@ int mdp5_irq_domain_init(struct mdp5_kms *mdp5_kms);
void mdp5_irq_domain_fini(struct mdp5_kms *mdp5_kms); void mdp5_irq_domain_fini(struct mdp5_kms *mdp5_kms);
uint32_t mdp5_plane_get_flush(struct drm_plane *plane); uint32_t mdp5_plane_get_flush(struct drm_plane *plane);
void mdp5_plane_complete_flip(struct drm_plane *plane);
void mdp5_plane_complete_commit(struct drm_plane *plane, void mdp5_plane_complete_commit(struct drm_plane *plane,
struct drm_plane_state *state); struct drm_plane_state *state);
enum mdp5_pipe mdp5_plane_pipe(struct drm_plane *plane); enum mdp5_pipe mdp5_plane_pipe(struct drm_plane *plane);
......
...@@ -852,20 +852,6 @@ static int mdp5_plane_mode_set(struct drm_plane *plane, ...@@ -852,20 +852,6 @@ static int mdp5_plane_mode_set(struct drm_plane *plane,
return ret; return ret;
} }
void mdp5_plane_complete_flip(struct drm_plane *plane)
{
struct mdp5_kms *mdp5_kms = get_kms(plane);
struct mdp5_plane *mdp5_plane = to_mdp5_plane(plane);
enum mdp5_pipe pipe = mdp5_plane->pipe;
DBG("%s: complete flip", mdp5_plane->name);
if (mdp5_kms->smp)
mdp5_smp_commit(mdp5_kms->smp, pipe);
to_mdp5_plane_state(plane->state)->pending = false;
}
enum mdp5_pipe mdp5_plane_pipe(struct drm_plane *plane) enum mdp5_pipe mdp5_plane_pipe(struct drm_plane *plane)
{ {
struct mdp5_plane *mdp5_plane = to_mdp5_plane(plane); struct mdp5_plane *mdp5_plane = to_mdp5_plane(plane);
...@@ -887,10 +873,17 @@ void mdp5_plane_complete_commit(struct drm_plane *plane, ...@@ -887,10 +873,17 @@ void mdp5_plane_complete_commit(struct drm_plane *plane,
struct mdp5_plane *mdp5_plane = to_mdp5_plane(plane); struct mdp5_plane *mdp5_plane = to_mdp5_plane(plane);
enum mdp5_pipe pipe = mdp5_plane->pipe; enum mdp5_pipe pipe = mdp5_plane->pipe;
if (!plane_enabled(plane->state) && mdp5_kms->smp) { if (mdp5_kms->smp) {
DBG("%s: free SMP", mdp5_plane->name); if (plane_enabled(plane->state)) {
mdp5_smp_release(mdp5_kms->smp, pipe); DBG("%s: complete flip", mdp5_plane->name);
mdp5_smp_commit(mdp5_kms->smp, pipe);
} else {
DBG("%s: free SMP", mdp5_plane->name);
mdp5_smp_release(mdp5_kms->smp, pipe);
}
} }
to_mdp5_plane_state(plane->state)->pending = false;
} }
/* initialize plane */ /* initialize plane */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment