mirror of https://gitee.com/openkylin/linux.git
drm/i915/skl: Use fb modifiers for sprites
While at it just outright remove the tiling check in
intel_check_sprite_plane because it's impossible: We only allow
untiled and X-tiled. This essentially reverts
commit 94c6419ed8
Author: Damien Lespiau <damien.lespiau@intel.com>
Date: Mon Oct 29 15:14:51 2012 +0000
drm/i915: Error out when trying to set a y-tiled as a sprite
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
[danvet: Drop the hunk in check_sprite, it's impossible.]
Cc: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
parent
ba343e029e
commit
66ebf56714
|
@ -245,11 +245,11 @@ skl_update_plane(struct drm_plane *drm_plane, struct drm_crtc *crtc,
|
||||||
BUG();
|
BUG();
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (obj->tiling_mode) {
|
switch (fb->modifier[0]) {
|
||||||
case I915_TILING_NONE:
|
case DRM_FORMAT_MOD_NONE:
|
||||||
stride = fb->pitches[0] >> 6;
|
stride = fb->pitches[0] >> 6;
|
||||||
break;
|
break;
|
||||||
case I915_TILING_X:
|
case I915_FORMAT_MOD_X_TILED:
|
||||||
plane_ctl |= PLANE_CTL_TILED_X;
|
plane_ctl |= PLANE_CTL_TILED_X;
|
||||||
stride = fb->pitches[0] >> 9;
|
stride = fb->pitches[0] >> 9;
|
||||||
break;
|
break;
|
||||||
|
@ -1076,7 +1076,6 @@ intel_check_sprite_plane(struct drm_plane *plane,
|
||||||
struct intel_crtc *intel_crtc = to_intel_crtc(state->base.crtc);
|
struct intel_crtc *intel_crtc = to_intel_crtc(state->base.crtc);
|
||||||
struct intel_plane *intel_plane = to_intel_plane(plane);
|
struct intel_plane *intel_plane = to_intel_plane(plane);
|
||||||
struct drm_framebuffer *fb = state->base.fb;
|
struct drm_framebuffer *fb = state->base.fb;
|
||||||
struct drm_i915_gem_object *obj = intel_fb_obj(fb);
|
|
||||||
int crtc_x, crtc_y;
|
int crtc_x, crtc_y;
|
||||||
unsigned int crtc_w, crtc_h;
|
unsigned int crtc_w, crtc_h;
|
||||||
uint32_t src_x, src_y, src_w, src_h;
|
uint32_t src_x, src_y, src_w, src_h;
|
||||||
|
@ -1106,16 +1105,6 @@ intel_check_sprite_plane(struct drm_plane *plane,
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Sprite planes can be linear or x-tiled surfaces */
|
|
||||||
switch (obj->tiling_mode) {
|
|
||||||
case I915_TILING_NONE:
|
|
||||||
case I915_TILING_X:
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
DRM_DEBUG_KMS("Unsupported tiling mode\n");
|
|
||||||
return -EINVAL;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* FIXME the following code does a bunch of fuzzy adjustments to the
|
* FIXME the following code does a bunch of fuzzy adjustments to the
|
||||||
* coordinates and sizes. We probably need some way to decide whether
|
* coordinates and sizes. We probably need some way to decide whether
|
||||||
|
|
Loading…
Reference in New Issue