[Intel-gfx] [PATCH 09/15] drm/i915: Ignore VBT int_crt_support on 830M
Daniel Vetter
daniel at ffwll.ch
Fri Jun 6 19:00:00 CEST 2014
On Thu, Jun 05, 2014 at 07:15:58PM +0300, ville.syrjala at linux.intel.com wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> My Fujitsu-Siemens Lifebook S6010 definitely has a VGA connector, but
> the VBT says different. Ignore the VBT for 830M since it seems such
> old machines would generally have a VGA connector.
>
> This is a regression caused by:
> commit 9c2a03c2a194c086949f25d332937ac8dc4d9f7e
> Author: Jesse Barnes <jbarnes at virtuousgeek.org>
> Date: Fri Apr 4 16:12:07 2014 -0700
>
> drm/i915: use VBT to determine whether to enumerate the VGA port
>
> While at it refactor the code a bit to be more pleasing to the eye.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
Well I think now's the time to move those checks into intel_crt_init. We
don't care at all whether we have a vga port, and imo that way it's
cleaner. eDP/mipi dsi and similar checks are also done in the _init
functions.
-Daniel
> ---
> drivers/gpu/drm/i915/intel_display.c | 17 ++++++++++++++++-
> 1 file changed, 16 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index b5cbb28..3d51ceb 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -11368,6 +11368,21 @@ const char *intel_output_name(int output)
> return names[output];
> }
>
> +static bool intel_crt_support(struct drm_device *dev)
> +{
> + struct drm_i915_private *dev_priv = dev->dev_private;
> +
> + /* no hardware support whatsoever */
> + if (IS_ULT(dev) || IS_CHERRYVIEW(dev))
> + return false;
> +
> + /* Fujitsu-Siemens Lifebook S6010 VBT lies */
> + if (IS_I830(dev))
> + return true;
> +
> + return dev_priv->vbt.int_crt_support;
> +}
> +
> static void intel_setup_outputs(struct drm_device *dev)
> {
> struct drm_i915_private *dev_priv = dev->dev_private;
> @@ -11376,7 +11391,7 @@ static void intel_setup_outputs(struct drm_device *dev)
>
> intel_lvds_init(dev);
>
> - if (!IS_ULT(dev) && !IS_CHERRYVIEW(dev) && dev_priv->vbt.int_crt_support)
> + if (intel_crt_support(dev))
> intel_crt_init(dev);
>
> if (HAS_DDI(dev)) {
> --
> 1.8.5.5
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
More information about the Intel-gfx
mailing list