Re: [PATCH v3 3/4] drm/i915: Introduce intel_cpu_info.c for CPU IDs

Riana Tauro
2024-12-10T07:38:44Z

On 10/30/2024 8:04 PM, Raag Jadav wrote:
> Having similar naming convention in intel-family.h and intel_device_info.h
> results in redefinition of a few platforms. Define CPU IDs in its own file
> to avoid this.
>
> v3: Move file out of gt directory, add kernel doc (Riana)
> Rephrase file description (Jani)
>
> Signed-off-by: Raag Jadav <raag.jadav@intel.com>
> ---
> drivers/gpu/drm/i915/Makefile | 1 +
> drivers/gpu/drm/i915/intel_cpu_info.c | 42 +++++++++++++++++++++++++++
> drivers/gpu/drm/i915/intel_cpu_info.h | 13 +++++++++
> 3 files changed, 56 insertions(+)
> create mode 100644 drivers/gpu/drm/i915/intel_cpu_info.c
> create mode 100644 drivers/gpu/drm/i915/intel_cpu_info.h
>
> diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
> index 31710d98cad5..208929358b25 100644
> --- a/drivers/gpu/drm/i915/Makefile
> +++ b/drivers/gpu/drm/i915/Makefile
> @@ -35,6 +35,7 @@ i915-y += \
> i915_sysfs.o \
> i915_utils.o \
> intel_clock_gating.o \
> + intel_cpu_info.o \
> intel_device_info.o \
> intel_memory_region.o \
> intel_pcode.o \
> diff --git a/drivers/gpu/drm/i915/intel_cpu_info.c b/drivers/gpu/drm/i915/intel_cpu_info.c
> new file mode 100644
> index 000000000000..9a1bfff4be7d
> --- /dev/null
> +++ b/drivers/gpu/drm/i915/intel_cpu_info.c
> @@ -0,0 +1,42 @@
> +// SPDX-License-Identifier: MIT
> +/*
> + * Copyright © 2024 Intel Corporation
> + *
> + * Avoid INTEL_<PLATFORM> name collisions between asm/intel-family.h and
> + * intel_device_info.h by having a separate file.
> + */
> +
> +#include "intel_cpu_info.h"
> +
> +#ifdef CONFIG_X86
> +#include <asm/cpu_device_id.h>
> +#include <asm/intel-family.h>
> +
> +static const struct x86_cpu_id g8_cpu_ids[] = {
> + X86_MATCH_VFM(INTEL_ALDERLAKE, NULL),
> + X86_MATCH_VFM(INTEL_ALDERLAKE_L, NULL),
> + X86_MATCH_VFM(INTEL_COMETLAKE, NULL),
> + X86_MATCH_VFM(INTEL_KABYLAKE, NULL),
> + X86_MATCH_VFM(INTEL_KABYLAKE_L, NULL),
> + X86_MATCH_VFM(INTEL_RAPTORLAKE, NULL),
> + X86_MATCH_VFM(INTEL_RAPTORLAKE_P, NULL),
> + X86_MATCH_VFM(INTEL_RAPTORLAKE_S, NULL),
> + X86_MATCH_VFM(INTEL_ROCKETLAKE, NULL),
> + {}
> +};
> +
> +/**
> + * intel_match_g8_cpu - match current CPU against g8_cpu_ids[]
> + *
> + * This matches current CPU against g8_cpu_ids[], which are applicable
> + * for G8 workaround.
nit:

[] is not necessaray

Looks good to me
Reviewed-by: Riana Tauro <riana.tauro@intel.com>
> + *
> + * Returns: %true if matches, %false otherwise.
> + */
> +bool intel_match_g8_cpu(void)
> +{
> + return x86_match_cpu(g8_cpu_ids);
> +}
> +#else
> +bool intel_match_g8_cpu(void) { return false; }
> +#endif
> diff --git a/drivers/gpu/drm/i915/intel_cpu_info.h b/drivers/gpu/drm/i915/intel_cpu_info.h
> new file mode 100644
> index 000000000000..dd0c5e784b97
> --- /dev/null
> +++ b/drivers/gpu/drm/i915/intel_cpu_info.h
> @@ -0,0 +1,13 @@
> +/* SPDX-License-Identifier: MIT */
> +/*
> + * Copyright © 2024 Intel Corporation
> + */
> +
> +#ifndef _INTEL_CPU_INFO_H_
> +#define _INTEL_CPU_INFO_H_
> +
> +#include <linux/types.h>
> +
> +bool intel_match_g8_cpu(void);
> +
> +#endif