diff mbox series

[v3,68/74] x86/cpu/vfm: Update drivers/staging/media/atomisp/include/linux/atomisp_platform.h

Message ID 20240416212247.9949-1-tony.luck@intel.com (mailing list archive)
State New, archived
Headers show
Series None | expand

Commit Message

Luck, Tony April 16, 2024, 9:22 p.m. UTC
New CPU #defines encode vendor and family as well as model.

Signed-off-by: Tony Luck <tony.luck@intel.com>
---
 .../atomisp/include/linux/atomisp_platform.h  | 26 ++++++++-----------
 1 file changed, 11 insertions(+), 15 deletions(-)

Comments

Andy Shevchenko April 17, 2024, 8:07 a.m. UTC | #1
On Wed, Apr 17, 2024 at 12:22 AM Tony Luck <tony.luck@intel.com> wrote:
>
> New CPU #defines encode vendor and family as well as model.

Thanks, but I would rather see this using the following
https://elixir.bootlin.com/linux/v6.9-rc4/source/include/linux/platform_data/x86/soc.h
Luck, Tony April 17, 2024, 4:24 p.m. UTC | #2
>> New CPU #defines encode vendor and family as well as model.
>
> Thanks, but I would rather see this using the following
> https://elixir.bootlin.com/linux/v6.9-rc4/source/include/linux/platform_data/x86/soc.h

Are you asking for drivers/staging/media/atomisp/include/linux/atomisp_platform.h
to be refactored to use the new functions/macros in <linux/platform_data/x86/soc.h>?

Maybe folks working on this staging driver can do that? I don't think I have the domain
specific knowledge to make this update.

Note that patch 69 in this series does update <linux/platform_data/x86/soc.h> to use
the new vendor-family-model scheme.

-Tony
Andy Shevchenko April 17, 2024, 5 p.m. UTC | #3
On Wed, Apr 17, 2024 at 7:24 PM Luck, Tony <tony.luck@intel.com> wrote:
>
> >> New CPU #defines encode vendor and family as well as model.
> >
> > Thanks, but I would rather see this using the following
> > https://elixir.bootlin.com/linux/v6.9-rc4/source/include/linux/platform_data/x86/soc.h
>
> Are you asking for drivers/staging/media/atomisp/include/linux/atomisp_platform.h
> to be refactored to use the new functions/macros in <linux/platform_data/x86/soc.h>?
>
> Maybe folks working on this staging driver can do that? I don't think I have the domain
> specific knowledge to make this update.
>
> Note that patch 69 in this series does update <linux/platform_data/x86/soc.h> to use
> the new vendor-family-model scheme.

So. maybe if this patch is placed after that one, it can be easily
seen how to amend it? I would help with the conversion as I know
something about AtomISP driver code (not as much as Hans de Goede,
though).
Luck, Tony April 17, 2024, 5:31 p.m. UTC | #4
>> Note that patch 69 in this series does update <linux/platform_data/x86/soc.h> to use
>> the new vendor-family-model scheme.
>
> So. maybe if this patch is placed after that one, it can be easily
> seen how to amend it? I would help with the conversion as I know
> something about AtomISP driver code (not as much as Hans de Goede,
> though).

Ok. I put a hold on patch 68 until 69 is applied somewhere (that one
has a Ack from Rafael, so is high on the list to move forward once
parts 1-3 are applied.)

-Tony
diff mbox series

Patch

diff --git a/drivers/staging/media/atomisp/include/linux/atomisp_platform.h b/drivers/staging/media/atomisp/include/linux/atomisp_platform.h
index 487ef5846c24..59f71659b2d8 100644
--- a/drivers/staging/media/atomisp/include/linux/atomisp_platform.h
+++ b/drivers/staging/media/atomisp/include/linux/atomisp_platform.h
@@ -18,6 +18,7 @@ 
 #ifndef ATOMISP_PLATFORM_H_
 #define ATOMISP_PLATFORM_H_
 
+#include <asm/cpu_device_id.h>
 #include <asm/intel-family.h>
 #include <asm/processor.h>
 
@@ -217,22 +218,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_ */