[Intel-gfx] [CI 11/12] drm/i915: Perform automated conversions for plane uapi/hw split, base -> uapi.
Maarten Lankhorst
maarten.lankhorst at linux.intel.com
Wed Oct 30 13:10:00 UTC 2019
Op 29-10-2019 om 16:43 schreef Ville Syrjälä:
> On Tue, Oct 29, 2019 at 08:22:28AM +0100, Maarten Lankhorst wrote:
>> Split up plane_state->base to uapi. This is done using the following patch,
>> ran after the previous commit that splits out any hw references:
>>
>> @@
>> struct intel_plane_state *T;
>> identifier x;
>> @@
>> -T->base.x
>> +T->uapi.x
>>
>> @@
>> struct intel_plane_state *T;
>> @@
>> -T->base
>> +T->uapi
>>
>> Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
>> ---
>> drivers/gpu/drm/i915/display/intel_atomic.c | 2 +-
>> .../gpu/drm/i915/display/intel_atomic_plane.c | 32 +-
>> drivers/gpu/drm/i915/display/intel_display.c | 298 +++++++++---------
>> drivers/gpu/drm/i915/display/intel_fbc.c | 12 +-
>> drivers/gpu/drm/i915/display/intel_overlay.c | 2 +-
>> drivers/gpu/drm/i915/display/intel_sprite.c | 136 ++++----
>> drivers/gpu/drm/i915/intel_pm.c | 57 ++--
>> 7 files changed, 271 insertions(+), 268 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/display/intel_atomic.c b/drivers/gpu/drm/i915/display/intel_atomic.c
>> index fb4126de994d..cb5c914f627f 100644
>> --- a/drivers/gpu/drm/i915/display/intel_atomic.c
>> +++ b/drivers/gpu/drm/i915/display/intel_atomic.c
>> @@ -299,7 +299,7 @@ static void intel_atomic_setup_scaler(struct intel_crtc_scaler_state *scaler_sta
>> if (plane_state && plane_state->hw.fb &&
>> plane_state->hw.fb->format->is_yuv &&
>> plane_state->hw.fb->format->num_planes > 1) {
>> - struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
>> + struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane);
>> if (IS_GEN(dev_priv, 9) &&
>> !IS_GEMINILAKE(dev_priv)) {
>> mode = SKL_PS_SCALER_MODE_NV12;
>> diff --git a/drivers/gpu/drm/i915/display/intel_atomic_plane.c b/drivers/gpu/drm/i915/display/intel_atomic_plane.c
>> index cac1d6ae67f6..ba7d5421f791 100644
>> --- a/drivers/gpu/drm/i915/display/intel_atomic_plane.c
>> +++ b/drivers/gpu/drm/i915/display/intel_atomic_plane.c
>> @@ -56,7 +56,7 @@ struct intel_plane *intel_plane_alloc(void)
>> return ERR_PTR(-ENOMEM);
>> }
>>
>> - __drm_atomic_helper_plane_reset(&plane->base, &plane_state->base);
>> + __drm_atomic_helper_plane_reset(&plane->base, &plane_state->uapi);
>> plane_state->scaler_id = -1;
>>
>> return plane;
>> @@ -88,12 +88,12 @@ intel_plane_duplicate_state(struct drm_plane *plane)
>> if (!intel_state)
>> return NULL;
>>
>> - __drm_atomic_helper_plane_duplicate_state(plane, &intel_state->base);
>> + __drm_atomic_helper_plane_duplicate_state(plane, &intel_state->uapi);
>>
>> intel_state->vma = NULL;
>> intel_state->flags = 0;
>>
>> - return &intel_state->base;
>> + return &intel_state->uapi;
>> }
>>
>> /**
>> @@ -111,7 +111,7 @@ intel_plane_destroy_state(struct drm_plane *plane,
>> struct intel_plane_state *plane_state = to_intel_plane_state(state);
>> WARN_ON(plane_state->vma);
>>
>> - __drm_atomic_helper_plane_destroy_state(&plane_state->base);
>> + __drm_atomic_helper_plane_destroy_state(&plane_state->uapi);
>> kfree(plane_state);
>> }
>>
>> @@ -121,7 +121,7 @@ unsigned int intel_plane_data_rate(const struct intel_crtc_state *crtc_state,
>> const struct drm_framebuffer *fb = plane_state->hw.fb;
>> unsigned int cpp;
>>
>> - if (!plane_state->base.visible)
>> + if (!plane_state->uapi.visible)
>> return 0;
>>
>> cpp = fb->format->cpp[0];
>> @@ -144,10 +144,10 @@ bool intel_plane_calc_min_cdclk(struct intel_atomic_state *state,
>> struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
>> const struct intel_plane_state *plane_state =
>> intel_atomic_get_new_plane_state(state, plane);
>> - struct intel_crtc *crtc = to_intel_crtc(plane_state->base.crtc);
>> + struct intel_crtc *crtc = to_intel_crtc(plane_state->uapi.crtc);
> This looks wrong. Should be hw.crtc I believe.
Correct, I accidentally messed up last time I ran this, and forgot to run the base->hw patch first.
So some references were changed to uapi, that should be hw. I fixed it in a rerun, but noticed it too late here. :)
Will respin!
>
>> struct intel_crtc_state *crtc_state;
>>
>> - if (!plane_state->base.visible || !plane->min_cdclk)
>> + if (!plane_state->uapi.visible || !plane->min_cdclk)
> Not duplicating visible,src,dst leads to slightly confusing looking
> code. I wonder if it wouldn't be better to just duplicate those as
> well...
>
>> return false;
>>
>> crtc_state = intel_atomic_get_new_crtc_state(state, crtc);
>> @@ -181,7 +181,7 @@ int intel_plane_atomic_check_with_state(const struct intel_crtc_state *old_crtc_
>> const struct intel_plane_state *old_plane_state,
>> struct intel_plane_state *new_plane_state)
>> {
>> - struct intel_plane *plane = to_intel_plane(new_plane_state->base.plane);
>> + struct intel_plane *plane = to_intel_plane(new_plane_state->uapi.plane);
>> const struct drm_framebuffer *fb = new_plane_state->hw.fb;
>> int ret;
>>
>> @@ -190,7 +190,7 @@ int intel_plane_atomic_check_with_state(const struct intel_crtc_state *old_crtc_
>> new_crtc_state->c8_planes &= ~BIT(plane->id);
>> new_crtc_state->data_rate[plane->id] = 0;
>> new_crtc_state->min_cdclk[plane->id] = 0;
>> - new_plane_state->base.visible = false;
>> + new_plane_state->uapi.visible = false;
>>
>> if (!new_plane_state->hw.crtc && !old_plane_state->hw.crtc)
>> return 0;
>> @@ -200,18 +200,18 @@ int intel_plane_atomic_check_with_state(const struct intel_crtc_state *old_crtc_
>> return ret;
>>
>> /* FIXME pre-g4x don't work like this */
>> - if (new_plane_state->base.visible)
>> + if (new_plane_state->uapi.visible)
>> new_crtc_state->active_planes |= BIT(plane->id);
>>
>> - if (new_plane_state->base.visible &&
>> + if (new_plane_state->uapi.visible &&
>> drm_format_info_is_yuv_semiplanar(fb->format))
>> new_crtc_state->nv12_planes |= BIT(plane->id);
>>
>> - if (new_plane_state->base.visible &&
>> + if (new_plane_state->uapi.visible &&
>> fb->format->format == DRM_FORMAT_C8)
>> new_crtc_state->c8_planes |= BIT(plane->id);
>>
>> - if (new_plane_state->base.visible || old_plane_state->base.visible)
>> + if (new_plane_state->uapi.visible || old_plane_state->uapi.visible)
>> new_crtc_state->update_planes |= BIT(plane->id);
>>
>> new_crtc_state->data_rate[plane->id] =
>> @@ -246,7 +246,7 @@ int intel_plane_atomic_check(struct intel_atomic_state *state,
>> const struct intel_crtc_state *old_crtc_state;
>> struct intel_crtc_state *new_crtc_state;
>>
>> - new_plane_state->base.visible = false;
>> + new_plane_state->uapi.visible = false;
>> if (!crtc)
>> return 0;
>>
>> @@ -355,7 +355,7 @@ void skl_update_planes_on_crtc(struct intel_atomic_state *state,
>> struct intel_plane_state *new_plane_state =
>> intel_atomic_get_new_plane_state(state, plane);
>>
>> - if (new_plane_state->base.visible) {
>> + if (new_plane_state->uapi.visible) {
>> intel_update_plane(plane, new_crtc_state, new_plane_state);
>> } else if (new_plane_state->planar_slave) {
>> struct intel_plane *master =
>> @@ -395,7 +395,7 @@ void i9xx_update_planes_on_crtc(struct intel_atomic_state *state,
>> !(update_mask & BIT(plane->id)))
>> continue;
>>
>> - if (new_plane_state->base.visible)
>> + if (new_plane_state->uapi.visible)
>> intel_update_plane(plane, new_crtc_state, new_plane_state);
>> else
>> intel_disable_plane(plane, new_crtc_state);
>> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
>> index fbbe6f752716..91a059e5fdcb 100644
>> --- a/drivers/gpu/drm/i915/display/intel_display.c
>> +++ b/drivers/gpu/drm/i915/display/intel_display.c
>> @@ -2082,7 +2082,7 @@ static unsigned int intel_surf_alignment(const struct drm_framebuffer *fb,
>>
>> static bool intel_plane_uses_fence(const struct intel_plane_state *plane_state)
>> {
>> - struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
>> + struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane);
>> struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
>>
>> return INTEL_GEN(dev_priv) < 4 ||
>> @@ -2391,7 +2391,7 @@ static u32 intel_plane_compute_aligned_offset(int *x, int *y,
>> const struct intel_plane_state *state,
>> int color_plane)
>> {
>> - struct intel_plane *intel_plane = to_intel_plane(state->base.plane);
>> + struct intel_plane *intel_plane = to_intel_plane(state->uapi.plane);
>> struct drm_i915_private *dev_priv = to_i915(intel_plane->base.dev);
>> const struct drm_framebuffer *fb = state->hw.fb;
>> unsigned int rotation = state->hw.rotation;
>> @@ -2579,7 +2579,7 @@ intel_fb_stride_alignment(const struct drm_framebuffer *fb, int color_plane)
>>
>> bool intel_plane_can_remap(const struct intel_plane_state *plane_state)
>> {
>> - struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
>> + struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane);
>> struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
>> const struct drm_framebuffer *fb = plane_state->hw.fb;
>> int i;
>> @@ -2619,7 +2619,7 @@ bool intel_plane_can_remap(const struct intel_plane_state *plane_state)
>>
>> static bool intel_plane_needs_remap(const struct intel_plane_state *plane_state)
>> {
>> - struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
>> + struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane);
>> const struct drm_framebuffer *fb = plane_state->hw.fb;
>> unsigned int rotation = plane_state->hw.rotation;
>> u32 stride, max_stride;
>> @@ -2628,7 +2628,7 @@ static bool intel_plane_needs_remap(const struct intel_plane_state *plane_state)
>> * No remapping for invisible planes since we don't have
>> * an actual source viewport to remap.
>> */
>> - if (!plane_state->base.visible)
>> + if (!plane_state->uapi.visible)
>> return false;
>>
>> if (!intel_plane_can_remap(plane_state))
>> @@ -2811,7 +2811,7 @@ static void
>> intel_plane_remap_gtt(struct intel_plane_state *plane_state)
>> {
>> struct drm_i915_private *dev_priv =
>> - to_i915(plane_state->base.plane->dev);
>> + to_i915(plane_state->uapi.plane->dev);
>> struct drm_framebuffer *fb = plane_state->hw.fb;
>> struct intel_framebuffer *intel_fb = to_intel_framebuffer(fb);
>> struct intel_rotation_info *info = &plane_state->view.rotated;
>> @@ -2826,20 +2826,20 @@ intel_plane_remap_gtt(struct intel_plane_state *plane_state)
>> plane_state->view.type = drm_rotation_90_or_270(rotation) ?
>> I915_GGTT_VIEW_ROTATED : I915_GGTT_VIEW_REMAPPED;
>>
>> - src_x = plane_state->base.src.x1 >> 16;
>> - src_y = plane_state->base.src.y1 >> 16;
>> - src_w = drm_rect_width(&plane_state->base.src) >> 16;
>> - src_h = drm_rect_height(&plane_state->base.src) >> 16;
>> + src_x = plane_state->uapi.src.x1 >> 16;
>> + src_y = plane_state->uapi.src.y1 >> 16;
>> + src_w = drm_rect_width(&plane_state->uapi.src) >> 16;
>> + src_h = drm_rect_height(&plane_state->uapi.src) >> 16;
>>
>> WARN_ON(is_ccs_modifier(fb->modifier));
>>
>> /* Make src coordinates relative to the viewport */
>> - drm_rect_translate(&plane_state->base.src,
>> + drm_rect_translate(&plane_state->uapi.src,
>> -(src_x << 16), -(src_y << 16));
>>
>> /* Rotate src coordinates to match rotated GTT view */
>> if (drm_rotation_90_or_270(rotation))
>> - drm_rect_rotate(&plane_state->base.src,
>> + drm_rect_rotate(&plane_state->uapi.src,
>> src_w << 16, src_h << 16,
>> DRM_MODE_ROTATE_270);
>>
>> @@ -2959,7 +2959,7 @@ intel_plane_compute_gtt(struct intel_plane_state *plane_state)
>>
>> /* Rotate src coordinates to match rotated GTT view */
>> if (drm_rotation_90_or_270(rotation))
>> - drm_rect_rotate(&plane_state->base.src,
>> + drm_rect_rotate(&plane_state->uapi.src,
>> fb->base.width << 16, fb->base.height << 16,
>> DRM_MODE_ROTATE_270);
>>
>> @@ -3127,9 +3127,9 @@ intel_set_plane_visible(struct intel_crtc_state *crtc_state,
>> struct intel_plane_state *plane_state,
>> bool visible)
>> {
>> - struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
>> + struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane);
>>
>> - plane_state->base.visible = visible;
>> + plane_state->uapi.visible = visible;
>>
>> if (visible)
>> crtc_state->uapi.plane_mask |= drm_plane_mask(&plane->base);
>> @@ -3275,8 +3275,8 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc,
>> plane_state->crtc_w = fb->width;
>> plane_state->crtc_h = fb->height;
>>
>> - intel_state->base.src = drm_plane_state_src(plane_state);
>> - intel_state->base.dst = drm_plane_state_dest(plane_state);
>> + intel_state->uapi.src = drm_plane_state_src(plane_state);
>> + intel_state->uapi.dst = drm_plane_state_dest(plane_state);
>>
>> if (plane_config->tiling)
>> dev_priv->preserve_bios_swizzle = true;
>> @@ -3411,13 +3411,13 @@ static bool skl_check_main_ccs_coordinates(struct intel_plane_state *plane_state
>>
>> static int skl_check_main_surface(struct intel_plane_state *plane_state)
>> {
>> - struct drm_i915_private *dev_priv = to_i915(plane_state->base.plane->dev);
>> + struct drm_i915_private *dev_priv = to_i915(plane_state->uapi.plane->dev);
>> const struct drm_framebuffer *fb = plane_state->hw.fb;
>> unsigned int rotation = plane_state->hw.rotation;
>> - int x = plane_state->base.src.x1 >> 16;
>> - int y = plane_state->base.src.y1 >> 16;
>> - int w = drm_rect_width(&plane_state->base.src) >> 16;
>> - int h = drm_rect_height(&plane_state->base.src) >> 16;
>> + int x = plane_state->uapi.src.x1 >> 16;
>> + int y = plane_state->uapi.src.y1 >> 16;
>> + int w = drm_rect_width(&plane_state->uapi.src) >> 16;
>> + int h = drm_rect_height(&plane_state->uapi.src) >> 16;
>> int max_width;
>> int max_height;
>> u32 alignment, offset, aux_offset = plane_state->color_plane[1].offset;
>> @@ -3500,7 +3500,7 @@ static int skl_check_main_surface(struct intel_plane_state *plane_state)
>> * Put the final coordinates back so that the src
>> * coordinate checks will see the right values.
>> */
>> - drm_rect_translate_to(&plane_state->base.src,
>> + drm_rect_translate_to(&plane_state->uapi.src,
>> x << 16, y << 16);
>>
>> return 0;
>> @@ -3512,10 +3512,10 @@ static int skl_check_nv12_aux_surface(struct intel_plane_state *plane_state)
>> unsigned int rotation = plane_state->hw.rotation;
>> int max_width = skl_max_plane_width(fb, 1, rotation);
>> int max_height = 4096;
>> - int x = plane_state->base.src.x1 >> 17;
>> - int y = plane_state->base.src.y1 >> 17;
>> - int w = drm_rect_width(&plane_state->base.src) >> 17;
>> - int h = drm_rect_height(&plane_state->base.src) >> 17;
>> + int x = plane_state->uapi.src.x1 >> 17;
>> + int y = plane_state->uapi.src.y1 >> 17;
>> + int w = drm_rect_width(&plane_state->uapi.src) >> 17;
>> + int h = drm_rect_height(&plane_state->uapi.src) >> 17;
>> u32 offset;
>>
>> intel_add_fb_offsets(&x, &y, plane_state, 1);
>> @@ -3538,8 +3538,8 @@ static int skl_check_nv12_aux_surface(struct intel_plane_state *plane_state)
>> static int skl_check_ccs_aux_surface(struct intel_plane_state *plane_state)
>> {
>> const struct drm_framebuffer *fb = plane_state->hw.fb;
>> - int src_x = plane_state->base.src.x1 >> 16;
>> - int src_y = plane_state->base.src.y1 >> 16;
>> + int src_x = plane_state->uapi.src.x1 >> 16;
>> + int src_y = plane_state->uapi.src.y1 >> 16;
>> int hsub = fb->format->hsub;
>> int vsub = fb->format->vsub;
>> int x = src_x / hsub;
>> @@ -3565,7 +3565,7 @@ int skl_check_plane_surface(struct intel_plane_state *plane_state)
>> if (ret)
>> return ret;
>>
>> - if (!plane_state->base.visible)
>> + if (!plane_state->uapi.visible)
>> return 0;
>>
>> /*
>> @@ -3689,7 +3689,7 @@ static u32 i9xx_plane_ctl(const struct intel_crtc_state *crtc_state,
>> const struct intel_plane_state *plane_state)
>> {
>> struct drm_i915_private *dev_priv =
>> - to_i915(plane_state->base.plane->dev);
>> + to_i915(plane_state->uapi.plane->dev);
>> const struct drm_framebuffer *fb = plane_state->hw.fb;
>> unsigned int rotation = plane_state->hw.rotation;
>> u32 dspcntr;
>> @@ -3746,7 +3746,7 @@ static u32 i9xx_plane_ctl(const struct intel_crtc_state *crtc_state,
>> int i9xx_check_plane_surface(struct intel_plane_state *plane_state)
>> {
>> struct drm_i915_private *dev_priv =
>> - to_i915(plane_state->base.plane->dev);
>> + to_i915(plane_state->uapi.plane->dev);
>> const struct drm_framebuffer *fb = plane_state->hw.fb;
>> int src_x, src_y, src_w;
>> u32 offset;
>> @@ -3756,12 +3756,12 @@ int i9xx_check_plane_surface(struct intel_plane_state *plane_state)
>> if (ret)
>> return ret;
>>
>> - if (!plane_state->base.visible)
>> + if (!plane_state->uapi.visible)
>> return 0;
>>
>> - src_w = drm_rect_width(&plane_state->base.src) >> 16;
>> - src_x = plane_state->base.src.x1 >> 16;
>> - src_y = plane_state->base.src.y1 >> 16;
>> + src_w = drm_rect_width(&plane_state->uapi.src) >> 16;
>> + src_x = plane_state->uapi.src.x1 >> 16;
>> + src_y = plane_state->uapi.src.y1 >> 16;
>>
>> /* Undocumented hardware limit on i965/g4x/vlv/chv */
>> if (HAS_GMCH(dev_priv) && fb->format->cpp[0] == 8 && src_w > 2048)
>> @@ -3779,14 +3779,14 @@ int i9xx_check_plane_surface(struct intel_plane_state *plane_state)
>> * Put the final coordinates back so that the src
>> * coordinate checks will see the right values.
>> */
>> - drm_rect_translate_to(&plane_state->base.src,
>> + drm_rect_translate_to(&plane_state->uapi.src,
>> src_x << 16, src_y << 16);
>>
>> /* HSW/BDW do this automagically in hardware */
>> if (!IS_HASWELL(dev_priv) && !IS_BROADWELL(dev_priv)) {
>> unsigned int rotation = plane_state->hw.rotation;
>> - int src_w = drm_rect_width(&plane_state->base.src) >> 16;
>> - int src_h = drm_rect_height(&plane_state->base.src) >> 16;
>> + int src_w = drm_rect_width(&plane_state->uapi.src) >> 16;
>> + int src_h = drm_rect_height(&plane_state->uapi.src) >> 16;
>>
>> if (rotation & DRM_MODE_ROTATE_180) {
>> src_x += src_w - 1;
>> @@ -3823,14 +3823,14 @@ static int
>> i9xx_plane_check(struct intel_crtc_state *crtc_state,
>> struct intel_plane_state *plane_state)
>> {
>> - struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
>> + struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane);
>> int ret;
>>
>> ret = chv_plane_check_rotation(plane_state);
>> if (ret)
>> return ret;
>>
>> - ret = drm_atomic_helper_check_plane_state(&plane_state->base,
>> + ret = drm_atomic_helper_check_plane_state(&plane_state->uapi,
>> &crtc_state->uapi,
>> DRM_PLANE_HELPER_NO_SCALING,
>> DRM_PLANE_HELPER_NO_SCALING,
>> @@ -3843,7 +3843,7 @@ i9xx_plane_check(struct intel_crtc_state *crtc_state,
>> if (ret)
>> return ret;
>>
>> - if (!plane_state->base.visible)
>> + if (!plane_state->uapi.visible)
>> return 0;
>>
>> ret = intel_plane_check_src_coordinates(plane_state);
>> @@ -3864,10 +3864,10 @@ static void i9xx_update_plane(struct intel_plane *plane,
>> u32 linear_offset;
>> int x = plane_state->color_plane[0].x;
>> int y = plane_state->color_plane[0].y;
>> - int crtc_x = plane_state->base.dst.x1;
>> - int crtc_y = plane_state->base.dst.y1;
>> - int crtc_w = drm_rect_width(&plane_state->base.dst);
>> - int crtc_h = drm_rect_height(&plane_state->base.dst);
>> + int crtc_x = plane_state->uapi.dst.x1;
>> + int crtc_y = plane_state->uapi.dst.y1;
>> + int crtc_w = drm_rect_width(&plane_state->uapi.dst);
>> + int crtc_h = drm_rect_height(&plane_state->uapi.dst);
>> unsigned long irqflags;
>> u32 dspaddr_offset;
>> u32 dspcntr;
>> @@ -4221,7 +4221,7 @@ u32 skl_plane_ctl(const struct intel_crtc_state *crtc_state,
>> const struct intel_plane_state *plane_state)
>> {
>> struct drm_i915_private *dev_priv =
>> - to_i915(plane_state->base.plane->dev);
>> + to_i915(plane_state->uapi.plane->dev);
>> const struct drm_framebuffer *fb = plane_state->hw.fb;
>> unsigned int rotation = plane_state->hw.rotation;
>> const struct drm_intel_sprite_colorkey *key = &plane_state->ckey;
>> @@ -4277,9 +4277,9 @@ u32 glk_plane_color_ctl(const struct intel_crtc_state *crtc_state,
>> const struct intel_plane_state *plane_state)
>> {
>> struct drm_i915_private *dev_priv =
>> - to_i915(plane_state->base.plane->dev);
>> + to_i915(plane_state->uapi.plane->dev);
>> const struct drm_framebuffer *fb = plane_state->hw.fb;
>> - struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
>> + struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane);
>> u32 plane_color_ctl = 0;
>>
>> plane_color_ctl |= PLANE_COLOR_PLANE_GAMMA_DISABLE;
>> @@ -5623,11 +5623,11 @@ static int skl_update_scaler_plane(struct intel_crtc_state *crtc_state,
>> struct intel_plane_state *plane_state)
>> {
>> struct intel_plane *intel_plane =
>> - to_intel_plane(plane_state->base.plane);
>> + to_intel_plane(plane_state->uapi.plane);
>> struct drm_i915_private *dev_priv = to_i915(intel_plane->base.dev);
>> struct drm_framebuffer *fb = plane_state->hw.fb;
>> int ret;
>> - bool force_detach = !fb || !plane_state->base.visible;
>> + bool force_detach = !fb || !plane_state->uapi.visible;
>> bool need_scaler = false;
>>
>> /* Pre-gen11 and SDR planes always need a scaler for planar formats. */
>> @@ -5638,10 +5638,10 @@ static int skl_update_scaler_plane(struct intel_crtc_state *crtc_state,
>> ret = skl_update_scaler(crtc_state, force_detach,
>> drm_plane_index(&intel_plane->base),
>> &plane_state->scaler_id,
>> - drm_rect_width(&plane_state->base.src) >> 16,
>> - drm_rect_height(&plane_state->base.src) >> 16,
>> - drm_rect_width(&plane_state->base.dst),
>> - drm_rect_height(&plane_state->base.dst),
>> + drm_rect_width(&plane_state->uapi.src) >> 16,
>> + drm_rect_height(&plane_state->uapi.src) >> 16,
>> + drm_rect_width(&plane_state->uapi.dst),
>> + drm_rect_height(&plane_state->uapi.dst),
>> fb ? fb->format : NULL, need_scaler);
>>
>> if (ret || plane_state->scaler_id < 0)
>> @@ -6057,7 +6057,7 @@ static void intel_pre_plane_update(struct intel_crtc_state *old_crtc_state,
>> * So disable underrun reporting before all the planes get disabled.
>> */
>> if (IS_GEN(dev_priv, 2) && old_primary_state->visible &&
>> - (modeset || !new_primary_state->base.visible))
>> + (modeset || !new_primary_state->uapi.visible))
>> intel_set_cpu_fifo_underrun_reporting(dev_priv, crtc->pipe, false);
>> }
>>
>> @@ -6144,7 +6144,7 @@ static void intel_crtc_disable_planes(struct intel_atomic_state *state,
>>
>> intel_disable_plane(plane, new_crtc_state);
>>
>> - if (old_plane_state->base.visible)
>> + if (old_plane_state->uapi.visible)
>> fb_bits |= plane->frontbuffer_bit;
>> }
>>
>> @@ -7153,7 +7153,7 @@ static void intel_crtc_disable_noatomic(struct drm_crtc *crtc,
>> const struct intel_plane_state *plane_state =
>> to_intel_plane_state(plane->base.state);
>>
>> - if (plane_state->base.visible)
>> + if (plane_state->uapi.visible)
>> intel_plane_disable_noatomic(intel_crtc, plane);
>> }
>>
>> @@ -10728,7 +10728,7 @@ static bool haswell_get_pipe_config(struct intel_crtc *crtc,
>> static u32 intel_cursor_base(const struct intel_plane_state *plane_state)
>> {
>> struct drm_i915_private *dev_priv =
>> - to_i915(plane_state->base.plane->dev);
>> + to_i915(plane_state->uapi.plane->dev);
>> const struct drm_framebuffer *fb = plane_state->hw.fb;
>> const struct drm_i915_gem_object *obj = intel_fb_obj(fb);
>> u32 base;
>> @@ -10743,8 +10743,8 @@ static u32 intel_cursor_base(const struct intel_plane_state *plane_state)
>>
>> static u32 intel_cursor_position(const struct intel_plane_state *plane_state)
>> {
>> - int x = plane_state->base.dst.x1;
>> - int y = plane_state->base.dst.y1;
>> + int x = plane_state->uapi.dst.x1;
>> + int y = plane_state->uapi.dst.y1;
>> u32 pos = 0;
>>
>> if (x < 0) {
>> @@ -10765,9 +10765,9 @@ static u32 intel_cursor_position(const struct intel_plane_state *plane_state)
>> static bool intel_cursor_size_ok(const struct intel_plane_state *plane_state)
>> {
>> const struct drm_mode_config *config =
>> - &plane_state->base.plane->dev->mode_config;
>> - int width = drm_rect_width(&plane_state->base.dst);
>> - int height = drm_rect_height(&plane_state->base.dst);
>> + &plane_state->uapi.plane->dev->mode_config;
>> + int width = drm_rect_width(&plane_state->uapi.dst);
>> + int height = drm_rect_height(&plane_state->uapi.dst);
>>
>> return width > 0 && width <= config->cursor_width &&
>> height > 0 && height <= config->cursor_height;
>> @@ -10776,7 +10776,7 @@ static bool intel_cursor_size_ok(const struct intel_plane_state *plane_state)
>> static int intel_cursor_check_surface(struct intel_plane_state *plane_state)
>> {
>> struct drm_i915_private *dev_priv =
>> - to_i915(plane_state->base.plane->dev);
>> + to_i915(plane_state->uapi.plane->dev);
>> unsigned int rotation = plane_state->hw.rotation;
>> int src_x, src_y;
>> u32 offset;
>> @@ -10786,11 +10786,11 @@ static int intel_cursor_check_surface(struct intel_plane_state *plane_state)
>> if (ret)
>> return ret;
>>
>> - if (!plane_state->base.visible)
>> + if (!plane_state->uapi.visible)
>> return 0;
>>
>> - src_x = plane_state->base.src.x1 >> 16;
>> - src_y = plane_state->base.src.y1 >> 16;
>> + src_x = plane_state->uapi.src.x1 >> 16;
>> + src_y = plane_state->uapi.src.y1 >> 16;
>>
>> intel_add_fb_offsets(&src_x, &src_y, plane_state, 0);
>> offset = intel_plane_compute_aligned_offset(&src_x, &src_y,
>> @@ -10805,14 +10805,14 @@ static int intel_cursor_check_surface(struct intel_plane_state *plane_state)
>> * Put the final coordinates back so that the src
>> * coordinate checks will see the right values.
>> */
>> - drm_rect_translate_to(&plane_state->base.src,
>> + drm_rect_translate_to(&plane_state->uapi.src,
>> src_x << 16, src_y << 16);
>>
>> /* ILK+ do this automagically in hardware */
>> if (HAS_GMCH(dev_priv) && rotation & DRM_MODE_ROTATE_180) {
>> const struct drm_framebuffer *fb = plane_state->hw.fb;
>> - int src_w = drm_rect_width(&plane_state->base.src) >> 16;
>> - int src_h = drm_rect_height(&plane_state->base.src) >> 16;
>> + int src_w = drm_rect_width(&plane_state->uapi.src) >> 16;
>> + int src_h = drm_rect_height(&plane_state->uapi.src) >> 16;
>>
>> offset += (src_h * src_w - 1) * fb->format->cpp[0];
>> }
>> @@ -10835,7 +10835,7 @@ static int intel_check_cursor(struct intel_crtc_state *crtc_state,
>> return -EINVAL;
>> }
>>
>> - ret = drm_atomic_helper_check_plane_state(&plane_state->base,
>> + ret = drm_atomic_helper_check_plane_state(&plane_state->uapi,
>> &crtc_state->uapi,
>> DRM_PLANE_HELPER_NO_SCALING,
>> DRM_PLANE_HELPER_NO_SCALING,
>> @@ -10844,14 +10844,14 @@ static int intel_check_cursor(struct intel_crtc_state *crtc_state,
>> return ret;
>>
>> /* Use the unclipped src/dst rectangles, which we program to hw */
>> - plane_state->base.src = drm_plane_state_src(&plane_state->base);
>> - plane_state->base.dst = drm_plane_state_dest(&plane_state->base);
>> + plane_state->uapi.src = drm_plane_state_src(&plane_state->uapi);
>> + plane_state->uapi.dst = drm_plane_state_dest(&plane_state->uapi);
>>
>> ret = intel_cursor_check_surface(plane_state);
>> if (ret)
>> return ret;
>>
>> - if (!plane_state->base.visible)
>> + if (!plane_state->uapi.visible)
>> return 0;
>>
>> ret = intel_plane_check_src_coordinates(plane_state);
>> @@ -10889,7 +10889,7 @@ static u32 i845_cursor_ctl(const struct intel_crtc_state *crtc_state,
>>
>> static bool i845_cursor_size_ok(const struct intel_plane_state *plane_state)
>> {
>> - int width = drm_rect_width(&plane_state->base.dst);
>> + int width = drm_rect_width(&plane_state->uapi.dst);
>>
>> /*
>> * 845g/865g are only limited by the width of their cursors,
>> @@ -10915,12 +10915,12 @@ static int i845_check_cursor(struct intel_crtc_state *crtc_state,
>> /* Check for which cursor types we support */
>> if (!i845_cursor_size_ok(plane_state)) {
>> DRM_DEBUG("Cursor dimension %dx%d not supported\n",
>> - drm_rect_width(&plane_state->base.dst),
>> - drm_rect_height(&plane_state->base.dst));
>> + drm_rect_width(&plane_state->uapi.dst),
>> + drm_rect_height(&plane_state->uapi.dst));
>> return -EINVAL;
>> }
>>
>> - WARN_ON(plane_state->base.visible &&
>> + WARN_ON(plane_state->uapi.visible &&
>> plane_state->color_plane[0].stride != fb->pitches[0]);
>>
>> switch (fb->pitches[0]) {
>> @@ -10948,9 +10948,9 @@ static void i845_update_cursor(struct intel_plane *plane,
>> u32 cntl = 0, base = 0, pos = 0, size = 0;
>> unsigned long irqflags;
>>
>> - if (plane_state && plane_state->base.visible) {
>> - unsigned int width = drm_rect_width(&plane_state->base.src);
>> - unsigned int height = drm_rect_height(&plane_state->base.dst);
>> + if (plane_state && plane_state->uapi.visible) {
>> + unsigned int width = drm_rect_width(&plane_state->uapi.src);
>> + unsigned int height = drm_rect_height(&plane_state->uapi.dst);
>>
>> cntl = plane_state->ctl |
>> i845_cursor_ctl_crtc(crtc_state);
>> @@ -11046,13 +11046,13 @@ static u32 i9xx_cursor_ctl(const struct intel_crtc_state *crtc_state,
>> const struct intel_plane_state *plane_state)
>> {
>> struct drm_i915_private *dev_priv =
>> - to_i915(plane_state->base.plane->dev);
>> + to_i915(plane_state->uapi.plane->dev);
>> u32 cntl = 0;
>>
>> if (IS_GEN(dev_priv, 6) || IS_IVYBRIDGE(dev_priv))
>> cntl |= MCURSOR_TRICKLE_FEED_DISABLE;
>>
>> - switch (drm_rect_width(&plane_state->base.dst)) {
>> + switch (drm_rect_width(&plane_state->uapi.dst)) {
>> case 64:
>> cntl |= MCURSOR_MODE_64_ARGB_AX;
>> break;
>> @@ -11063,7 +11063,7 @@ static u32 i9xx_cursor_ctl(const struct intel_crtc_state *crtc_state,
>> cntl |= MCURSOR_MODE_256_ARGB_AX;
>> break;
>> default:
>> - MISSING_CASE(drm_rect_width(&plane_state->base.dst));
>> + MISSING_CASE(drm_rect_width(&plane_state->uapi.dst));
>> return 0;
>> }
>>
>> @@ -11076,9 +11076,9 @@ static u32 i9xx_cursor_ctl(const struct intel_crtc_state *crtc_state,
>> static bool i9xx_cursor_size_ok(const struct intel_plane_state *plane_state)
>> {
>> struct drm_i915_private *dev_priv =
>> - to_i915(plane_state->base.plane->dev);
>> - int width = drm_rect_width(&plane_state->base.dst);
>> - int height = drm_rect_height(&plane_state->base.dst);
>> + to_i915(plane_state->uapi.plane->dev);
>> + int width = drm_rect_width(&plane_state->uapi.dst);
>> + int height = drm_rect_height(&plane_state->uapi.dst);
>>
>> if (!intel_cursor_size_ok(plane_state))
>> return false;
>> @@ -11114,7 +11114,7 @@ static bool i9xx_cursor_size_ok(const struct intel_plane_state *plane_state)
>> static int i9xx_check_cursor(struct intel_crtc_state *crtc_state,
>> struct intel_plane_state *plane_state)
>> {
>> - struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
>> + struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane);
>> struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
>> const struct drm_framebuffer *fb = plane_state->hw.fb;
>> enum pipe pipe = plane->pipe;
>> @@ -11131,19 +11131,19 @@ static int i9xx_check_cursor(struct intel_crtc_state *crtc_state,
>> /* Check for which cursor types we support */
>> if (!i9xx_cursor_size_ok(plane_state)) {
>> DRM_DEBUG("Cursor dimension %dx%d not supported\n",
>> - drm_rect_width(&plane_state->base.dst),
>> - drm_rect_height(&plane_state->base.dst));
>> + drm_rect_width(&plane_state->uapi.dst),
>> + drm_rect_height(&plane_state->uapi.dst));
>> return -EINVAL;
>> }
>>
>> - WARN_ON(plane_state->base.visible &&
>> + WARN_ON(plane_state->uapi.visible &&
>> plane_state->color_plane[0].stride != fb->pitches[0]);
>>
>> if (fb->pitches[0] !=
>> - drm_rect_width(&plane_state->base.dst) * fb->format->cpp[0]) {
>> + drm_rect_width(&plane_state->uapi.dst) * fb->format->cpp[0]) {
>> DRM_DEBUG_KMS("Invalid cursor stride (%u) (cursor width %d)\n",
>> fb->pitches[0],
>> - drm_rect_width(&plane_state->base.dst));
>> + drm_rect_width(&plane_state->uapi.dst));
>> return -EINVAL;
>> }
>>
>> @@ -11158,7 +11158,7 @@ static int i9xx_check_cursor(struct intel_crtc_state *crtc_state,
>> * Refuse the put the cursor into that compromised position.
>> */
>> if (IS_CHERRYVIEW(dev_priv) && pipe == PIPE_C &&
>> - plane_state->base.visible && plane_state->base.dst.x1 < 0) {
>> + plane_state->uapi.visible && plane_state->uapi.dst.x1 < 0) {
>> DRM_DEBUG_KMS("CHV cursor C not allowed to straddle the left screen edge\n");
>> return -EINVAL;
>> }
>> @@ -11177,9 +11177,9 @@ static void i9xx_update_cursor(struct intel_plane *plane,
>> u32 cntl = 0, base = 0, pos = 0, fbc_ctl = 0;
>> unsigned long irqflags;
>>
>> - if (plane_state && plane_state->base.visible) {
>> - unsigned width = drm_rect_width(&plane_state->base.dst);
>> - unsigned height = drm_rect_height(&plane_state->base.dst);
>> + if (plane_state && plane_state->uapi.visible) {
>> + unsigned width = drm_rect_width(&plane_state->uapi.dst);
>> + unsigned height = drm_rect_height(&plane_state->uapi.dst);
>>
>> cntl = plane_state->ctl |
>> i9xx_cursor_ctl_crtc(crtc_state);
>> @@ -11717,7 +11717,7 @@ static bool intel_wm_need_update(const struct intel_plane_state *cur,
>> struct intel_plane_state *new)
>> {
>> /* Update watermarks on tiling or size changes. */
>> - if (new->base.visible != cur->base.visible)
>> + if (new->uapi.visible != cur->uapi.visible)
>> return true;
>>
>> if (!cur->hw.fb || !new->hw.fb)
>> @@ -11725,10 +11725,10 @@ static bool intel_wm_need_update(const struct intel_plane_state *cur,
>>
>> if (cur->hw.fb->modifier != new->hw.fb->modifier ||
>> cur->hw.rotation != new->hw.rotation ||
>> - drm_rect_width(&new->base.src) != drm_rect_width(&cur->base.src) ||
>> - drm_rect_height(&new->base.src) != drm_rect_height(&cur->base.src) ||
>> - drm_rect_width(&new->base.dst) != drm_rect_width(&cur->base.dst) ||
>> - drm_rect_height(&new->base.dst) != drm_rect_height(&cur->base.dst))
>> + drm_rect_width(&new->uapi.src) != drm_rect_width(&cur->uapi.src) ||
>> + drm_rect_height(&new->uapi.src) != drm_rect_height(&cur->uapi.src) ||
>> + drm_rect_width(&new->uapi.dst) != drm_rect_width(&cur->uapi.dst) ||
>> + drm_rect_height(&new->uapi.dst) != drm_rect_height(&cur->uapi.dst))
>> return true;
>>
>> return false;
>> @@ -11736,10 +11736,10 @@ static bool intel_wm_need_update(const struct intel_plane_state *cur,
>>
>> static bool needs_scaling(const struct intel_plane_state *state)
>> {
>> - int src_w = drm_rect_width(&state->base.src) >> 16;
>> - int src_h = drm_rect_height(&state->base.src) >> 16;
>> - int dst_w = drm_rect_width(&state->base.dst);
>> - int dst_h = drm_rect_height(&state->base.dst);
>> + int src_w = drm_rect_width(&state->uapi.src) >> 16;
>> + int src_h = drm_rect_height(&state->uapi.src) >> 16;
>> + int dst_w = drm_rect_width(&state->uapi.dst);
>> + int dst_h = drm_rect_height(&state->uapi.dst);
>>
>> return (src_w != dst_w || src_h != dst_h);
>> }
>> @@ -11750,7 +11750,7 @@ int intel_plane_atomic_calc_changes(const struct intel_crtc_state *old_crtc_stat
>> struct intel_plane_state *plane_state)
>> {
>> struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc);
>> - struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
>> + struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane);
>> struct drm_i915_private *dev_priv = to_i915(crtc->base.dev);
>> bool mode_changed = needs_modeset(crtc_state);
>> bool was_crtc_enabled = old_crtc_state->hw.active;
>> @@ -11764,8 +11764,8 @@ int intel_plane_atomic_calc_changes(const struct intel_crtc_state *old_crtc_stat
>> return ret;
>> }
>>
>> - was_visible = old_plane_state->base.visible;
>> - visible = plane_state->base.visible;
>> + was_visible = old_plane_state->uapi.visible;
>> + visible = plane_state->uapi.visible;
>>
>> if (!was_crtc_enabled && WARN_ON(was_visible))
>> was_visible = false;
>> @@ -11781,7 +11781,7 @@ int intel_plane_atomic_calc_changes(const struct intel_crtc_state *old_crtc_stat
>> * only combine the results from all planes in the current place?
>> */
>> if (!is_crtc_enabled) {
>> - plane_state->base.visible = visible = false;
>> + plane_state->uapi.visible = visible = false;
>> crtc_state->active_planes &= ~BIT(plane->id);
>> crtc_state->data_rate[plane->id] = 0;
>> crtc_state->min_cdclk[plane->id] = 0;
>> @@ -11941,7 +11941,7 @@ static int icl_check_nv12_planes(struct intel_crtc_state *crtc_state)
>> continue;
>>
>> plane_state->planar_linked_plane = NULL;
>> - if (plane_state->planar_slave && !plane_state->base.visible) {
>> + if (plane_state->planar_slave && !plane_state->uapi.visible) {
>> crtc_state->active_planes &= ~BIT(plane->id);
>> crtc_state->update_planes |= BIT(plane->id);
>> }
>> @@ -12355,14 +12355,14 @@ static const char *output_formats(enum intel_output_format format)
>>
>> static void intel_dump_plane_state(const struct intel_plane_state *plane_state)
>> {
>> - struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
>> + struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane);
>> const struct drm_framebuffer *fb = plane_state->hw.fb;
>> struct drm_format_name_buf format_name;
>>
>> if (!fb) {
>> DRM_DEBUG_KMS("[PLANE:%d:%s] fb: [NOFB], visible: %s\n",
>> plane->base.base.id, plane->base.name,
>> - yesno(plane_state->base.visible));
>> + yesno(plane_state->uapi.visible));
>> return;
>> }
>>
>> @@ -12370,13 +12370,13 @@ static void intel_dump_plane_state(const struct intel_plane_state *plane_state)
>> plane->base.base.id, plane->base.name,
>> fb->base.id, fb->width, fb->height,
>> drm_get_format_name(fb->format->format, &format_name),
>> - yesno(plane_state->base.visible));
>> + yesno(plane_state->uapi.visible));
>> DRM_DEBUG_KMS("\trotation: 0x%x, scaler: %d\n",
>> plane_state->hw.rotation, plane_state->scaler_id);
>> - if (plane_state->base.visible)
>> + if (plane_state->uapi.visible)
>> DRM_DEBUG_KMS("\tsrc: " DRM_RECT_FP_FMT " dst: " DRM_RECT_FMT "\n",
>> - DRM_RECT_FP_ARG(&plane_state->base.src),
>> - DRM_RECT_ARG(&plane_state->base.dst));
>> + DRM_RECT_FP_ARG(&plane_state->uapi.src),
>> + DRM_RECT_ARG(&plane_state->uapi.dst));
>> }
>>
>> static void intel_dump_pipe_config(const struct intel_crtc_state *pipe_config,
>> @@ -13582,7 +13582,7 @@ intel_verify_planes(struct intel_atomic_state *state)
>> for_each_new_intel_plane_in_state(state, plane,
>> plane_state, i)
>> assert_plane(plane, plane_state->planar_slave ||
>> - plane_state->base.visible);
>> + plane_state->uapi.visible);
>> }
>>
>> static void
>> @@ -15044,7 +15044,7 @@ static void add_rps_boost_after_vblank(struct drm_crtc *crtc,
>>
>> static int intel_plane_pin_fb(struct intel_plane_state *plane_state)
>> {
>> - struct intel_plane *plane = to_intel_plane(plane_state->base.plane);
>> + struct intel_plane *plane = to_intel_plane(plane_state->uapi.plane);
>> struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
>> struct drm_framebuffer *fb = plane_state->hw.fb;
>> struct i915_vma *vma;
>> @@ -15109,7 +15109,7 @@ intel_prepare_plane_fb(struct drm_plane *plane,
>> struct intel_plane_state *new_plane_state =
>> to_intel_plane_state(_new_plane_state);
>> struct intel_atomic_state *intel_state =
>> - to_intel_atomic_state(new_plane_state->base.state);
>> + to_intel_atomic_state(new_plane_state->uapi.state);
>> struct drm_i915_private *dev_priv = to_i915(plane->dev);
>> struct drm_framebuffer *fb = new_plane_state->hw.fb;
>> struct drm_i915_gem_object *obj = intel_fb_obj(fb);
>> @@ -15142,9 +15142,9 @@ intel_prepare_plane_fb(struct drm_plane *plane,
>> }
>> }
>>
>> - if (new_plane_state->base.fence) { /* explicit fencing */
>> + if (new_plane_state->uapi.fence) { /* explicit fencing */
>> ret = i915_sw_fence_await_dma_fence(&intel_state->commit_ready,
>> - new_plane_state->base.fence,
>> + new_plane_state->uapi.fence,
>> I915_FENCE_TIMEOUT,
>> GFP_KERNEL);
>> if (ret < 0)
>> @@ -15167,7 +15167,7 @@ intel_prepare_plane_fb(struct drm_plane *plane,
>> fb_obj_bump_render_priority(obj);
>> intel_frontbuffer_flush(obj->frontbuffer, ORIGIN_DIRTYFB);
>>
>> - if (!new_plane_state->base.fence) { /* implicit fencing */
>> + if (!new_plane_state->uapi.fence) { /* implicit fencing */
>> struct dma_fence *fence;
>>
>> ret = i915_sw_fence_await_reservation(&intel_state->commit_ready,
>> @@ -15185,7 +15185,7 @@ intel_prepare_plane_fb(struct drm_plane *plane,
>> }
>> } else {
>> add_rps_boost_after_vblank(new_plane_state->hw.crtc,
>> - new_plane_state->base.fence);
>> + new_plane_state->uapi.fence);
>> }
>>
>> /*
>> @@ -15218,7 +15218,7 @@ intel_cleanup_plane_fb(struct drm_plane *plane,
>> struct intel_plane_state *old_plane_state =
>> to_intel_plane_state(_old_plane_state);
>> struct intel_atomic_state *intel_state =
>> - to_intel_atomic_state(old_plane_state->base.state);
>> + to_intel_atomic_state(old_plane_state->uapi.state);
>> struct drm_i915_private *dev_priv = to_i915(plane->dev);
>>
>> if (intel_state->rps_interactive) {
>> @@ -15350,8 +15350,8 @@ intel_legacy_cursor_update(struct drm_plane *_plane,
>> * the plane. This prevents our async update's changes from getting
>> * overridden by a previous synchronous update's state.
>> */
>> - if (old_plane_state->base.commit &&
>> - !try_wait_for_completion(&old_plane_state->base.commit->hw_done))
>> + if (old_plane_state->uapi.commit &&
>> + !try_wait_for_completion(&old_plane_state->uapi.commit->hw_done))
>> goto slow;
>>
>> /*
>> @@ -15360,10 +15360,10 @@ intel_legacy_cursor_update(struct drm_plane *_plane,
>> * in the fastpath.
>> */
>> if (old_plane_state->uapi.crtc != &crtc->base ||
>> - old_plane_state->base.src_w != src_w ||
>> - old_plane_state->base.src_h != src_h ||
>> - old_plane_state->base.crtc_w != crtc_w ||
>> - old_plane_state->base.crtc_h != crtc_h ||
>> + old_plane_state->uapi.src_w != src_w ||
>> + old_plane_state->uapi.src_h != src_h ||
>> + old_plane_state->uapi.crtc_w != crtc_w ||
>> + old_plane_state->uapi.crtc_h != crtc_h ||
> These should have maybe been in the patch that converted the
> uapi.fb and uapi.crtc already.
>
> Not sure how we're going to make this stuff work with bigjoiner, but
> let's cross that bridge when we come to it.
>
> Rest of the patch lgtm.
Yeah, can fold to the manual patch.
More information about the Intel-gfx
mailing list