diff options
author | Tvrtko Ursulin <tvrtko.ursulin@intel.com> | 2015-02-27 06:15:24 -0500 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2015-02-27 12:10:56 -0500 |
commit | 9a8f0a1290993c86c4e35756a2624bfe461f9036 (patch) | |
tree | 18fd7331f559a604dd0eff614a7268c9c0cea8c3 | |
parent | 0fda65680e92545caea5be7805a7f0a617fb6c20 (diff) |
drm/i915/skl: Allow Y (and Yf) frame buffer creation
By this patch all underlying bits have been implemented and this
patch actually enables the feature.
v2: Validate passed in fb modifiers to reject garbage. (Daniel Vetter)
v3: Rearrange validation checks per code review comments. (Daniel Vetter)
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Damien Lespiau <damien.lespiau@intel.com> (v1)
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index a9e15cfe9857..7298796847f6 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c | |||
@@ -12808,8 +12808,21 @@ static int intel_framebuffer_init(struct drm_device *dev, | |||
12808 | } | 12808 | } |
12809 | } | 12809 | } |
12810 | 12810 | ||
12811 | if (mode_cmd->modifier[0] == I915_FORMAT_MOD_Y_TILED) { | 12811 | /* Passed in modifier sanity checking. */ |
12812 | DRM_DEBUG("hardware does not support tiling Y\n"); | 12812 | switch (mode_cmd->modifier[0]) { |
12813 | case I915_FORMAT_MOD_Y_TILED: | ||
12814 | case I915_FORMAT_MOD_Yf_TILED: | ||
12815 | if (INTEL_INFO(dev)->gen < 9) { | ||
12816 | DRM_DEBUG("Unsupported tiling 0x%llx!\n", | ||
12817 | mode_cmd->modifier[0]); | ||
12818 | return -EINVAL; | ||
12819 | } | ||
12820 | case DRM_FORMAT_MOD_NONE: | ||
12821 | case I915_FORMAT_MOD_X_TILED: | ||
12822 | break; | ||
12823 | default: | ||
12824 | DRM_ERROR("Unsupported fb modifier 0x%llx!\n", | ||
12825 | mode_cmd->modifier[0]); | ||
12813 | return -EINVAL; | 12826 | return -EINVAL; |
12814 | } | 12827 | } |
12815 | 12828 | ||