lkml.org 
[lkml]   [2019]   [May]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v2 2/2] ASoC: Intel: Skylake: Add Cometlake PCI IDs
From
Date
On 5/7/19 4:53 PM, Evan Green wrote:
> Add PCI IDs for Intel CometLake platforms, which from a software
> point of view are extremely similar to Cannonlake platforms.

Humm, I have mixed feelings here.

Yes the hardware is nearly identical, with the exception of one detail
that's not visible to the kernel, but there is no support for DMICs with
the Skylake driver w/ HDaudio, and Chrome platforms are only going with
SOF, so is it wise to add these two CometLake platforms to the default
SND_SOC_INTEL_SKYLAKE selector, which is used by a number of distributions?

I don't mind if we add those PCI IDs and people use this driver if they
wish to, but it may be time for an explicit opt-in? The
SND_SOC_INTEL_SKYLAKE definition should even be pruned to mean SKL, APL,
KBL and GLK, and we can add DMI-based quirks for e.g. the Up2 board and
GLK Chromebooks which work with SOF.

>
> Signed-off-by: Evan Green <evgreen@chromium.org>
> ---
>
> Changes in v2:
> - Add 0x06c8 for CML-H (Pierre-Louis)
>
> sound/soc/intel/Kconfig | 18 ++++++++++++++++++
> sound/soc/intel/skylake/skl-messages.c | 16 ++++++++++++++++
> sound/soc/intel/skylake/skl.c | 10 ++++++++++
> 3 files changed, 44 insertions(+)
>
> diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
> index fc1396adde71..1ebac54b7081 100644
> --- a/sound/soc/intel/Kconfig
> +++ b/sound/soc/intel/Kconfig
> @@ -110,6 +110,8 @@ config SND_SOC_INTEL_SKYLAKE
> select SND_SOC_INTEL_GLK
> select SND_SOC_INTEL_CNL
> select SND_SOC_INTEL_CFL
> + select SND_SOC_INTEL_CML_H
> + select SND_SOC_INTEL_CML_LP
> help
> This is a backwards-compatible option to select all devices
> supported by the Intel SST/Skylake driver. This option is no
> @@ -165,6 +167,22 @@ config SND_SOC_INTEL_CFL
> If you have a Intel CoffeeLake platform with the DSP
> enabled in the BIOS then enable this option by saying Y or m.
>
> +config SND_SOC_INTEL_CML_H
> + tristate "CometLake-H Platforms"
> + depends on PCI && ACPI
> + select SND_SOC_INTEL_SKYLAKE_FAMILY
> + help
> + If you have a Intel CometLake-H platform with the DSP
> + enabled in the BIOS then enable this option by saying Y or m.
> +
> +config SND_SOC_INTEL_CML_LP
> + tristate "CometLake-LP Platforms"
> + depends on PCI && ACPI
> + select SND_SOC_INTEL_SKYLAKE_FAMILY
> + help
> + If you have a Intel CometLake-LP platform with the DSP
> + enabled in the BIOS then enable this option by saying Y or m.
> +
> config SND_SOC_INTEL_SKYLAKE_FAMILY
> tristate
> select SND_SOC_INTEL_SKYLAKE_COMMON
> diff --git a/sound/soc/intel/skylake/skl-messages.c b/sound/soc/intel/skylake/skl-messages.c
> index 4bf70b4429f0..df01dc952521 100644
> --- a/sound/soc/intel/skylake/skl-messages.c
> +++ b/sound/soc/intel/skylake/skl-messages.c
> @@ -255,6 +255,22 @@ static const struct skl_dsp_ops dsp_ops[] = {
> .init_fw = cnl_sst_init_fw,
> .cleanup = cnl_sst_dsp_cleanup
> },
> + {
> + .id = 0x02c8,
> + .num_cores = 4,
> + .loader_ops = bxt_get_loader_ops,
> + .init = cnl_sst_dsp_init,
> + .init_fw = cnl_sst_init_fw,
> + .cleanup = cnl_sst_dsp_cleanup
> + },
> + {
> + .id = 0x06c8,
> + .num_cores = 4,
> + .loader_ops = bxt_get_loader_ops,
> + .init = cnl_sst_dsp_init,
> + .init_fw = cnl_sst_init_fw,
> + .cleanup = cnl_sst_dsp_cleanup
> + },
> };
>
> const struct skl_dsp_ops *skl_get_dsp_ops(int pci_id)
> diff --git a/sound/soc/intel/skylake/skl.c b/sound/soc/intel/skylake/skl.c
> index 4ed5b7e17d44..f864f7b3df3a 100644
> --- a/sound/soc/intel/skylake/skl.c
> +++ b/sound/soc/intel/skylake/skl.c
> @@ -1166,6 +1166,16 @@ static const struct pci_device_id skl_ids[] = {
> /* CFL */
> { PCI_DEVICE(0x8086, 0xa348),
> .driver_data = (unsigned long)&snd_soc_acpi_intel_cnl_machines},
> +#endif
> +#if IS_ENABLED(CONFIG_SND_SOC_INTEL_CML_LP)
> + /* CML-LP */
> + { PCI_DEVICE(0x8086, 0x02c8),
> + .driver_data = (unsigned long)&snd_soc_acpi_intel_cnl_machines},
> +#endif
> +#if IS_ENABLED(CONFIG_SND_SOC_INTEL_CML_H)
> + /* CML-H */
> + { PCI_DEVICE(0x8086, 0x06c8),
> + .driver_data = (unsigned long)&snd_soc_acpi_intel_cnl_machines},
> #endif
> { 0, }
> };
>

\
 
 \ /
  Last update: 2019-05-08 00:32    [W:0.062 / U:0.628 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site