Skip to content

Commit 37418bf

Browse files
committed
drm: Use state helper instead of the plane state pointer
Many drivers reference the plane->state pointer in order to get the current plane state in their atomic_update or atomic_disable hooks, which would be the new plane state in the global atomic state since _swap_state happened when those hooks are run. Use the drm_atomic_get_new_plane_state helper to get that state to make it more obvious. This was made using the coccinelle script below: @ plane_atomic_func @ identifier helpers; identifier func; @@ ( static const struct drm_plane_helper_funcs helpers = { ..., .atomic_disable = func, ..., }; | static const struct drm_plane_helper_funcs helpers = { ..., .atomic_update = func, ..., }; ) @ adds_new_state @ identifier plane_atomic_func.func; identifier plane, state; identifier new_state; @@ func(struct drm_plane *plane, struct drm_atomic_state *state) { ... - struct drm_plane_state *new_state = plane->state; + struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state, plane); ... } @ include depends on adds_new_state @ @@ #include <drm/drm_atomic.h> @ no_include depends on !include && adds_new_state @ @@ + #include <drm/drm_atomic.h> #include <drm/...> Reviewed-by: Ville Syrjälä <[email protected]> Signed-off-by: Maxime Ripard <[email protected]> Acked-by: Thomas Zimmermann <[email protected]> Link: https://lore.kernel.org/r/[email protected]
1 parent 977697e commit 37418bf

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+103
-53
lines changed

drivers/gpu/drm/arc/arcpgu_crtc.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
* Copyright (C) 2016 Synopsys, Inc. (www.synopsys.com)
66
*/
77

8+
#include <drm/drm_atomic.h>
89
#include <drm/drm_atomic_helper.h>
910
#include <drm/drm_device.h>
1011
#include <drm/drm_fb_cma_helper.h>
@@ -147,7 +148,8 @@ static const struct drm_crtc_helper_funcs arc_pgu_crtc_helper_funcs = {
147148
static void arc_pgu_plane_atomic_update(struct drm_plane *plane,
148149
struct drm_atomic_state *state)
149150
{
150-
struct drm_plane_state *new_plane_state = plane->state;
151+
struct drm_plane_state *new_plane_state = drm_atomic_get_new_plane_state(state,
152+
plane);
151153
struct arcpgu_drm_private *arcpgu;
152154
struct drm_gem_cma_object *gem;
153155

drivers/gpu/drm/arm/hdlcd_crtc.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -262,7 +262,8 @@ static int hdlcd_plane_atomic_check(struct drm_plane *plane,
262262
static void hdlcd_plane_atomic_update(struct drm_plane *plane,
263263
struct drm_atomic_state *state)
264264
{
265-
struct drm_plane_state *new_plane_state = plane->state;
265+
struct drm_plane_state *new_plane_state = drm_atomic_get_new_plane_state(state,
266+
plane);
266267
struct drm_framebuffer *fb = new_plane_state->fb;
267268
struct hdlcd_drm_private *hdlcd;
268269
u32 dest_h;

drivers/gpu/drm/arm/malidp_planes.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -797,7 +797,8 @@ static void malidp_de_plane_update(struct drm_plane *plane,
797797
plane);
798798
struct malidp_plane *mp;
799799
struct malidp_plane_state *ms = to_malidp_plane_state(plane->state);
800-
struct drm_plane_state *new_state = plane->state;
800+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
801+
plane);
801802
u16 pixel_alpha = new_state->pixel_blend_mode;
802803
u8 plane_alpha = new_state->alpha >> 8;
803804
u32 src_w, src_h, dest_w, dest_h, val;

drivers/gpu/drm/armada/armada_overlay.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,8 @@ static void armada_drm_overlay_plane_atomic_update(struct drm_plane *plane,
7070
{
7171
struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state,
7272
plane);
73-
struct drm_plane_state *new_state = plane->state;
73+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
74+
plane);
7475
struct armada_crtc *dcrtc;
7576
struct armada_regs *regs;
7677
unsigned int idx;

drivers/gpu/drm/armada/armada_plane.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,8 @@ static void armada_drm_primary_plane_atomic_update(struct drm_plane *plane,
165165
{
166166
struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state,
167167
plane);
168-
struct drm_plane_state *new_state = plane->state;
168+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
169+
plane);
169170
struct armada_crtc *dcrtc;
170171
struct armada_regs *regs;
171172
u32 cfg, cfg_mask, val;

drivers/gpu/drm/ast/ast_mode.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -575,7 +575,8 @@ ast_primary_plane_helper_atomic_update(struct drm_plane *plane,
575575
plane);
576576
struct drm_device *dev = plane->dev;
577577
struct ast_private *ast = to_ast_private(dev);
578-
struct drm_plane_state *new_state = plane->state;
578+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
579+
plane);
579580
struct drm_gem_vram_object *gbo;
580581
s64 gpu_addr;
581582
struct drm_framebuffer *fb = new_state->fb;
@@ -797,7 +798,8 @@ ast_cursor_plane_helper_atomic_update(struct drm_plane *plane,
797798
struct ast_cursor_plane *ast_cursor_plane = to_ast_cursor_plane(plane);
798799
struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state,
799800
plane);
800-
struct drm_plane_state *new_state = plane->state;
801+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
802+
plane);
801803
struct drm_shadow_plane_state *shadow_plane_state = to_drm_shadow_plane_state(new_state);
802804
struct drm_framebuffer *fb = new_state->fb;
803805
struct ast_private *ast = to_ast_private(plane->dev);

drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -733,7 +733,8 @@ static void atmel_hlcdc_plane_atomic_disable(struct drm_plane *p,
733733
static void atmel_hlcdc_plane_atomic_update(struct drm_plane *p,
734734
struct drm_atomic_state *state)
735735
{
736-
struct drm_plane_state *new_s = p->state;
736+
struct drm_plane_state *new_s = drm_atomic_get_new_plane_state(state,
737+
p);
737738
struct atmel_hlcdc_plane *plane = drm_plane_to_atmel_hlcdc_plane(p);
738739
struct atmel_hlcdc_plane_state *hstate =
739740
drm_plane_state_to_atmel_hlcdc_plane_state(new_s);

drivers/gpu/drm/exynos/exynos_drm_plane.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,8 @@ static int exynos_plane_atomic_check(struct drm_plane *plane,
254254
static void exynos_plane_atomic_update(struct drm_plane *plane,
255255
struct drm_atomic_state *state)
256256
{
257-
struct drm_plane_state *new_state = plane->state;
257+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
258+
plane);
258259
struct exynos_drm_crtc *exynos_crtc = to_exynos_crtc(new_state->crtc);
259260
struct exynos_drm_plane *exynos_plane = to_exynos_plane(plane);
260261

drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,8 @@ static void fsl_dcu_drm_plane_atomic_update(struct drm_plane *plane,
8080

8181
{
8282
struct fsl_dcu_drm_device *fsl_dev = plane->dev->dev_private;
83-
struct drm_plane_state *new_state = plane->state;
83+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
84+
plane);
8485
struct drm_framebuffer *fb = plane->state->fb;
8586
struct drm_gem_cma_object *gem;
8687
unsigned int alpha = DCU_LAYER_AB_NONE, bpp;

drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,8 @@ static int hibmc_plane_atomic_check(struct drm_plane *plane,
101101
static void hibmc_plane_atomic_update(struct drm_plane *plane,
102102
struct drm_atomic_state *state)
103103
{
104-
struct drm_plane_state *new_state = plane->state;
104+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
105+
plane);
105106
u32 reg;
106107
s64 gpu_addr = 0;
107108
u32 line_l;

drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -806,7 +806,8 @@ static int ade_plane_atomic_check(struct drm_plane *plane,
806806
static void ade_plane_atomic_update(struct drm_plane *plane,
807807
struct drm_atomic_state *state)
808808
{
809-
struct drm_plane_state *new_state = plane->state;
809+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
810+
plane);
810811
struct kirin_plane *kplane = to_kirin_plane(plane);
811812

812813
ade_update_channel(kplane, new_state->fb, new_state->crtc_x,

drivers/gpu/drm/imx/dcss/dcss-plane.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -268,7 +268,8 @@ static void dcss_plane_atomic_update(struct drm_plane *plane,
268268
{
269269
struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state,
270270
plane);
271-
struct drm_plane_state *new_state = plane->state;
271+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
272+
plane);
272273
struct dcss_plane *dcss_plane = to_dcss_plane(plane);
273274
struct dcss_dev *dcss = plane->dev->dev_private;
274275
struct drm_framebuffer *fb = new_state->fb;

drivers/gpu/drm/imx/ipuv3-plane.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -544,7 +544,8 @@ static void ipu_plane_atomic_update(struct drm_plane *plane,
544544
struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state,
545545
plane);
546546
struct ipu_plane *ipu_plane = to_ipu_plane(plane);
547-
struct drm_plane_state *new_state = plane->state;
547+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
548+
plane);
548549
struct ipu_plane_state *ipu_state = to_ipu_plane_state(new_state);
549550
struct drm_crtc_state *crtc_state = new_state->crtc->state;
550551
struct drm_framebuffer *fb = new_state->fb;

drivers/gpu/drm/ingenic/ingenic-drm-drv.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -545,7 +545,8 @@ static void ingenic_drm_plane_atomic_update(struct drm_plane *plane,
545545
struct drm_atomic_state *state)
546546
{
547547
struct ingenic_drm *priv = drm_device_get_priv(plane->dev);
548-
struct drm_plane_state *newstate = plane->state;
548+
struct drm_plane_state *newstate = drm_atomic_get_new_plane_state(state,
549+
plane);
549550
struct drm_crtc_state *crtc_state;
550551
struct ingenic_dma_hwdesc *hwdesc;
551552
unsigned int width, height, cpp, offset;

drivers/gpu/drm/ingenic/ingenic-ipu.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -285,7 +285,8 @@ static void ingenic_ipu_plane_atomic_update(struct drm_plane *plane,
285285
struct drm_atomic_state *state)
286286
{
287287
struct ingenic_ipu *ipu = plane_to_ingenic_ipu(plane);
288-
struct drm_plane_state *newstate = plane->state;
288+
struct drm_plane_state *newstate = drm_atomic_get_new_plane_state(state,
289+
plane);
289290
const struct drm_format_info *finfo;
290291
u32 ctrl, stride = 0, coef_index = 0, format = 0;
291292
bool needs_modeset, upscaling_w, upscaling_h;

drivers/gpu/drm/kmb/kmb_plane.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -282,7 +282,8 @@ static void kmb_plane_atomic_update(struct drm_plane *plane,
282282
{
283283
struct drm_plane_state *old_plane_state = drm_atomic_get_old_plane_state(state,
284284
plane);
285-
struct drm_plane_state *new_plane_state = plane->state;
285+
struct drm_plane_state *new_plane_state = drm_atomic_get_new_plane_state(state,
286+
plane);
286287
struct drm_framebuffer *fb;
287288
struct kmb_drm_private *kmb;
288289
unsigned int width;

drivers/gpu/drm/mediatek/mtk_drm_plane.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,8 @@ static int mtk_plane_atomic_check(struct drm_plane *plane,
175175
static void mtk_plane_atomic_disable(struct drm_plane *plane,
176176
struct drm_atomic_state *state)
177177
{
178-
struct drm_plane_state *new_state = plane->state;
178+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
179+
plane);
179180
struct mtk_plane_state *mtk_plane_state = to_mtk_plane_state(new_state);
180181
mtk_plane_state->pending.enable = false;
181182
wmb(); /* Make sure the above parameter is set before update */
@@ -185,7 +186,8 @@ static void mtk_plane_atomic_disable(struct drm_plane *plane,
185186
static void mtk_plane_atomic_update(struct drm_plane *plane,
186187
struct drm_atomic_state *state)
187188
{
188-
struct drm_plane_state *new_state = plane->state;
189+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
190+
plane);
189191
struct mtk_plane_state *mtk_plane_state = to_mtk_plane_state(new_state);
190192
struct drm_crtc *crtc = new_state->crtc;
191193
struct drm_framebuffer *fb = new_state->fb;

drivers/gpu/drm/meson/meson_overlay.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -471,7 +471,8 @@ static void meson_overlay_atomic_update(struct drm_plane *plane,
471471
struct drm_atomic_state *state)
472472
{
473473
struct meson_overlay *meson_overlay = to_meson_overlay(plane);
474-
struct drm_plane_state *new_state = plane->state;
474+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
475+
plane);
475476
struct drm_framebuffer *fb = new_state->fb;
476477
struct meson_drm *priv = meson_overlay->priv;
477478
struct drm_gem_cma_object *gem;

drivers/gpu/drm/meson/meson_plane.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,8 @@ static void meson_plane_atomic_update(struct drm_plane *plane,
133133
struct drm_atomic_state *state)
134134
{
135135
struct meson_plane *meson_plane = to_meson_plane(plane);
136-
struct drm_plane_state *new_state = plane->state;
136+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
137+
plane);
137138
struct drm_rect dest = drm_plane_state_dest(new_state);
138139
struct meson_drm *priv = meson_plane->priv;
139140
struct drm_framebuffer *fb = new_state->fb;

drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1244,7 +1244,8 @@ static void dpu_plane_atomic_update(struct drm_plane *plane,
12441244
struct drm_atomic_state *state)
12451245
{
12461246
struct dpu_plane *pdpu = to_dpu_plane(plane);
1247-
struct drm_plane_state *new_state = plane->state;
1247+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
1248+
plane);
12481249

12491250
pdpu->is_error = false;
12501251

drivers/gpu/drm/msm/disp/mdp4/mdp4_plane.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
* Author: Rob Clark <[email protected]>
55
*/
66

7+
#include <drm/drm_atomic.h>
78
#include <drm/drm_damage_helper.h>
89
#include <drm/drm_fourcc.h>
910

@@ -114,7 +115,8 @@ static int mdp4_plane_atomic_check(struct drm_plane *plane,
114115
static void mdp4_plane_atomic_update(struct drm_plane *plane,
115116
struct drm_atomic_state *state)
116117
{
117-
struct drm_plane_state *new_state = plane->state;
118+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
119+
plane);
118120
int ret;
119121

120122
ret = mdp4_plane_mode_set(plane,

drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -428,7 +428,8 @@ static int mdp5_plane_atomic_check(struct drm_plane *plane,
428428
static void mdp5_plane_atomic_update(struct drm_plane *plane,
429429
struct drm_atomic_state *state)
430430
{
431-
struct drm_plane_state *new_state = plane->state;
431+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
432+
plane);
432433

433434
DBG("%s: update", plane->name);
434435

drivers/gpu/drm/mxsfb/mxsfb_kms.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -435,7 +435,8 @@ static void mxsfb_plane_overlay_atomic_update(struct drm_plane *plane,
435435
struct drm_plane_state *old_pstate = drm_atomic_get_old_plane_state(state,
436436
plane);
437437
struct mxsfb_drm_private *mxsfb = to_mxsfb_drm_private(plane->dev);
438-
struct drm_plane_state *new_pstate = plane->state;
438+
struct drm_plane_state *new_pstate = drm_atomic_get_new_plane_state(state,
439+
plane);
439440
dma_addr_t paddr;
440441
u32 ctrl;
441442

drivers/gpu/drm/omapdrm/omap_plane.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,8 @@ static void omap_plane_atomic_update(struct drm_plane *plane,
4444
{
4545
struct omap_drm_private *priv = plane->dev->dev_private;
4646
struct omap_plane *omap_plane = to_omap_plane(plane);
47-
struct drm_plane_state *new_state = plane->state;
47+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
48+
plane);
4849
struct omap_overlay_info info;
4950
int ret;
5051

@@ -89,7 +90,8 @@ static void omap_plane_atomic_update(struct drm_plane *plane,
8990
static void omap_plane_atomic_disable(struct drm_plane *plane,
9091
struct drm_atomic_state *state)
9192
{
92-
struct drm_plane_state *new_state = plane->state;
93+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
94+
plane);
9395
struct omap_drm_private *priv = plane->dev->dev_private;
9496
struct omap_plane *omap_plane = to_omap_plane(plane);
9597

drivers/gpu/drm/qxl/qxl_display.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -634,7 +634,8 @@ static void qxl_free_cursor(struct qxl_bo *cursor_bo)
634634
static void qxl_primary_atomic_update(struct drm_plane *plane,
635635
struct drm_atomic_state *state)
636636
{
637-
struct drm_plane_state *new_state = plane->state;
637+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
638+
plane);
638639
struct qxl_device *qdev = to_qxl(plane->dev);
639640
struct qxl_bo *bo = gem_to_qxl_bo(new_state->fb->obj[0]);
640641
struct qxl_bo *primary;
@@ -687,7 +688,8 @@ static void qxl_cursor_atomic_update(struct drm_plane *plane,
687688
{
688689
struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state,
689690
plane);
690-
struct drm_plane_state *new_state = plane->state;
691+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
692+
plane);
691693
struct qxl_device *qdev = to_qxl(plane->dev);
692694
struct drm_framebuffer *fb = new_state->fb;
693695

drivers/gpu/drm/rcar-du/rcar_du_plane.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -621,7 +621,7 @@ static void rcar_du_plane_atomic_update(struct drm_plane *plane,
621621
struct drm_atomic_state *state)
622622
{
623623
struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state, plane);
624-
struct drm_plane_state *new_state = plane->state;
624+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state, plane);
625625
struct rcar_du_plane *rplane = to_rcar_plane(plane);
626626
struct rcar_du_plane_state *old_rstate;
627627
struct rcar_du_plane_state *new_rstate;

drivers/gpu/drm/rcar-du/rcar_du_vsp.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -280,7 +280,7 @@ static void rcar_du_vsp_plane_atomic_update(struct drm_plane *plane,
280280
struct drm_atomic_state *state)
281281
{
282282
struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state, plane);
283-
struct drm_plane_state *new_state = plane->state;
283+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state, plane);
284284
struct rcar_du_vsp_plane *rplane = to_rcar_vsp_plane(plane);
285285
struct rcar_du_crtc *crtc = to_rcar_crtc(old_state->crtc);
286286

drivers/gpu/drm/rockchip/rockchip_drm_vop.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -881,7 +881,8 @@ static void vop_plane_atomic_update(struct drm_plane *plane,
881881
{
882882
struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state,
883883
plane);
884-
struct drm_plane_state *new_state = plane->state;
884+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
885+
plane);
885886
struct drm_crtc *crtc = new_state->crtc;
886887
struct vop_win *vop_win = to_vop_win(plane);
887888
const struct vop_win_data *win = vop_win->data;

drivers/gpu/drm/sti/sti_cursor.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -258,7 +258,8 @@ static int sti_cursor_atomic_check(struct drm_plane *drm_plane,
258258
static void sti_cursor_atomic_update(struct drm_plane *drm_plane,
259259
struct drm_atomic_state *state)
260260
{
261-
struct drm_plane_state *newstate = drm_plane->state;
261+
struct drm_plane_state *newstate = drm_atomic_get_new_plane_state(state,
262+
drm_plane);
262263
struct sti_plane *plane = to_sti_plane(drm_plane);
263264
struct sti_cursor *cursor = to_sti_cursor(plane);
264265
struct drm_crtc *crtc = newstate->crtc;

drivers/gpu/drm/sti/sti_gdp.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -703,7 +703,8 @@ static void sti_gdp_atomic_update(struct drm_plane *drm_plane,
703703
{
704704
struct drm_plane_state *oldstate = drm_atomic_get_old_plane_state(state,
705705
drm_plane);
706-
struct drm_plane_state *newstate = drm_plane->state;
706+
struct drm_plane_state *newstate = drm_atomic_get_new_plane_state(state,
707+
drm_plane);
707708
struct sti_plane *plane = to_sti_plane(drm_plane);
708709
struct sti_gdp *gdp = to_sti_gdp(plane);
709710
struct drm_crtc *crtc = newstate->crtc;

drivers/gpu/drm/sti/sti_hqvdp.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1113,7 +1113,8 @@ static void sti_hqvdp_atomic_update(struct drm_plane *drm_plane,
11131113
{
11141114
struct drm_plane_state *oldstate = drm_atomic_get_old_plane_state(state,
11151115
drm_plane);
1116-
struct drm_plane_state *newstate = drm_plane->state;
1116+
struct drm_plane_state *newstate = drm_atomic_get_new_plane_state(state,
1117+
drm_plane);
11171118
struct sti_plane *plane = to_sti_plane(drm_plane);
11181119
struct sti_hqvdp *hqvdp = to_sti_hqvdp(plane);
11191120
struct drm_crtc *crtc = newstate->crtc;

drivers/gpu/drm/stm/ltdc.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -778,7 +778,8 @@ static void ltdc_plane_atomic_update(struct drm_plane *plane,
778778
struct drm_atomic_state *state)
779779
{
780780
struct ltdc_device *ldev = plane_to_ltdc(plane);
781-
struct drm_plane_state *newstate = plane->state;
781+
struct drm_plane_state *newstate = drm_atomic_get_new_plane_state(state,
782+
plane);
782783
struct drm_framebuffer *fb = newstate->fb;
783784
u32 lofs = plane->index * LAY_OFS;
784785
u32 x0 = newstate->crtc_x;

drivers/gpu/drm/sun4i/sun4i_layer.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,8 @@ static void sun4i_backend_layer_atomic_disable(struct drm_plane *plane,
8686
static void sun4i_backend_layer_atomic_update(struct drm_plane *plane,
8787
struct drm_atomic_state *state)
8888
{
89-
struct drm_plane_state *new_state = plane->state;
89+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
90+
plane);
9091
struct sun4i_layer_state *layer_state = state_to_sun4i_layer_state(new_state);
9192
struct sun4i_layer *layer = plane_to_sun4i_layer(plane);
9293
struct sun4i_backend *backend = layer->backend;

drivers/gpu/drm/sun4i/sun8i_ui_layer.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -306,7 +306,8 @@ static void sun8i_ui_layer_atomic_update(struct drm_plane *plane,
306306
{
307307
struct drm_plane_state *old_state = drm_atomic_get_old_plane_state(state,
308308
plane);
309-
struct drm_plane_state *new_state = plane->state;
309+
struct drm_plane_state *new_state = drm_atomic_get_new_plane_state(state,
310+
plane);
310311
struct sun8i_ui_layer *layer = plane_to_sun8i_ui_layer(plane);
311312
unsigned int zpos = new_state->normalized_zpos;
312313
unsigned int old_zpos = old_state->normalized_zpos;

0 commit comments

Comments
 (0)