[12/13] ASoC: SOF: Intel: Convert to PCI device IDs defines

Message ID 20230711125726.3509391-13-amadeuszx.slawinski@linux.intel.com
State New
Headers
Series PCI: Define Intel PCI IDs and use them in drivers |

Commit Message

Amadeusz Sławiński July 11, 2023, 12:57 p.m. UTC
  Use PCI device IDs from pci_ids.h header and while at it change to using
PCI_DEVICE_DATA() macro, to simplify declarations.

Acked-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>
---
 sound/soc/sof/intel/pci-apl.c |  9 +++----
 sound/soc/sof/intel/pci-cnl.c | 15 ++++--------
 sound/soc/sof/intel/pci-icl.c | 12 ++++------
 sound/soc/sof/intel/pci-mtl.c |  3 +--
 sound/soc/sof/intel/pci-skl.c |  6 ++---
 sound/soc/sof/intel/pci-tgl.c | 45 ++++++++++++-----------------------
 sound/soc/sof/intel/pci-tng.c |  3 +--
 7 files changed, 31 insertions(+), 62 deletions(-)
  

Comments

Andy Shevchenko July 11, 2023, 2:16 p.m. UTC | #1
On Tue, Jul 11, 2023 at 02:57:25PM +0200, Amadeusz Sławiński wrote:
> Use PCI device IDs from pci_ids.h header and while at it change to using
> PCI_DEVICE_DATA() macro, to simplify declarations.

FWIW,
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Oh, additional remark below.

> Acked-by: Mark Brown <broonie@kernel.org>
> Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>
> ---
>  sound/soc/sof/intel/pci-apl.c |  9 +++----
>  sound/soc/sof/intel/pci-cnl.c | 15 ++++--------
>  sound/soc/sof/intel/pci-icl.c | 12 ++++------
>  sound/soc/sof/intel/pci-mtl.c |  3 +--
>  sound/soc/sof/intel/pci-skl.c |  6 ++---
>  sound/soc/sof/intel/pci-tgl.c | 45 ++++++++++++-----------------------
>  sound/soc/sof/intel/pci-tng.c |  3 +--
>  7 files changed, 31 insertions(+), 62 deletions(-)
> 
> diff --git a/sound/soc/sof/intel/pci-apl.c b/sound/soc/sof/intel/pci-apl.c
> index 69cad5a6bc72..083659ddfe6b 100644
> --- a/sound/soc/sof/intel/pci-apl.c
> +++ b/sound/soc/sof/intel/pci-apl.c
> @@ -85,12 +85,9 @@ static const struct sof_dev_desc glk_desc = {
>  
>  /* PCI IDs */
>  static const struct pci_device_id sof_pci_ids[] = {
> -	{ PCI_DEVICE(0x8086, 0x5a98), /* BXT-P (ApolloLake) */
> -		.driver_data = (unsigned long)&bxt_desc},
> -	{ PCI_DEVICE(0x8086, 0x1a98),/* BXT-T */
> -		.driver_data = (unsigned long)&bxt_desc},
> -	{ PCI_DEVICE(0x8086, 0x3198), /* GeminiLake */
> -		.driver_data = (unsigned long)&glk_desc},
> +	{ PCI_DEVICE_DATA(INTEL, HDA_APL, &bxt_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_APL_T, &bxt_desc) },

Have we ever had APL-T? What is that? I remember that we have had two or
three BXTs inside, and then products become for Broxton and Apollo Lake
SoC codenames. I never have heard about -T...

> +	{ PCI_DEVICE_DATA(INTEL, HDA_GML, &glk_desc) },
>  	{ 0, }
>  };
>  MODULE_DEVICE_TABLE(pci, sof_pci_ids);
> diff --git a/sound/soc/sof/intel/pci-cnl.c b/sound/soc/sof/intel/pci-cnl.c
> index 8895508a0be6..e2c50e7b0aa7 100644
> --- a/sound/soc/sof/intel/pci-cnl.c
> +++ b/sound/soc/sof/intel/pci-cnl.c
> @@ -120,16 +120,11 @@ static const struct sof_dev_desc cml_desc = {
>  
>  /* PCI IDs */
>  static const struct pci_device_id sof_pci_ids[] = {
> -	{ PCI_DEVICE(0x8086, 0x9dc8), /* CNL-LP */
> -		.driver_data = (unsigned long)&cnl_desc},
> -	{ PCI_DEVICE(0x8086, 0xa348), /* CNL-H */
> -		.driver_data = (unsigned long)&cfl_desc},
> -	{ PCI_DEVICE(0x8086, 0x02c8), /* CML-LP */
> -		.driver_data = (unsigned long)&cml_desc},
> -	{ PCI_DEVICE(0x8086, 0x06c8), /* CML-H */
> -		.driver_data = (unsigned long)&cml_desc},
> -	{ PCI_DEVICE(0x8086, 0xa3f0), /* CML-S */
> -		.driver_data = (unsigned long)&cml_desc},
> +	{ PCI_DEVICE_DATA(INTEL, HDA_CNL_LP, &cnl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_CNL_H, &cfl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_CML_LP, &cml_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_CML_H, &cml_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_CML_S, &cml_desc) },
>  	{ 0, }
>  };
>  MODULE_DEVICE_TABLE(pci, sof_pci_ids);
> diff --git a/sound/soc/sof/intel/pci-icl.c b/sound/soc/sof/intel/pci-icl.c
> index 5fb5a820693e..0a65df3ed9e2 100644
> --- a/sound/soc/sof/intel/pci-icl.c
> +++ b/sound/soc/sof/intel/pci-icl.c
> @@ -86,14 +86,10 @@ static const struct sof_dev_desc jsl_desc = {
>  
>  /* PCI IDs */
>  static const struct pci_device_id sof_pci_ids[] = {
> -	{ PCI_DEVICE(0x8086, 0x34C8), /* ICL-LP */
> -		.driver_data = (unsigned long)&icl_desc},
> -	{ PCI_DEVICE(0x8086, 0x3dc8), /* ICL-H */
> -		.driver_data = (unsigned long)&icl_desc},
> -	{ PCI_DEVICE(0x8086, 0x38c8), /* ICL-N */
> -		.driver_data = (unsigned long)&jsl_desc},
> -	{ PCI_DEVICE(0x8086, 0x4dc8), /* JSL-N */
> -		.driver_data = (unsigned long)&jsl_desc},
> +	{ PCI_DEVICE_DATA(INTEL, HDA_ICL_LP, &icl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_ICL_H, &icl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_ICL_N, &jsl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_JSL_N, &jsl_desc) },
>  	{ 0, }
>  };
>  MODULE_DEVICE_TABLE(pci, sof_pci_ids);
> diff --git a/sound/soc/sof/intel/pci-mtl.c b/sound/soc/sof/intel/pci-mtl.c
> index e276e1e37fed..7868b0827e84 100644
> --- a/sound/soc/sof/intel/pci-mtl.c
> +++ b/sound/soc/sof/intel/pci-mtl.c
> @@ -52,8 +52,7 @@ static const struct sof_dev_desc mtl_desc = {
>  
>  /* PCI IDs */
>  static const struct pci_device_id sof_pci_ids[] = {
> -	{ PCI_DEVICE(0x8086, 0x7E28), /* MTL */
> -		.driver_data = (unsigned long)&mtl_desc},
> +	{ PCI_DEVICE_DATA(INTEL, HDA_MTL, &mtl_desc) },
>  	{ 0, }
>  };
>  MODULE_DEVICE_TABLE(pci, sof_pci_ids);
> diff --git a/sound/soc/sof/intel/pci-skl.c b/sound/soc/sof/intel/pci-skl.c
> index 5e69af6eed34..a6588b138a8c 100644
> --- a/sound/soc/sof/intel/pci-skl.c
> +++ b/sound/soc/sof/intel/pci-skl.c
> @@ -69,10 +69,8 @@ static struct sof_dev_desc kbl_desc = {
>  
>  /* PCI IDs */
>  static const struct pci_device_id sof_pci_ids[] = {
> -	/* Sunrise Point-LP */
> -	{ PCI_DEVICE(0x8086, 0x9d70), .driver_data = (unsigned long)&skl_desc},
> -	/* KBL */
> -	{ PCI_DEVICE(0x8086, 0x9d71), .driver_data = (unsigned long)&kbl_desc},
> +	{ PCI_DEVICE_DATA(INTEL, HDA_SKL_LP, &skl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_KBL_LP, &kbl_desc) },
>  	{ 0, }
>  };
>  MODULE_DEVICE_TABLE(pci, sof_pci_ids);
> diff --git a/sound/soc/sof/intel/pci-tgl.c b/sound/soc/sof/intel/pci-tgl.c
> index ca37ff1bbd2a..d688f9373fb2 100644
> --- a/sound/soc/sof/intel/pci-tgl.c
> +++ b/sound/soc/sof/intel/pci-tgl.c
> @@ -284,36 +284,21 @@ static const struct sof_dev_desc rpl_desc = {
>  
>  /* PCI IDs */
>  static const struct pci_device_id sof_pci_ids[] = {
> -	{ PCI_DEVICE(0x8086, 0xa0c8), /* TGL-LP */
> -		.driver_data = (unsigned long)&tgl_desc},
> -	{ PCI_DEVICE(0x8086, 0x43c8), /* TGL-H */
> -		.driver_data = (unsigned long)&tglh_desc},
> -	{ PCI_DEVICE(0x8086, 0x4b55), /* EHL */
> -		.driver_data = (unsigned long)&ehl_desc},
> -	{ PCI_DEVICE(0x8086, 0x4b58), /* EHL */
> -		.driver_data = (unsigned long)&ehl_desc},
> -	{ PCI_DEVICE(0x8086, 0x7ad0), /* ADL-S */
> -		.driver_data = (unsigned long)&adls_desc},
> -	{ PCI_DEVICE(0x8086, 0x7a50), /* RPL-S */
> -		.driver_data = (unsigned long)&rpls_desc},
> -	{ PCI_DEVICE(0x8086, 0x51c8), /* ADL-P */
> -		.driver_data = (unsigned long)&adl_desc},
> -	{ PCI_DEVICE(0x8086, 0x51c9), /* ADL-PS */
> -		.driver_data = (unsigned long)&adl_desc},
> -	{ PCI_DEVICE(0x8086, 0x51ca), /* RPL-P */
> -		.driver_data = (unsigned long)&rpl_desc},
> -	{ PCI_DEVICE(0x8086, 0x51cb), /* RPL-P */
> -		.driver_data = (unsigned long)&rpl_desc},
> -	{ PCI_DEVICE(0x8086, 0x51cc), /* ADL-M */
> -		.driver_data = (unsigned long)&adl_desc},
> -	{ PCI_DEVICE(0x8086, 0x51cd), /* ADL-P */
> -		.driver_data = (unsigned long)&adl_desc},
> -	{ PCI_DEVICE(0x8086, 0x51ce), /* RPL-M */
> -		.driver_data = (unsigned long)&rpl_desc},
> -	{ PCI_DEVICE(0x8086, 0x51cf), /* RPL-PX */
> -		.driver_data = (unsigned long)&rpl_desc},
> -	{ PCI_DEVICE(0x8086, 0x54c8), /* ADL-N */
> -		.driver_data = (unsigned long)&adl_n_desc},
> +	{ PCI_DEVICE_DATA(INTEL, HDA_TGL_LP, &tgl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_TGL_H, &tglh_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_EHL_0, &ehl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_EHL_3, &ehl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_ADL_S, &adls_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_RPL_S, &rpls_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_ADL_P, &adl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_ADL_PS, &adl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_RPL_P_0, &rpl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_RPL_P_1, &rpl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_ADL_M, &adl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_ADL_PX, &adl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_RPL_M, &rpl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_RPL_PX, &rpl_desc) },
> +	{ PCI_DEVICE_DATA(INTEL, HDA_ADL_N, &adl_n_desc) },
>  	{ 0, }
>  };
>  MODULE_DEVICE_TABLE(pci, sof_pci_ids);
> diff --git a/sound/soc/sof/intel/pci-tng.c b/sound/soc/sof/intel/pci-tng.c
> index 8c22a00266c0..12e81456a80c 100644
> --- a/sound/soc/sof/intel/pci-tng.c
> +++ b/sound/soc/sof/intel/pci-tng.c
> @@ -225,8 +225,7 @@ static const struct sof_dev_desc tng_desc = {
>  
>  /* PCI IDs */
>  static const struct pci_device_id sof_pci_ids[] = {
> -	{ PCI_DEVICE(0x8086, 0x119a),
> -		.driver_data = (unsigned long)&tng_desc},
> +	{ PCI_DEVICE_DATA(INTEL, ADSP_TNG, &tng_desc) },
>  	{ 0, }
>  };
>  MODULE_DEVICE_TABLE(pci, sof_pci_ids);
> -- 
> 2.34.1
>
  
Amadeusz Sławiński July 12, 2023, 12:16 p.m. UTC | #2
On 7/11/2023 4:16 PM, Andy Shevchenko wrote:
> On Tue, Jul 11, 2023 at 02:57:25PM +0200, Amadeusz Sławiński wrote:
>> Use PCI device IDs from pci_ids.h header and while at it change to using
>> PCI_DEVICE_DATA() macro, to simplify declarations.
> 
> FWIW,
> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> Oh, additional remark below.
> 
>> Acked-by: Mark Brown <broonie@kernel.org>
>> Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com>
>> ---
>>   sound/soc/sof/intel/pci-apl.c |  9 +++----
>>   sound/soc/sof/intel/pci-cnl.c | 15 ++++--------
>>   sound/soc/sof/intel/pci-icl.c | 12 ++++------
>>   sound/soc/sof/intel/pci-mtl.c |  3 +--
>>   sound/soc/sof/intel/pci-skl.c |  6 ++---
>>   sound/soc/sof/intel/pci-tgl.c | 45 ++++++++++++-----------------------
>>   sound/soc/sof/intel/pci-tng.c |  3 +--
>>   7 files changed, 31 insertions(+), 62 deletions(-)
>>
>> diff --git a/sound/soc/sof/intel/pci-apl.c b/sound/soc/sof/intel/pci-apl.c
>> index 69cad5a6bc72..083659ddfe6b 100644
>> --- a/sound/soc/sof/intel/pci-apl.c
>> +++ b/sound/soc/sof/intel/pci-apl.c
>> @@ -85,12 +85,9 @@ static const struct sof_dev_desc glk_desc = {
>>   
>>   /* PCI IDs */
>>   static const struct pci_device_id sof_pci_ids[] = {
>> -	{ PCI_DEVICE(0x8086, 0x5a98), /* BXT-P (ApolloLake) */
>> -		.driver_data = (unsigned long)&bxt_desc},
>> -	{ PCI_DEVICE(0x8086, 0x1a98),/* BXT-T */
>> -		.driver_data = (unsigned long)&bxt_desc},
>> -	{ PCI_DEVICE(0x8086, 0x3198), /* GeminiLake */
>> -		.driver_data = (unsigned long)&glk_desc},
>> +	{ PCI_DEVICE_DATA(INTEL, HDA_APL, &bxt_desc) },
>> +	{ PCI_DEVICE_DATA(INTEL, HDA_APL_T, &bxt_desc) },
> 
> Have we ever had APL-T? What is that? I remember that we have had two or
> three BXTs inside, and then products become for Broxton and Apollo Lake
> SoC codenames. I never have heard about -T...
> 

I've talked a bit with Cezary and it seems that 0x1a98 is BXT-M (not -T) 
and it's an RVP, BXT-M B0 to be specific. From what we know no BXT is 
available on market. Perhaps we can just remove it?
  
Andy Shevchenko July 12, 2023, 3:53 p.m. UTC | #3
On Wed, Jul 12, 2023 at 02:16:17PM +0200, Amadeusz Sławiński wrote:
> On 7/11/2023 4:16 PM, Andy Shevchenko wrote:
> > On Tue, Jul 11, 2023 at 02:57:25PM +0200, Amadeusz Sławiński wrote:

...

> > Oh, additional remark below.

> > > +	{ PCI_DEVICE_DATA(INTEL, HDA_APL, &bxt_desc) },
> > > +	{ PCI_DEVICE_DATA(INTEL, HDA_APL_T, &bxt_desc) },
> > 
> > Have we ever had APL-T? What is that? I remember that we have had two or
> > three BXTs inside, and then products become for Broxton and Apollo Lake
> > SoC codenames. I never have heard about -T...
> 
> I've talked a bit with Cezary and it seems that 0x1a98 is BXT-M (not -T) and
> it's an RVP, BXT-M B0 to be specific. From what we know no BXT is available
> on market. Perhaps we can just remove it?

If you go this way, it should be in a separate patch and it seems it has
already pre-cooked commit message (as per previous paragraph) :-)
  

Patch

diff --git a/sound/soc/sof/intel/pci-apl.c b/sound/soc/sof/intel/pci-apl.c
index 69cad5a6bc72..083659ddfe6b 100644
--- a/sound/soc/sof/intel/pci-apl.c
+++ b/sound/soc/sof/intel/pci-apl.c
@@ -85,12 +85,9 @@  static const struct sof_dev_desc glk_desc = {
 
 /* PCI IDs */
 static const struct pci_device_id sof_pci_ids[] = {
-	{ PCI_DEVICE(0x8086, 0x5a98), /* BXT-P (ApolloLake) */
-		.driver_data = (unsigned long)&bxt_desc},
-	{ PCI_DEVICE(0x8086, 0x1a98),/* BXT-T */
-		.driver_data = (unsigned long)&bxt_desc},
-	{ PCI_DEVICE(0x8086, 0x3198), /* GeminiLake */
-		.driver_data = (unsigned long)&glk_desc},
+	{ PCI_DEVICE_DATA(INTEL, HDA_APL, &bxt_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_APL_T, &bxt_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_GML, &glk_desc) },
 	{ 0, }
 };
 MODULE_DEVICE_TABLE(pci, sof_pci_ids);
diff --git a/sound/soc/sof/intel/pci-cnl.c b/sound/soc/sof/intel/pci-cnl.c
index 8895508a0be6..e2c50e7b0aa7 100644
--- a/sound/soc/sof/intel/pci-cnl.c
+++ b/sound/soc/sof/intel/pci-cnl.c
@@ -120,16 +120,11 @@  static const struct sof_dev_desc cml_desc = {
 
 /* PCI IDs */
 static const struct pci_device_id sof_pci_ids[] = {
-	{ PCI_DEVICE(0x8086, 0x9dc8), /* CNL-LP */
-		.driver_data = (unsigned long)&cnl_desc},
-	{ PCI_DEVICE(0x8086, 0xa348), /* CNL-H */
-		.driver_data = (unsigned long)&cfl_desc},
-	{ PCI_DEVICE(0x8086, 0x02c8), /* CML-LP */
-		.driver_data = (unsigned long)&cml_desc},
-	{ PCI_DEVICE(0x8086, 0x06c8), /* CML-H */
-		.driver_data = (unsigned long)&cml_desc},
-	{ PCI_DEVICE(0x8086, 0xa3f0), /* CML-S */
-		.driver_data = (unsigned long)&cml_desc},
+	{ PCI_DEVICE_DATA(INTEL, HDA_CNL_LP, &cnl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_CNL_H, &cfl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_CML_LP, &cml_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_CML_H, &cml_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_CML_S, &cml_desc) },
 	{ 0, }
 };
 MODULE_DEVICE_TABLE(pci, sof_pci_ids);
diff --git a/sound/soc/sof/intel/pci-icl.c b/sound/soc/sof/intel/pci-icl.c
index 5fb5a820693e..0a65df3ed9e2 100644
--- a/sound/soc/sof/intel/pci-icl.c
+++ b/sound/soc/sof/intel/pci-icl.c
@@ -86,14 +86,10 @@  static const struct sof_dev_desc jsl_desc = {
 
 /* PCI IDs */
 static const struct pci_device_id sof_pci_ids[] = {
-	{ PCI_DEVICE(0x8086, 0x34C8), /* ICL-LP */
-		.driver_data = (unsigned long)&icl_desc},
-	{ PCI_DEVICE(0x8086, 0x3dc8), /* ICL-H */
-		.driver_data = (unsigned long)&icl_desc},
-	{ PCI_DEVICE(0x8086, 0x38c8), /* ICL-N */
-		.driver_data = (unsigned long)&jsl_desc},
-	{ PCI_DEVICE(0x8086, 0x4dc8), /* JSL-N */
-		.driver_data = (unsigned long)&jsl_desc},
+	{ PCI_DEVICE_DATA(INTEL, HDA_ICL_LP, &icl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_ICL_H, &icl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_ICL_N, &jsl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_JSL_N, &jsl_desc) },
 	{ 0, }
 };
 MODULE_DEVICE_TABLE(pci, sof_pci_ids);
diff --git a/sound/soc/sof/intel/pci-mtl.c b/sound/soc/sof/intel/pci-mtl.c
index e276e1e37fed..7868b0827e84 100644
--- a/sound/soc/sof/intel/pci-mtl.c
+++ b/sound/soc/sof/intel/pci-mtl.c
@@ -52,8 +52,7 @@  static const struct sof_dev_desc mtl_desc = {
 
 /* PCI IDs */
 static const struct pci_device_id sof_pci_ids[] = {
-	{ PCI_DEVICE(0x8086, 0x7E28), /* MTL */
-		.driver_data = (unsigned long)&mtl_desc},
+	{ PCI_DEVICE_DATA(INTEL, HDA_MTL, &mtl_desc) },
 	{ 0, }
 };
 MODULE_DEVICE_TABLE(pci, sof_pci_ids);
diff --git a/sound/soc/sof/intel/pci-skl.c b/sound/soc/sof/intel/pci-skl.c
index 5e69af6eed34..a6588b138a8c 100644
--- a/sound/soc/sof/intel/pci-skl.c
+++ b/sound/soc/sof/intel/pci-skl.c
@@ -69,10 +69,8 @@  static struct sof_dev_desc kbl_desc = {
 
 /* PCI IDs */
 static const struct pci_device_id sof_pci_ids[] = {
-	/* Sunrise Point-LP */
-	{ PCI_DEVICE(0x8086, 0x9d70), .driver_data = (unsigned long)&skl_desc},
-	/* KBL */
-	{ PCI_DEVICE(0x8086, 0x9d71), .driver_data = (unsigned long)&kbl_desc},
+	{ PCI_DEVICE_DATA(INTEL, HDA_SKL_LP, &skl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_KBL_LP, &kbl_desc) },
 	{ 0, }
 };
 MODULE_DEVICE_TABLE(pci, sof_pci_ids);
diff --git a/sound/soc/sof/intel/pci-tgl.c b/sound/soc/sof/intel/pci-tgl.c
index ca37ff1bbd2a..d688f9373fb2 100644
--- a/sound/soc/sof/intel/pci-tgl.c
+++ b/sound/soc/sof/intel/pci-tgl.c
@@ -284,36 +284,21 @@  static const struct sof_dev_desc rpl_desc = {
 
 /* PCI IDs */
 static const struct pci_device_id sof_pci_ids[] = {
-	{ PCI_DEVICE(0x8086, 0xa0c8), /* TGL-LP */
-		.driver_data = (unsigned long)&tgl_desc},
-	{ PCI_DEVICE(0x8086, 0x43c8), /* TGL-H */
-		.driver_data = (unsigned long)&tglh_desc},
-	{ PCI_DEVICE(0x8086, 0x4b55), /* EHL */
-		.driver_data = (unsigned long)&ehl_desc},
-	{ PCI_DEVICE(0x8086, 0x4b58), /* EHL */
-		.driver_data = (unsigned long)&ehl_desc},
-	{ PCI_DEVICE(0x8086, 0x7ad0), /* ADL-S */
-		.driver_data = (unsigned long)&adls_desc},
-	{ PCI_DEVICE(0x8086, 0x7a50), /* RPL-S */
-		.driver_data = (unsigned long)&rpls_desc},
-	{ PCI_DEVICE(0x8086, 0x51c8), /* ADL-P */
-		.driver_data = (unsigned long)&adl_desc},
-	{ PCI_DEVICE(0x8086, 0x51c9), /* ADL-PS */
-		.driver_data = (unsigned long)&adl_desc},
-	{ PCI_DEVICE(0x8086, 0x51ca), /* RPL-P */
-		.driver_data = (unsigned long)&rpl_desc},
-	{ PCI_DEVICE(0x8086, 0x51cb), /* RPL-P */
-		.driver_data = (unsigned long)&rpl_desc},
-	{ PCI_DEVICE(0x8086, 0x51cc), /* ADL-M */
-		.driver_data = (unsigned long)&adl_desc},
-	{ PCI_DEVICE(0x8086, 0x51cd), /* ADL-P */
-		.driver_data = (unsigned long)&adl_desc},
-	{ PCI_DEVICE(0x8086, 0x51ce), /* RPL-M */
-		.driver_data = (unsigned long)&rpl_desc},
-	{ PCI_DEVICE(0x8086, 0x51cf), /* RPL-PX */
-		.driver_data = (unsigned long)&rpl_desc},
-	{ PCI_DEVICE(0x8086, 0x54c8), /* ADL-N */
-		.driver_data = (unsigned long)&adl_n_desc},
+	{ PCI_DEVICE_DATA(INTEL, HDA_TGL_LP, &tgl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_TGL_H, &tglh_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_EHL_0, &ehl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_EHL_3, &ehl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_ADL_S, &adls_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_RPL_S, &rpls_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_ADL_P, &adl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_ADL_PS, &adl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_RPL_P_0, &rpl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_RPL_P_1, &rpl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_ADL_M, &adl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_ADL_PX, &adl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_RPL_M, &rpl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_RPL_PX, &rpl_desc) },
+	{ PCI_DEVICE_DATA(INTEL, HDA_ADL_N, &adl_n_desc) },
 	{ 0, }
 };
 MODULE_DEVICE_TABLE(pci, sof_pci_ids);
diff --git a/sound/soc/sof/intel/pci-tng.c b/sound/soc/sof/intel/pci-tng.c
index 8c22a00266c0..12e81456a80c 100644
--- a/sound/soc/sof/intel/pci-tng.c
+++ b/sound/soc/sof/intel/pci-tng.c
@@ -225,8 +225,7 @@  static const struct sof_dev_desc tng_desc = {
 
 /* PCI IDs */
 static const struct pci_device_id sof_pci_ids[] = {
-	{ PCI_DEVICE(0x8086, 0x119a),
-		.driver_data = (unsigned long)&tng_desc},
+	{ PCI_DEVICE_DATA(INTEL, ADSP_TNG, &tng_desc) },
 	{ 0, }
 };
 MODULE_DEVICE_TABLE(pci, sof_pci_ids);