[PATCH 1/2] drm: i915: move intel_pch.h to include/drm

Jani Nikula jani.nikula at linux.intel.com
Wed Aug 25 09:10:49 UTC 2021


On Wed, 25 Aug 2021, Koba Ko <koba.ko at canonical.com> wrote:
> Because AMD GPU have a issue on RKL platform,
> driver needs to determine which intel platfomr is and
> if the platform is RKL, disable PCIE_DPM for AMD polaris-series GPUs.
>
> Move intel_pch.h to includ/drm

I don't know what the root cause is, or whether this is the right course
of action. However, if you do end up needing PCH ids outside of i915, I
think it's too much to move the entire intel_pch.h under include/drm.

Instead, I suggest adding include/drm/i915_pchids.h (or similar,
analoguous to i915_pciids.h) which would only have the macros:

#define INTEL_PCH_DEVICE_ID_MASK		0xff80
#define INTEL_PCH_*_DEVICE_ID_TYPE		*

and nothing more. intel_pch.h is too i915 specific to expose and does
not have enough namespacing prefixes in the other macros and enums
either. Then intel_pch.h would include i915_pchids.h.

BR,
Jani.


>
> Ref: https://lists.freedesktop.org/archives/amd-gfx/2021-August/067413.html
> Signed-off-by: Koba Ko <koba.ko at canonical.com>
> ---
>  drivers/gpu/drm/i915/i915_drv.h                   | 4 +++-
>  drivers/gpu/drm/i915/intel_pch.c                  | 2 +-
>  {drivers/gpu/drm/i915 => include/drm}/intel_pch.h | 2 --
>  3 files changed, 4 insertions(+), 4 deletions(-)
>  rename {drivers/gpu/drm/i915 => include/drm}/intel_pch.h (98%)
>
> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
> index 106f218cec2b..7d091927d9b4 100644
> --- a/drivers/gpu/drm/i915/i915_drv.h
> +++ b/drivers/gpu/drm/i915/i915_drv.h
> @@ -60,6 +60,7 @@
>  #include <drm/drm_connector.h>
>  #include <drm/i915_mei_hdcp_interface.h>
>  #include <drm/ttm/ttm_device.h>
> +#include <drm/intel_pch.h>
>  
>  #include "i915_params.h"
>  #include "i915_reg.h"
> @@ -89,7 +90,6 @@
>  
>  #include "intel_device_info.h"
>  #include "intel_memory_region.h"
> -#include "intel_pch.h"
>  #include "intel_runtime_pm.h"
>  #include "intel_step.h"
>  #include "intel_uncore.h"
> @@ -1336,6 +1336,8 @@ static inline struct drm_i915_private *pdev_to_i915(struct pci_dev *pdev)
>  	(drm_WARN_ON(&(__i915)->drm, INTEL_GT_STEP(__i915) == STEP_NONE), \
>  	 INTEL_GT_STEP(__i915) >= (since) && INTEL_GT_STEP(__i915) < (until))
>  
> +void intel_detect_pch(struct drm_i915_private *dev_priv);
> +
>  static __always_inline unsigned int
>  __platform_mask_index(const struct intel_runtime_info *info,
>  		      enum intel_platform p)
> diff --git a/drivers/gpu/drm/i915/intel_pch.c b/drivers/gpu/drm/i915/intel_pch.c
> index d1d4b97b86f5..43162d1338bc 100644
> --- a/drivers/gpu/drm/i915/intel_pch.c
> +++ b/drivers/gpu/drm/i915/intel_pch.c
> @@ -4,7 +4,7 @@
>   */
>  
>  #include "i915_drv.h"
> -#include "intel_pch.h"
> +#include <drm/intel_pch.h>
>  
>  /* Map PCH device id to PCH type, or PCH_NONE if unknown. */
>  static enum intel_pch
> diff --git a/drivers/gpu/drm/i915/intel_pch.h b/include/drm/intel_pch.h
> similarity index 98%
> rename from drivers/gpu/drm/i915/intel_pch.h
> rename to include/drm/intel_pch.h
> index 7c0d83d292dc..168c83c836b4 100644
> --- a/drivers/gpu/drm/i915/intel_pch.h
> +++ b/include/drm/intel_pch.h
> @@ -84,6 +84,4 @@ enum intel_pch {
>  #define HAS_PCH_NOP(dev_priv)			(INTEL_PCH_TYPE(dev_priv) == PCH_NOP)
>  #define HAS_PCH_SPLIT(dev_priv)			(INTEL_PCH_TYPE(dev_priv) != PCH_NONE)
>  
> -void intel_detect_pch(struct drm_i915_private *dev_priv);
> -
>  #endif /* __INTEL_PCH__ */

-- 
Jani Nikula, Intel Open Source Graphics Center


More information about the amd-gfx mailing list