Merge v5.2-rc5 into drm-next
Maarten needs -rc4 backmerged so he can pull in the fbcon notifier removal topic branch into drm-misc-next. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
@@ -602,7 +602,6 @@ static void ipu_plane_atomic_update(struct drm_plane *plane,
|
||||
active = ipu_idmac_get_current_buffer(ipu_plane->ipu_ch);
|
||||
ipu_cpmem_set_buffer(ipu_plane->ipu_ch, !active, eba);
|
||||
ipu_idmac_select_buffer(ipu_plane->ipu_ch, !active);
|
||||
ipu_plane->next_buf = !active;
|
||||
if (ipu_plane_separate_alpha(ipu_plane)) {
|
||||
active = ipu_idmac_get_current_buffer(ipu_plane->alpha_ch);
|
||||
ipu_cpmem_set_buffer(ipu_plane->alpha_ch, !active,
|
||||
@@ -707,7 +706,6 @@ static void ipu_plane_atomic_update(struct drm_plane *plane,
|
||||
ipu_cpmem_set_buffer(ipu_plane->ipu_ch, 1, eba);
|
||||
ipu_idmac_lock_enable(ipu_plane->ipu_ch, num_bursts);
|
||||
ipu_plane_enable(ipu_plane);
|
||||
ipu_plane->next_buf = -1;
|
||||
}
|
||||
|
||||
static const struct drm_plane_helper_funcs ipu_plane_helper_funcs = {
|
||||
@@ -729,10 +727,15 @@ bool ipu_plane_atomic_update_pending(struct drm_plane *plane)
|
||||
|
||||
if (ipu_state->use_pre)
|
||||
return ipu_prg_channel_configure_pending(ipu_plane->ipu_ch);
|
||||
else if (ipu_plane->next_buf >= 0)
|
||||
return ipu_idmac_get_current_buffer(ipu_plane->ipu_ch) !=
|
||||
ipu_plane->next_buf;
|
||||
|
||||
/*
|
||||
* Pretend no update is pending in the non-PRE/PRG case. For this to
|
||||
* happen, an atomic update would have to be deferred until after the
|
||||
* start of the next frame and simultaneously interrupt latency would
|
||||
* have to be high enough to let the atomic update finish and issue an
|
||||
* event before the previous end of frame interrupt handler can be
|
||||
* executed.
|
||||
*/
|
||||
return false;
|
||||
}
|
||||
int ipu_planes_assign_pre(struct drm_device *dev,
|
||||
|
@@ -27,7 +27,6 @@ struct ipu_plane {
|
||||
int dp_flow;
|
||||
|
||||
bool disabling;
|
||||
int next_buf;
|
||||
};
|
||||
|
||||
struct ipu_plane *ipu_plane_init(struct drm_device *dev, struct ipu_soc *ipu,
|
||||
|
Reference in New Issue
Block a user