[Intel-gfx] [PATCH] drm/i915/display: Add a wrapper function for vga decode setup
Jani Nikula
jani.nikula at intel.com
Fri Sep 22 09:22:34 UTC 2023
On Fri, 22 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.
This should also use it in i915, not just add duplicated code.
>
> Signed-off-by: Uma Shankar <uma.shankar at intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_vga.c | 3 ---
> drivers/gpu/drm/i915/soc/intel_gmch.c | 14 ++++++++++++++
> drivers/gpu/drm/i915/soc/intel_gmch.h | 2 ++
> 3 files changed, 16 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_vga.c b/drivers/gpu/drm/i915/display/intel_vga.c
> index 286a0bdd28c6..bf84d01339b9 100644
> --- a/drivers/gpu/drm/i915/display/intel_vga.c
> +++ b/drivers/gpu/drm/i915/display/intel_vga.c
> @@ -3,11 +3,8 @@
> * Copyright © 2019 Intel Corporation
> */
>
> -#include <linux/pci.h>
> #include <linux/vgaarb.h>
> -
> #include <video/vga.h>
> -
There should remain a blank line after the system includes and before
the rest.
> #include "soc/intel_gmch.h"
>
> #include "i915_drv.h"
> 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>
<linux/...> and <drm/...> includes go before the rest.
>
> 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..5ab2552ceb1a 100644
> --- a/drivers/gpu/drm/i915/soc/intel_gmch.h
> +++ b/drivers/gpu/drm/i915/soc/intel_gmch.h
> @@ -7,6 +7,7 @@
> #define __INTEL_GMCH_H__
>
> #include <linux/types.h>
> +#include <linux/pci.h>
You don't need that, just a forward declaration for struct pci_dev.
>
> struct drm_i915_private;
>
> @@ -14,5 +15,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-gfx
mailing list