[Intel-xe] [PATCH 1/3] drm/i915/display: Add a wrapper function for vga decode setup

Jani Nikula jani.nikula at intel.com
Tue Sep 19 10:26:07 UTC 2023


On Mon, 18 Sep 2023, Uma Shankar <uma.shankar at intel.com> wrote:
> Some of the VGA functionality is not needed by the proposed
> Intel Xe driver. Adding a wrapper function for VGA decode setup.

If you want to do this, it should be sent to intel-gfx and i915 first,
then backported to drm-xe-next.

BR,
Jani.

>
> Signed-off-by: Uma Shankar <uma.shankar at intel.com>
> ---
>  drivers/gpu/drm/i915/soc/intel_gmch.c | 14 ++++++++++++++
>  drivers/gpu/drm/i915/soc/intel_gmch.h |  1 +
>  2 files changed, 15 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/soc/intel_gmch.c b/drivers/gpu/drm/i915/soc/intel_gmch.c
> index 49c7fb16e934..818f0b7f62a2 100644
> --- a/drivers/gpu/drm/i915/soc/intel_gmch.c
> +++ b/drivers/gpu/drm/i915/soc/intel_gmch.c
> @@ -12,6 +12,7 @@
>  #include "i915_drv.h"
>  #include "intel_gmch.h"
>  #include "intel_pci_config.h"
> +#include <linux/vgaarb.h>
>  
>  static void intel_gmch_bridge_release(struct drm_device *dev, void *bridge)
>  {
> @@ -167,3 +168,16 @@ int intel_gmch_vga_set_state(struct drm_i915_private *i915, bool enable_decode)
>  
>  	return 0;
>  }
> +
> +unsigned int intel_gmch_vga_set_decode(struct pci_dev *pdev, bool enable_decode)
> +{
> +	struct drm_i915_private *i915 = pdev_to_i915(pdev);
> +
> +	intel_gmch_vga_set_state(i915, enable_decode);
> +
> +	if (enable_decode)
> +		return VGA_RSRC_LEGACY_IO | VGA_RSRC_LEGACY_MEM |
> +		       VGA_RSRC_NORMAL_IO | VGA_RSRC_NORMAL_MEM;
> +	else
> +		return VGA_RSRC_NORMAL_IO | VGA_RSRC_NORMAL_MEM;
> +}
> diff --git a/drivers/gpu/drm/i915/soc/intel_gmch.h b/drivers/gpu/drm/i915/soc/intel_gmch.h
> index d0133eedc720..88db1653ffc9 100644
> --- a/drivers/gpu/drm/i915/soc/intel_gmch.h
> +++ b/drivers/gpu/drm/i915/soc/intel_gmch.h
> @@ -14,5 +14,6 @@ int intel_gmch_bridge_setup(struct drm_i915_private *i915);
>  void intel_gmch_bar_setup(struct drm_i915_private *i915);
>  void intel_gmch_bar_teardown(struct drm_i915_private *i915);
>  int intel_gmch_vga_set_state(struct drm_i915_private *i915, bool enable_decode);
> +unsigned int intel_gmch_vga_set_decode(struct pci_dev *pdev, bool enable_decode);
>  
>  #endif /* __INTEL_GMCH_H__ */

-- 
Jani Nikula, Intel


More information about the Intel-xe mailing list