On Mon, Nov 25, 2013 at 03:51:17PM -0800, Jesse Barnes wrote:
> Read out the current plane configuration at init time into a new
> plane_config structure.  This allows us to track any existing
> framebuffers attached to the plane and potentially re-use them in our
> fbdev code for a smooth handoff.
> 
> v2: update for new pitch_for_width function (Jesse)
>     comment how get_plane_config works with shared fbs (Jesse)
> v3: s/ARGB/XRGB (Ville)
>     use pipesrc width/height (Ville)
>     fix fourcc comment (Bob)
>     use drm_format_plane_cpp (Ville)
> v4: use fb for tracking fb data object (Ville)
> 
> Signed-off-by: Jesse Barnes <jbar...@virtuousgeek.org>
> ---

> @@ -10879,6 +10992,18 @@ void intel_modeset_init(struct drm_device *dev)
>  
>       /* Just in case the BIOS is doing something questionable. */
>       intel_disable_fbc(dev);
> +
> +     intel_modeset_setup_hw_state(dev, false);
> +
> +     list_for_each_entry(crtc, &dev->mode_config.crtc_list,
> +                         base.head) {
> +             if (!crtc->active)
> +                     continue;
> +
> +             if (dev_priv->display.get_plane_config)
> +                     dev_priv->display.get_plane_config(crtc,
> +                                                        &crtc->plane_config);

The trick is that here if we do not retreive the current config,
including the preallocated fb, we *must* disable the output. In this
case, it would be a step in intel_sanitize_crtc() to disable the CRTC if
it is enabled but we have no preserved fb.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to