OSDN Git Service

Merge drm/drm-fixes into drm-next
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 13 Apr 2021 21:06:34 +0000 (23:06 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 13 Apr 2021 21:15:09 +0000 (23:15 +0200)
msm-next pull request has a baseline with stuff from -fixes, roll
forward first.

Some simple conflicts in amdgpu, ttm and one in i915 where git gets
confused and tries to add the same function twice.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
1  2 
MAINTAINERS
drivers/gpu/drm/exynos/exynos5433_drm_decon.c
drivers/gpu/drm/msm/msm_atomic.c
drivers/gpu/drm/nouveau/nouveau_bo.c
drivers/gpu/drm/omapdrm/dss/dsi.c
drivers/gpu/drm/tegra/dc.c
drivers/gpu/drm/vc4/vc4_plane.c
include/drm/ttm/ttm_bo_api.h
kernel/irq/manage.c

diff --cc MAINTAINERS
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -1135,34 -1133,31 +1135,33 @@@ void vc4_plane_async_set_fb(struct drm_
  }
  
  static void vc4_plane_atomic_async_update(struct drm_plane *plane,
 -                                        struct drm_plane_state *state)
 +                                        struct drm_atomic_state *state)
  {
 +      struct drm_plane_state *new_plane_state = drm_atomic_get_new_plane_state(state,
 +                                                                               plane);
        struct vc4_plane_state *vc4_state, *new_vc4_state;
  
 -      swap(plane->state->fb, state->fb);
 -      plane->state->crtc_x = state->crtc_x;
 -      plane->state->crtc_y = state->crtc_y;
 -      plane->state->crtc_w = state->crtc_w;
 -      plane->state->crtc_h = state->crtc_h;
 -      plane->state->src_x = state->src_x;
 -      plane->state->src_y = state->src_y;
 -      plane->state->src_w = state->src_w;
 -      plane->state->src_h = state->src_h;
 -      plane->state->alpha = state->alpha;
 -      plane->state->pixel_blend_mode = state->pixel_blend_mode;
 -      plane->state->rotation = state->rotation;
 -      plane->state->zpos = state->zpos;
 -      plane->state->normalized_zpos = state->normalized_zpos;
 -      plane->state->color_encoding = state->color_encoding;
 -      plane->state->color_range = state->color_range;
 -      plane->state->src = state->src;
 -      plane->state->dst = state->dst;
 -      plane->state->visible = state->visible;
 -
 -      new_vc4_state = to_vc4_plane_state(state);
 +      swap(plane->state->fb, new_plane_state->fb);
 +      plane->state->crtc_x = new_plane_state->crtc_x;
 +      plane->state->crtc_y = new_plane_state->crtc_y;
 +      plane->state->crtc_w = new_plane_state->crtc_w;
 +      plane->state->crtc_h = new_plane_state->crtc_h;
 +      plane->state->src_x = new_plane_state->src_x;
 +      plane->state->src_y = new_plane_state->src_y;
 +      plane->state->src_w = new_plane_state->src_w;
 +      plane->state->src_h = new_plane_state->src_h;
-       plane->state->src_h = new_plane_state->src_h;
 +      plane->state->alpha = new_plane_state->alpha;
 +      plane->state->pixel_blend_mode = new_plane_state->pixel_blend_mode;
 +      plane->state->rotation = new_plane_state->rotation;
 +      plane->state->zpos = new_plane_state->zpos;
 +      plane->state->normalized_zpos = new_plane_state->normalized_zpos;
 +      plane->state->color_encoding = new_plane_state->color_encoding;
 +      plane->state->color_range = new_plane_state->color_range;
 +      plane->state->src = new_plane_state->src;
 +      plane->state->dst = new_plane_state->dst;
 +      plane->state->visible = new_plane_state->visible;
 +
 +      new_vc4_state = to_vc4_plane_state(new_plane_state);
        vc4_state = to_vc4_plane_state(plane->state);
  
        vc4_state->crtc_x = new_vc4_state->crtc_x;
@@@ -603,12 -612,14 +603,14 @@@ static inline void ttm_bo_pin(struct tt
  static inline void ttm_bo_unpin(struct ttm_buffer_object *bo)
  {
        dma_resv_assert_held(bo->base.resv);
-       WARN_ON_ONCE(!bo->pin_count);
        WARN_ON_ONCE(!kref_read(&bo->kref));
-       --bo->pin_count;
+       if (bo->pin_count)
+               --bo->pin_count;
+       else
+               WARN_ON_ONCE(true);
  }
  
 -int ttm_mem_evict_first(struct ttm_bo_device *bdev,
 +int ttm_mem_evict_first(struct ttm_device *bdev,
                        struct ttm_resource_manager *man,
                        const struct ttm_place *place,
                        struct ttm_operation_ctx *ctx,
Simple merge