Re: [PATCH 1/3] drm/i915: disable all display features when no display

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Sep 10, 2020 at 12:52:25PM +0300, Jani Nikula wrote:
> Disable all display feature flags when there are no pipes i.e. there is
> no display. This should help with not having to additionally check for
> HAS_DISPLAY() when a feature flag check would suffice.
> 
> Also disable modeset and atomic driver features.

While bspec is rather vague whether this is actually entirely consistent
with how th hw works, it seems rather silly if any display hw blocks
would get initialized by the BIOS/whatever when there are no usable
pipes.

Reviewed-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>

> 
> Cc: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
> Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>
> ---
>  drivers/gpu/drm/i915/intel_device_info.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c
> index e2aa5bc3a6e0..adc836f15fde 100644
> --- a/drivers/gpu/drm/i915/intel_device_info.c
> +++ b/drivers/gpu/drm/i915/intel_device_info.c
> @@ -516,6 +516,14 @@ void intel_device_info_runtime_init(struct drm_i915_private *dev_priv)
>  					    S32_MAX),
>  				USEC_PER_SEC));
>  	}
> +
> +	if (!HAS_DISPLAY(dev_priv)) {
> +		dev_priv->drm.driver_features &= ~(DRIVER_MODESET |
> +						   DRIVER_ATOMIC);
> +		memset(&info->display, 0, sizeof(info->display));
> +		memset(runtime->num_sprites, 0, sizeof(runtime->num_sprites));
> +		memset(runtime->num_scalers, 0, sizeof(runtime->num_scalers));

Side note: No idea why the num_scalers/sprites is stored under the
runtime info. I think those could just live in the normal PCI ID
based device info.

> +	}
>  }
>  
>  void intel_driver_caps_print(const struct intel_driver_caps *caps,
> -- 
> 2.20.1

-- 
Ville Syrjälä
Intel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux