Signed-off-by: Stephen Rothwell <sfr at canb.auug.org.au>
---
 drivers/gpu/drm/i915/intel_display.c | 90 ++++++++++++++++++------------------
 drivers/gpu/drm/i915/intel_fbdev.c   |  6 +--
 2 files changed, 48 insertions(+), 48 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_display.c 
b/drivers/gpu/drm/i915/intel_display.c
index 9eb4dda2d81d..dae976f51d83 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -741,7 +741,7 @@ bool intel_crtc_active(struct drm_crtc *crtc)
         * We can ditch the adjusted_mode.crtc_clock check as soon
         * as Haswell has gained clock readout/fastboot support.
         *
-        * We can ditch the crtc->fb check as soon as we can
+        * We can ditch the crtc->primary->fb check as soon as we can
         * properly reconstruct framebuffers.
         */
        return intel_crtc->active && crtc->primary->fb &&
@@ -2086,17 +2086,17 @@ static bool intel_alloc_plane_obj(struct intel_crtc 
*crtc,

        if (plane_config->tiled) {
                obj->tiling_mode = I915_TILING_X;
-               obj->stride = crtc->base.fb->pitches[0];
+               obj->stride = crtc->base.primary->fb->pitches[0];
        }

-       mode_cmd.pixel_format = crtc->base.fb->pixel_format;
-       mode_cmd.width = crtc->base.fb->width;
-       mode_cmd.height = crtc->base.fb->height;
-       mode_cmd.pitches[0] = crtc->base.fb->pitches[0];
+       mode_cmd.pixel_format = crtc->base.primary->fb->pixel_format;
+       mode_cmd.width = crtc->base.primary->fb->width;
+       mode_cmd.height = crtc->base.primary->fb->height;
+       mode_cmd.pitches[0] = crtc->base.primary->fb->pitches[0];

        mutex_lock(&dev->struct_mutex);

-       if (intel_framebuffer_init(dev, to_intel_framebuffer(crtc->base.fb),
+       if (intel_framebuffer_init(dev, 
to_intel_framebuffer(crtc->base.primary->fb),
                                   &mode_cmd, obj)) {
                DRM_DEBUG_KMS("intel fb init failed\n");
                goto out_unref_obj;
@@ -2121,14 +2121,14 @@ static void intel_find_plane_obj(struct intel_crtc 
*intel_crtc,
        struct intel_crtc *i;
        struct intel_framebuffer *fb;

-       if (!intel_crtc->base.fb)
+       if (!intel_crtc->base.primary->fb)
                return;

        if (intel_alloc_plane_obj(intel_crtc, plane_config))
                return;

-       kfree(intel_crtc->base.fb);
-       intel_crtc->base.fb = NULL;
+       kfree(intel_crtc->base.primary->fb);
+       intel_crtc->base.primary->fb = NULL;

        /*
         * Failed to alloc the obj, check to see if we should share
@@ -2140,13 +2140,13 @@ static void intel_find_plane_obj(struct intel_crtc 
*intel_crtc,
                if (c == &intel_crtc->base)
                        continue;

-               if (!i->active || !c->fb)
+               if (!i->active || !c->primary->fb)
                        continue;

-               fb = to_intel_framebuffer(c->fb);
+               fb = to_intel_framebuffer(c->primary->fb);
                if (i915_gem_obj_ggtt_offset(fb->obj) == plane_config->base) {
-                       drm_framebuffer_reference(c->fb);
-                       intel_crtc->base.fb = c->fb;
+                       drm_framebuffer_reference(c->primary->fb);
+                       intel_crtc->base.primary->fb = c->primary->fb;
                        break;
                }
        }
@@ -2396,7 +2396,7 @@ void intel_display_handle_reset(struct drm_device *dev)
                /*
                 * FIXME: Once we have proper support for primary planes (and
                 * disabling them without disabling the entire crtc) allow again
-                * a NULL crtc->fb.
+                * a NULL crtc->primary->fb.
                 */
                if (intel_crtc->active && crtc->primary->fb)
                        dev_priv->display.update_primary_plane(crtc,
@@ -5742,8 +5742,8 @@ static void i9xx_get_plane_config(struct intel_crtc *crtc,
        int fourcc, pixel_format;
        int aligned_height;

-       crtc->base.fb = kzalloc(sizeof(struct intel_framebuffer), GFP_KERNEL);
-       if (!crtc->base.fb) {
+       crtc->base.primary->fb = kzalloc(sizeof(struct intel_framebuffer), 
GFP_KERNEL);
+       if (!crtc->base.primary->fb) {
                DRM_DEBUG_KMS("failed to alloc fb\n");
                return;
        }
@@ -5756,8 +5756,8 @@ static void i9xx_get_plane_config(struct intel_crtc *crtc,

        pixel_format = val & DISPPLANE_PIXFORMAT_MASK;
        fourcc = intel_format_to_fourcc(pixel_format);
-       crtc->base.fb->pixel_format = fourcc;
-       crtc->base.fb->bits_per_pixel =
+       crtc->base.primary->fb->pixel_format = fourcc;
+       crtc->base.primary->fb->bits_per_pixel =
                drm_format_plane_cpp(fourcc, 0) * 8;

        if (INTEL_INFO(dev)->gen >= 4) {
@@ -5772,23 +5772,23 @@ static void i9xx_get_plane_config(struct intel_crtc 
*crtc,
        plane_config->base = base;

        val = I915_READ(PIPESRC(pipe));
-       crtc->base.fb->width = ((val >> 16) & 0xfff) + 1;
-       crtc->base.fb->height = ((val >> 0) & 0xfff) + 1;
+       crtc->base.primary->fb->width = ((val >> 16) & 0xfff) + 1;
+       crtc->base.primary->fb->height = ((val >> 0) & 0xfff) + 1;

        val = I915_READ(DSPSTRIDE(pipe));
-       crtc->base.fb->pitches[0] = val & 0xffffff80;
+       crtc->base.primary->fb->pitches[0] = val & 0xffffff80;

-       aligned_height = intel_align_height(dev, crtc->base.fb->height,
+       aligned_height = intel_align_height(dev, crtc->base.primary->fb->height,
                                            plane_config->tiled);

-       plane_config->size = ALIGN(crtc->base.fb->pitches[0] *
+       plane_config->size = ALIGN(crtc->base.primary->fb->pitches[0] *
                                   aligned_height, PAGE_SIZE);

        DRM_DEBUG_KMS("pipe/plane %d/%d with fb: size=%dx%d@%d, offset=%x, 
pitch %d, size 0x%x\n",
-                     pipe, plane, crtc->base.fb->width,
-                     crtc->base.fb->height,
-                     crtc->base.fb->bits_per_pixel, base,
-                     crtc->base.fb->pitches[0],
+                     pipe, plane, crtc->base.primary->fb->width,
+                     crtc->base.primary->fb->height,
+                     crtc->base.primary->fb->bits_per_pixel, base,
+                     crtc->base.primary->fb->pitches[0],
                      plane_config->size);

 }
@@ -6750,8 +6750,8 @@ static void ironlake_get_plane_config(struct intel_crtc 
*crtc,
        int fourcc, pixel_format;
        int aligned_height;

-       crtc->base.fb = kzalloc(sizeof(struct intel_framebuffer), GFP_KERNEL);
-       if (!crtc->base.fb) {
+       crtc->base.primary->fb = kzalloc(sizeof(struct intel_framebuffer), 
GFP_KERNEL);
+       if (!crtc->base.primary->fb) {
                DRM_DEBUG_KMS("failed to alloc fb\n");
                return;
        }
@@ -6764,8 +6764,8 @@ static void ironlake_get_plane_config(struct intel_crtc 
*crtc,

        pixel_format = val & DISPPLANE_PIXFORMAT_MASK;
        fourcc = intel_format_to_fourcc(pixel_format);
-       crtc->base.fb->pixel_format = fourcc;
-       crtc->base.fb->bits_per_pixel =
+       crtc->base.primary->fb->pixel_format = fourcc;
+       crtc->base.primary->fb->bits_per_pixel =
                drm_format_plane_cpp(fourcc, 0) * 8;

        base = I915_READ(DSPSURF(plane)) & 0xfffff000;
@@ -6780,23 +6780,23 @@ static void ironlake_get_plane_config(struct intel_crtc 
*crtc,
        plane_config->base = base;

        val = I915_READ(PIPESRC(pipe));
-       crtc->base.fb->width = ((val >> 16) & 0xfff) + 1;
-       crtc->base.fb->height = ((val >> 0) & 0xfff) + 1;
+       crtc->base.primary->fb->width = ((val >> 16) & 0xfff) + 1;
+       crtc->base.primary->fb->height = ((val >> 0) & 0xfff) + 1;

        val = I915_READ(DSPSTRIDE(pipe));
-       crtc->base.fb->pitches[0] = val & 0xffffff80;
+       crtc->base.primary->fb->pitches[0] = val & 0xffffff80;

-       aligned_height = intel_align_height(dev, crtc->base.fb->height,
+       aligned_height = intel_align_height(dev, crtc->base.primary->fb->height,
                                            plane_config->tiled);

-       plane_config->size = ALIGN(crtc->base.fb->pitches[0] *
+       plane_config->size = ALIGN(crtc->base.primary->fb->pitches[0] *
                                   aligned_height, PAGE_SIZE);

        DRM_DEBUG_KMS("pipe/plane %d/%d with fb: size=%dx%d@%d, offset=%x, 
pitch %d, size 0x%x\n",
-                     pipe, plane, crtc->base.fb->width,
-                     crtc->base.fb->height,
-                     crtc->base.fb->bits_per_pixel, base,
-                     crtc->base.fb->pitches[0],
+                     pipe, plane, crtc->base.primary->fb->width,
+                     crtc->base.primary->fb->height,
+                     crtc->base.primary->fb->bits_per_pixel, base,
+                     crtc->base.primary->fb->pitches[0],
                      plane_config->size);
 }

@@ -11780,15 +11780,15 @@ void intel_modeset_gem_init(struct drm_device *dev)
         */
        mutex_lock(&dev->struct_mutex);
        list_for_each_entry(c, &dev->mode_config.crtc_list, head) {
-               if (!c->fb)
+               if (!c->primary->fb)
                        continue;

-               fb = to_intel_framebuffer(c->fb);
+               fb = to_intel_framebuffer(c->primary->fb);
                if (intel_pin_and_fence_fb_obj(dev, fb->obj, NULL)) {
                        DRM_ERROR("failed to pin boot fb on pipe %d\n",
                                  to_intel_crtc(c)->pipe);
-                       drm_framebuffer_unreference(c->fb);
-                       c->fb = NULL;
+                       drm_framebuffer_unreference(c->primary->fb);
+                       c->primary->fb = NULL;
                }
        }
        mutex_unlock(&dev->struct_mutex);
diff --git a/drivers/gpu/drm/i915/intel_fbdev.c 
b/drivers/gpu/drm/i915/intel_fbdev.c
index d6d78c86c232..2b1d42dbfe13 100644
--- a/drivers/gpu/drm/i915/intel_fbdev.c
+++ b/drivers/gpu/drm/i915/intel_fbdev.c
@@ -481,7 +481,7 @@ static bool intel_fbdev_init_bios(struct drm_device *dev,
        list_for_each_entry(crtc, &dev->mode_config.crtc_list, head) {
                intel_crtc = to_intel_crtc(crtc);

-               if (!intel_crtc->active || !crtc->fb) {
+               if (!intel_crtc->active || !crtc->primary->fb) {
                        DRM_DEBUG_KMS("pipe %c not active or no fb, skipping\n",
                                      pipe_name(intel_crtc->pipe));
                        continue;
@@ -491,7 +491,7 @@ static bool intel_fbdev_init_bios(struct drm_device *dev,
                        DRM_DEBUG_KMS("found possible fb from plane %c\n",
                                      pipe_name(intel_crtc->pipe));
                        plane_config = &intel_crtc->plane_config;
-                       fb = to_intel_framebuffer(crtc->fb);
+                       fb = to_intel_framebuffer(crtc->primary->fb);
                        max_size = plane_config->size;
                }
        }
@@ -560,7 +560,7 @@ static bool intel_fbdev_init_bios(struct drm_device *dev,
                if (!intel_crtc->active)
                        continue;

-               WARN(!crtc->fb,
+               WARN(!crtc->primary->fb,
                     "re-used BIOS config but lost an fb on crtc %d\n",
                     crtc->base.id);
        }
-- 
1.9.1

-- 
Cheers,
Stephen Rothwell                    sfr at canb.auug.org.au
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: not available
URL: 
<http://lists.freedesktop.org/archives/dri-devel/attachments/20140403/410895a3/attachment-0001.sig>

Reply via email to