diff options
author | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2016-01-12 14:08:31 -0500 |
---|---|---|
committer | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2016-01-13 11:46:17 -0500 |
commit | b5c653384f84b0ccb97e9cf942b6e8ed759221bf (patch) | |
tree | f3bb3831bb560897e4919889c61086dc4a82ee1f /drivers/gpu/drm/i915/intel_display.c | |
parent | 657fb5fbadb3ef286ababaf6809d5594767d8063 (diff) |
drm/i915: Pass modifier instead of tiling_mode to gen4_compute_page_offset()
In preparation for handling more than X tiling, pass the fb modifier to
gen4_compute_page_offset() instead of the obj->tiling_mode.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1452625717-9713-2-git-send-email-ville.syrjala@linux.intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/intel_display.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 3b79981735c8..e39c724aca89 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c | |||
@@ -2449,11 +2449,11 @@ static void intel_unpin_fb_obj(struct drm_framebuffer *fb, | |||
2449 | * is assumed to be a power-of-two. */ | 2449 | * is assumed to be a power-of-two. */ |
2450 | unsigned long intel_gen4_compute_page_offset(struct drm_i915_private *dev_priv, | 2450 | unsigned long intel_gen4_compute_page_offset(struct drm_i915_private *dev_priv, |
2451 | int *x, int *y, | 2451 | int *x, int *y, |
2452 | unsigned int tiling_mode, | 2452 | uint64_t fb_modifier, |
2453 | unsigned int cpp, | 2453 | unsigned int cpp, |
2454 | unsigned int pitch) | 2454 | unsigned int pitch) |
2455 | { | 2455 | { |
2456 | if (tiling_mode != I915_TILING_NONE) { | 2456 | if (fb_modifier != DRM_FORMAT_MOD_NONE) { |
2457 | unsigned int tile_rows, tiles; | 2457 | unsigned int tile_rows, tiles; |
2458 | 2458 | ||
2459 | tile_rows = *y / 8; | 2459 | tile_rows = *y / 8; |
@@ -2769,8 +2769,8 @@ static void i9xx_update_primary_plane(struct drm_plane *primary, | |||
2769 | 2769 | ||
2770 | if (INTEL_INFO(dev)->gen >= 4) { | 2770 | if (INTEL_INFO(dev)->gen >= 4) { |
2771 | intel_crtc->dspaddr_offset = | 2771 | intel_crtc->dspaddr_offset = |
2772 | intel_gen4_compute_page_offset(dev_priv, | 2772 | intel_gen4_compute_page_offset(dev_priv, &x, &y, |
2773 | &x, &y, obj->tiling_mode, | 2773 | fb->modifier[0], |
2774 | pixel_size, | 2774 | pixel_size, |
2775 | fb->pitches[0]); | 2775 | fb->pitches[0]); |
2776 | linear_offset -= intel_crtc->dspaddr_offset; | 2776 | linear_offset -= intel_crtc->dspaddr_offset; |
@@ -2877,8 +2877,8 @@ static void ironlake_update_primary_plane(struct drm_plane *primary, | |||
2877 | 2877 | ||
2878 | linear_offset = y * fb->pitches[0] + x * pixel_size; | 2878 | linear_offset = y * fb->pitches[0] + x * pixel_size; |
2879 | intel_crtc->dspaddr_offset = | 2879 | intel_crtc->dspaddr_offset = |
2880 | intel_gen4_compute_page_offset(dev_priv, | 2880 | intel_gen4_compute_page_offset(dev_priv, &x, &y, |
2881 | &x, &y, obj->tiling_mode, | 2881 | fb->modifier[0], |
2882 | pixel_size, | 2882 | pixel_size, |
2883 | fb->pitches[0]); | 2883 | fb->pitches[0]); |
2884 | linear_offset -= intel_crtc->dspaddr_offset; | 2884 | linear_offset -= intel_crtc->dspaddr_offset; |