bcm27xx: switch to 5.15
[openwrt/staging/chunkeey.git] / target / linux / bcm27xx / patches-5.10 / 950-0418-drm-vc4-Fixup-fkms-for-API-change.patch
1 From 3adbeebf1fb33937d8b5ef52103b7721621c57b1 Mon Sep 17 00:00:00 2001
2 From: Dave Stevenson <dave.stevenson@raspberrypi.com>
3 Date: Tue, 1 Dec 2020 14:57:41 +0000
4 Subject: [PATCH] drm/vc4: Fixup fkms for API change
5
6 Atomic flush and check changed API, so fix up the downstream-only
7 FKMS driver.
8
9 Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
10 ---
11 drivers/gpu/drm/vc4/vc4_firmware_kms.c | 13 +++++++++----
12 1 file changed, 9 insertions(+), 4 deletions(-)
13
14 --- a/drivers/gpu/drm/vc4/vc4_firmware_kms.c
15 +++ b/drivers/gpu/drm/vc4/vc4_firmware_kms.c
16 @@ -1107,16 +1107,18 @@ vc4_crtc_mode_valid(struct drm_crtc *crt
17 }
18
19 static int vc4_crtc_atomic_check(struct drm_crtc *crtc,
20 - struct drm_crtc_state *state)
21 + struct drm_atomic_state *state)
22 {
23 - struct vc4_crtc_state *vc4_state = to_vc4_crtc_state(state);
24 + struct drm_crtc_state *crtc_state = drm_atomic_get_new_crtc_state(state,
25 + crtc);
26 + struct vc4_crtc_state *vc4_state = to_vc4_crtc_state(crtc_state);
27 struct drm_connector *conn;
28 struct drm_connector_state *conn_state;
29 int i;
30
31 DRM_DEBUG_KMS("[CRTC:%d] crtc_atomic_check.\n", crtc->base.id);
32
33 - for_each_new_connector_in_state(state->state, conn, conn_state, i) {
34 + for_each_new_connector_in_state(crtc_state->state, conn, conn_state, i) {
35 if (conn_state->crtc != crtc)
36 continue;
37
38 @@ -1130,8 +1132,11 @@ static int vc4_crtc_atomic_check(struct
39 }
40
41 static void vc4_crtc_atomic_flush(struct drm_crtc *crtc,
42 - struct drm_crtc_state *old_state)
43 + struct drm_atomic_state *state)
44 {
45 + struct drm_crtc_state *old_state = drm_atomic_get_old_crtc_state(state,
46 + crtc);
47 +
48 DRM_DEBUG_KMS("[CRTC:%d] crtc_atomic_flush.\n",
49 crtc->base.id);
50 if (crtc->state->active && old_state->active && crtc->state->event)