Re: [PATCH v6 05/49 RESEND] media: atomisp: Switch to new Intel CPU model defines

From: Hans de Goede
Date: Wed Jun 12 2024 - 04:10:54 EST


Hi Tony,

On 6/11/24 7:34 PM, Tony Luck wrote:
> New CPU #defines encode vendor and family as well as model.
>
> Signed-off-by: Tony Luck <tony.luck@xxxxxxxxx>
> Reviewed-by: Andy Shevchenko <andy@xxxxxxxxxx>
> Acked-by: Hans de Goede <hdegoede@xxxxxxxxxx>
> ---
>
> Mauro, Hans, Greg: Which one of you owns this one. Can you take
> a look please. Let me know if changes are needed.

I'll pick this one up. But atomisp support is a side project,
so I only work on this every few weeks.

My intent is to get this send to Mauro (media-next) in time
for the 6.11 merge window.

Regards,

Hans



>
> .../atomisp/include/linux/atomisp_platform.h | 27 ++++++++-----------
> 1 file changed, 11 insertions(+), 16 deletions(-)
>
> diff --git a/drivers/staging/media/atomisp/include/linux/atomisp_platform.h b/drivers/staging/media/atomisp/include/linux/atomisp_platform.h
> index 0e3f6fb78483..fdeb247036b0 100644
> --- a/drivers/staging/media/atomisp/include/linux/atomisp_platform.h
> +++ b/drivers/staging/media/atomisp/include/linux/atomisp_platform.h
> @@ -18,7 +18,7 @@
> #ifndef ATOMISP_PLATFORM_H_
> #define ATOMISP_PLATFORM_H_
>
> -#include <asm/intel-family.h>
> +#include <asm/cpu_device_id.h>
> #include <asm/processor.h>
>
> #include <linux/i2c.h>
> @@ -178,22 +178,17 @@ void atomisp_unregister_subdev(struct v4l2_subdev *subdev);
> int v4l2_get_acpi_sensor_info(struct device *dev, char **module_id_str);
>
> /* API from old platform_camera.h, new CPUID implementation */
> -#define __IS_SOC(x) (boot_cpu_data.x86_vendor == X86_VENDOR_INTEL && \
> - boot_cpu_data.x86 == 6 && \
> - boot_cpu_data.x86_model == (x))
> -#define __IS_SOCS(x,y) (boot_cpu_data.x86_vendor == X86_VENDOR_INTEL && \
> - boot_cpu_data.x86 == 6 && \
> - (boot_cpu_data.x86_model == (x) || \
> - boot_cpu_data.x86_model == (y)))
> -
> -#define IS_MFLD __IS_SOC(INTEL_FAM6_ATOM_SALTWELL_MID)
> -#define IS_BYT __IS_SOC(INTEL_FAM6_ATOM_SILVERMONT)
> -#define IS_CHT __IS_SOC(INTEL_FAM6_ATOM_AIRMONT)
> -#define IS_MRFD __IS_SOC(INTEL_FAM6_ATOM_SILVERMONT_MID)
> -#define IS_MOFD __IS_SOC(INTEL_FAM6_ATOM_AIRMONT_MID)
> +#define __IS_SOC(x) (boot_cpu_data.x86_vfm == x)
> +#define __IS_SOCS(x, y) (boot_cpu_data.x86_vfm == x || boot_cpu_data.x86_vfm == y)
> +
> +#define IS_MFLD __IS_SOC(INTEL_ATOM_SALTWELL_MID)
> +#define IS_BYT __IS_SOC(INTEL_ATOM_SILVERMONT)
> +#define IS_CHT __IS_SOC(INTEL_ATOM_AIRMONT)
> +#define IS_MRFD __IS_SOC(INTEL_ATOM_SILVERMONT_MID)
> +#define IS_MOFD __IS_SOC(INTEL_ATOM_AIRMONT_MID)
>
> /* Both CHT and MOFD come with ISP2401 */
> -#define IS_ISP2401 __IS_SOCS(INTEL_FAM6_ATOM_AIRMONT, \
> - INTEL_FAM6_ATOM_AIRMONT_MID)
> +#define IS_ISP2401 __IS_SOCS(INTEL_ATOM_AIRMONT, \
> + INTEL_ATOM_AIRMONT_MID)
>
> #endif /* ATOMISP_PLATFORM_H_ */