[Sound-open-firmware] SoF support for 8086:9d71?
Hi,
On more recent kernels legacy HDA stops working for device 8086:9d71: [ 47.211381] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100 [ 47.211383] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SST driver
However, only legacy HDA supports it: 00:1f.3 Multimedia audio controller [0401]: Intel Corporation Sunrise Point-LP HD Audio [8086:9d71] (rev 21) .. Kernel modules: snd_hda_intel
Ubuntu kernel doesn't select SND_SOC_INTEL_SKYLAKE, which builds snd-soc-skl, because based on the Kconfig description SOF should support it.
I wonder if SND_SOC_INTEL_SKYLAKE should be select again?
On more recent kernels legacy HDA stops working for device 8086:9d71: [ 47.211381] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100 [ 47.211383] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SST driver
However, only legacy HDA supports it: 00:1f.3 Multimedia audio controller [0401]: Intel Corporation Sunrise Point-LP HD Audio [8086:9d71] (rev 21) .. Kernel modules: snd_hda_intel
Ubuntu kernel doesn't select SND_SOC_INTEL_SKYLAKE, which builds snd-soc-skl, because based on the Kconfig description SOF should support it.
I wonder if SND_SOC_INTEL_SKYLAKE should be select again?
SOF does not support Skylake and Kabylake, and only the Up2 board for APL. I am not sure what you mean by 'recent' kernels since this dynamic selection has been in place for a year now?
At any rate, to make this work again:
1. You can select SND_SOC_INTEL_SKYLAKE or alternatively to be more accurate:
SND_SOC_INTEL_SKL SND_SOC_INTEL_APL SND_SOC_INTEL_KBL
There are known issues with Conexant codecs, typically on HP devices, only Realtek codecs are supported.
2. In addition you will need to have the topology for SKL/KBL w/ HDaudio codecs. It's in alsa-topology-conf but would need to be compiled and installed.
3. UCM files should be already handled in alsa-ucm-conf
Hope this helps -Pierre
On Mon, Dec 14, 2020 at 13:33, Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com wrote:
On more recent kernels legacy HDA stops working for device 8086:9d71: [ 47.211381] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100 [ 47.211383] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SST driver
However, only legacy HDA supports it: 00:1f.3 Multimedia audio controller [0401]: Intel Corporation Sunrise Point-LP HD Audio [8086:9d71] (rev 21) .. Kernel modules: snd_hda_intel
Ubuntu kernel doesn't select SND_SOC_INTEL_SKYLAKE, which builds snd-soc-skl, because based on the Kconfig description SOF should support it.
I wonder if SND_SOC_INTEL_SKYLAKE should be select again?
SOF does not support Skylake and Kabylake, and only the Up2 board for APL. I am not sure what you mean by 'recent' kernels since this dynamic selection has been in place for a year now?
Ubuntu kernel only changed this in 20.10 release.
At any rate, to make this work again:
- You can select SND_SOC_INTEL_SKYLAKE or alternatively to be more
accurate:
SND_SOC_INTEL_SKL SND_SOC_INTEL_APL SND_SOC_INTEL_KBL
There are known issues with Conexant codecs, typically on HP devices, only Realtek codecs are supported.
Right, so we can't really enable this for generic distros like Ubuntu.
Let me think of a more generic solution.
Kai-Heng
- In addition you will need to have the topology for SKL/KBL w/
HDaudio codecs. It's in alsa-topology-conf but would need to be compiled and installed.
- UCM files should be already handled in alsa-ucm-conf
Hope this helps -Pierre
On 12/14/20 9:54 PM, Kai-Heng Feng wrote:
On Mon, Dec 14, 2020 at 13:33, Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com wrote:
On more recent kernels legacy HDA stops working for device 8086:9d71: [ 47.211381] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100 [ 47.211383] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SST driver
However, only legacy HDA supports it: 00:1f.3 Multimedia audio controller [0401]: Intel Corporation Sunrise Point-LP HD Audio [8086:9d71] (rev 21) .. Kernel modules: snd_hda_intel
Ubuntu kernel doesn't select SND_SOC_INTEL_SKYLAKE, which builds snd-soc-skl, because based on the Kconfig description SOF should support it.
I wonder if SND_SOC_INTEL_SKYLAKE should be select again?
SOF does not support Skylake and Kabylake, and only the Up2 board for APL. I am not sure what you mean by 'recent' kernels since this dynamic selection has been in place for a year now?
Ubuntu kernel only changed this in 20.10 release.
At any rate, to make this work again:
- You can select SND_SOC_INTEL_SKYLAKE or alternatively to be more
accurate:
SND_SOC_INTEL_SKL SND_SOC_INTEL_APL SND_SOC_INTEL_KBL
There are known issues with Conexant codecs, typically on HP devices, only Realtek codecs are supported.
Right, so we can't really enable this for generic distros like Ubuntu.
Let me think of a more generic solution.
Re-thinking about this, I actually don't know how this problem occurred: the tables are conditionally built so you would only select SST if you had the drivers compiled in.
see sound/hda/intel-dsp-config.c:
/* Kabylake-LP */ #if IS_ENABLED(CONFIG_SND_SOC_INTEL_KBL) { .flags = FLAG_SST, .device = 0x9d71, .dmi_table = (const struct dmi_system_id []) { { .ident = "Google Chromebooks", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "Google"), } }, {} } }, { .flags = FLAG_SST | FLAG_SST_ONLY_IF_DMIC, .device = 0x9d71, }, #endif
Something's not adding up here.
On 12/15/2020 6:21 PM, Pierre-Louis Bossart wrote:
On 12/14/20 9:54 PM, Kai-Heng Feng wrote:
On Mon, Dec 14, 2020 at 13:33, Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com wrote:
On more recent kernels legacy HDA stops working for device 8086:9d71: [ 47.211381] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100 [ 47.211383] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SST driver
However, only legacy HDA supports it: 00:1f.3 Multimedia audio controller [0401]: Intel Corporation Sunrise Point-LP HD Audio [8086:9d71] (rev 21) .. Kernel modules: snd_hda_intel
Ubuntu kernel doesn't select SND_SOC_INTEL_SKYLAKE, which builds snd-soc-skl, because based on the Kconfig description SOF should support it.
I wonder if SND_SOC_INTEL_SKYLAKE should be select again?
SOF does not support Skylake and Kabylake, and only the Up2 board for APL. I am not sure what you mean by 'recent' kernels since this dynamic selection has been in place for a year now?
Ubuntu kernel only changed this in 20.10 release.
At any rate, to make this work again:
- You can select SND_SOC_INTEL_SKYLAKE or alternatively to be more
accurate:
SND_SOC_INTEL_SKL SND_SOC_INTEL_APL SND_SOC_INTEL_KBL
There are known issues with Conexant codecs, typically on HP devices, only Realtek codecs are supported.
Right, so we can't really enable this for generic distros like Ubuntu.
Let me think of a more generic solution.
Re-thinking about this, I actually don't know how this problem occurred: the tables are conditionally built so you would only select SST if you had the drivers compiled in.
see sound/hda/intel-dsp-config.c:
/* Kabylake-LP */ #if IS_ENABLED(CONFIG_SND_SOC_INTEL_KBL) { .flags = FLAG_SST, .device = 0x9d71, .dmi_table = (const struct dmi_system_id []) { { .ident = "Google Chromebooks", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "Google"), } }, {} } }, { .flags = FLAG_SST | FLAG_SST_ONLY_IF_DMIC, .device = 0x9d71, }, #endif
Something's not adding up here.
Seems like you can enable CONFIG_SND_SOC_INTEL_KBL (and all other platforms), without enabling CONFIG_SND_SOC_INTEL_SKYLAKE, which enables building of snd_soc_skl module... I would say that there is something wrong with module dependencies in Kconfig :/ Will look at it tomorrow. In the meantime any chance we can get the config which was used, to confirm my suspicion?
Thanks, Amadeusz
On Wed, Dec 16, 2020 at 1:48 AM Amadeusz Sławiński amadeuszx.slawinski@linux.intel.com wrote:
On 12/15/2020 6:21 PM, Pierre-Louis Bossart wrote:
On 12/14/20 9:54 PM, Kai-Heng Feng wrote:
On Mon, Dec 14, 2020 at 13:33, Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com wrote:
On more recent kernels legacy HDA stops working for device 8086:9d71: [ 47.211381] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100 [ 47.211383] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SST driver
However, only legacy HDA supports it: 00:1f.3 Multimedia audio controller [0401]: Intel Corporation Sunrise Point-LP HD Audio [8086:9d71] (rev 21) .. Kernel modules: snd_hda_intel
Ubuntu kernel doesn't select SND_SOC_INTEL_SKYLAKE, which builds snd-soc-skl, because based on the Kconfig description SOF should support it.
I wonder if SND_SOC_INTEL_SKYLAKE should be select again?
SOF does not support Skylake and Kabylake, and only the Up2 board for APL. I am not sure what you mean by 'recent' kernels since this dynamic selection has been in place for a year now?
Ubuntu kernel only changed this in 20.10 release.
At any rate, to make this work again:
- You can select SND_SOC_INTEL_SKYLAKE or alternatively to be more
accurate:
SND_SOC_INTEL_SKL SND_SOC_INTEL_APL SND_SOC_INTEL_KBL
There are known issues with Conexant codecs, typically on HP devices, only Realtek codecs are supported.
Right, so we can't really enable this for generic distros like Ubuntu.
Let me think of a more generic solution.
Re-thinking about this, I actually don't know how this problem occurred: the tables are conditionally built so you would only select SST if you had the drivers compiled in.
see sound/hda/intel-dsp-config.c:
/* Kabylake-LP */ #if IS_ENABLED(CONFIG_SND_SOC_INTEL_KBL) { .flags = FLAG_SST, .device = 0x9d71, .dmi_table = (const struct dmi_system_id []) { { .ident = "Google Chromebooks", .matches = { DMI_MATCH(DMI_SYS_VENDOR, "Google"), } }, {} } }, { .flags = FLAG_SST | FLAG_SST_ONLY_IF_DMIC, .device = 0x9d71, }, #endif
Something's not adding up here.
Seems like you can enable CONFIG_SND_SOC_INTEL_KBL (and all other platforms), without enabling CONFIG_SND_SOC_INTEL_SKYLAKE, which enables building of snd_soc_skl module... I would say that there is something wrong with module dependencies in Kconfig :/
Yes that's exactly what happened here. So I wonder why we need to separate CONFIG_SND_SOC_INTEL_SKYLAKE from other configs...
Will look at it tomorrow. In the meantime any chance we can get the config which was used, to confirm my suspicion?
Ubuntu 5.8 kernel has this: # CONFIG_SND_SOC_INTEL_SKYLAKE is not set CONFIG_SND_SOC_INTEL_SKL=m CONFIG_SND_SOC_INTEL_APL=m CONFIG_SND_SOC_INTEL_KBL=m CONFIG_SND_SOC_INTEL_GLK=m # CONFIG_SND_SOC_INTEL_CNL is not set # CONFIG_SND_SOC_INTEL_CFL is not set # CONFIG_SND_SOC_INTEL_CML_H is not set # CONFIG_SND_SOC_INTEL_CML_LP is not set CONFIG_SND_SOC_INTEL_SKYLAKE_FAMILY=m CONFIG_SND_SOC_INTEL_SKYLAKE_SSP_CLK=m # CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC is not set CONFIG_SND_SOC_INTEL_SKYLAKE_COMMON=m
So I guess we can do something like this? diff --git a/sound/hda/intel-dsp-config.c b/sound/hda/intel-dsp-config.c index 1c5114dedda9..c8142520532e 100644 --- a/sound/hda/intel-dsp-config.c +++ b/sound/hda/intel-dsp-config.c @@ -417,7 +417,7 @@ int snd_intel_dsp_driver_probe(struct pci_dev *pci) return SND_INTEL_DSP_DRIVER_SOF; }
- +#if IS_REACHABLE(CONFIG_SND_SOC_INTEL_SKYLAKE) if (cfg->flags & FLAG_SST) { if (cfg->flags & FLAG_SST_ONLY_IF_DMIC) { if (snd_intel_dsp_check_dmic(pci)) { @@ -428,6 +428,7 @@ int snd_intel_dsp_driver_probe(struct pci_dev *pci) return SND_INTEL_DSP_DRIVER_SST; } } +#endif
return SND_INTEL_DSP_DRIVER_LEGACY; }
Kai-Heng
Thanks, Amadeusz
Something's not adding up here.
Seems like you can enable CONFIG_SND_SOC_INTEL_KBL (and all other platforms), without enabling CONFIG_SND_SOC_INTEL_SKYLAKE, which enables building of snd_soc_skl module... I would say that there is something wrong with module dependencies in Kconfig :/
rather the Makefile is wrong, see below.
Yes that's exactly what happened here. So I wonder why we need to separate CONFIG_SND_SOC_INTEL_SKYLAKE from other configs...
Will look at it tomorrow. In the meantime any chance we can get the config which was used, to confirm my suspicion?
Ubuntu 5.8 kernel has this: # CONFIG_SND_SOC_INTEL_SKYLAKE is not set CONFIG_SND_SOC_INTEL_SKL=m CONFIG_SND_SOC_INTEL_APL=m CONFIG_SND_SOC_INTEL_KBL=m CONFIG_SND_SOC_INTEL_GLK=m # CONFIG_SND_SOC_INTEL_CNL is not set # CONFIG_SND_SOC_INTEL_CFL is not set # CONFIG_SND_SOC_INTEL_CML_H is not set # CONFIG_SND_SOC_INTEL_CML_LP is not set CONFIG_SND_SOC_INTEL_SKYLAKE_FAMILY=m CONFIG_SND_SOC_INTEL_SKYLAKE_SSP_CLK=m # CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC is not set
that would be needed to support DMIC+HDaudio platforms (with the Connexant restriction).
CONFIG_SND_SOC_INTEL_SKYLAKE_COMMON=m
So I guess we can do something like this? diff --git a/sound/hda/intel-dsp-config.c b/sound/hda/intel-dsp-config.c index 1c5114dedda9..c8142520532e 100644 --- a/sound/hda/intel-dsp-config.c +++ b/sound/hda/intel-dsp-config.c @@ -417,7 +417,7 @@ int snd_intel_dsp_driver_probe(struct pci_dev *pci) return SND_INTEL_DSP_DRIVER_SOF; }
+#if IS_REACHABLE(CONFIG_SND_SOC_INTEL_SKYLAKE) if (cfg->flags & FLAG_SST) { if (cfg->flags & FLAG_SST_ONLY_IF_DMIC) { if (snd_intel_dsp_check_dmic(pci)) { @@ -428,6 +428,7 @@ int snd_intel_dsp_driver_probe(struct pci_dev *pci) return SND_INTEL_DSP_DRIVER_SST; } } +#endif
return SND_INTEL_DSP_DRIVER_LEGACY;
}
Kai-Heng
Can you try this instead, the dependencies are indeed wrong in the Makefile:
diff --git a/sound/soc/intel/Makefile b/sound/soc/intel/Makefile index 4e0248d2accc..7c5038803be7 100644 --- a/sound/soc/intel/Makefile +++ b/sound/soc/intel/Makefile @@ -5,7 +5,7 @@ obj-$(CONFIG_SND_SOC) += common/ # Platform Support obj-$(CONFIG_SND_SST_ATOM_HIFI2_PLATFORM) += atom/ obj-$(CONFIG_SND_SOC_INTEL_CATPT) += catpt/ -obj-$(CONFIG_SND_SOC_INTEL_SKYLAKE) += skylake/ +obj-$(CONFIG_SND_SOC_INTEL_SKYLAKE_COMMON) += skylake/ obj-$(CONFIG_SND_SOC_INTEL_KEEMBAY) += keembay/
# Machine support
On Wed, Dec 16, 2020 at 1:59 AM Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com wrote:
Something's not adding up here.
Seems like you can enable CONFIG_SND_SOC_INTEL_KBL (and all other platforms), without enabling CONFIG_SND_SOC_INTEL_SKYLAKE, which enables building of snd_soc_skl module... I would say that there is something wrong with module dependencies in Kconfig :/
rather the Makefile is wrong, see below.
Yes that's exactly what happened here. So I wonder why we need to separate CONFIG_SND_SOC_INTEL_SKYLAKE from other configs...
Will look at it tomorrow. In the meantime any chance we can get the config which was used, to confirm my suspicion?
Ubuntu 5.8 kernel has this: # CONFIG_SND_SOC_INTEL_SKYLAKE is not set CONFIG_SND_SOC_INTEL_SKL=m CONFIG_SND_SOC_INTEL_APL=m CONFIG_SND_SOC_INTEL_KBL=m CONFIG_SND_SOC_INTEL_GLK=m # CONFIG_SND_SOC_INTEL_CNL is not set # CONFIG_SND_SOC_INTEL_CFL is not set # CONFIG_SND_SOC_INTEL_CML_H is not set # CONFIG_SND_SOC_INTEL_CML_LP is not set CONFIG_SND_SOC_INTEL_SKYLAKE_FAMILY=m CONFIG_SND_SOC_INTEL_SKYLAKE_SSP_CLK=m # CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC is not set
that would be needed to support DMIC+HDaudio platforms (with the Connexant restriction).
So should I enable this option? Is it safe for platforms with Connexant codec?
CONFIG_SND_SOC_INTEL_SKYLAKE_COMMON=m
So I guess we can do something like this? diff --git a/sound/hda/intel-dsp-config.c b/sound/hda/intel-dsp-config.c index 1c5114dedda9..c8142520532e 100644 --- a/sound/hda/intel-dsp-config.c +++ b/sound/hda/intel-dsp-config.c @@ -417,7 +417,7 @@ int snd_intel_dsp_driver_probe(struct pci_dev *pci) return SND_INTEL_DSP_DRIVER_SOF; }
+#if IS_REACHABLE(CONFIG_SND_SOC_INTEL_SKYLAKE) if (cfg->flags & FLAG_SST) { if (cfg->flags & FLAG_SST_ONLY_IF_DMIC) { if (snd_intel_dsp_check_dmic(pci)) { @@ -428,6 +428,7 @@ int snd_intel_dsp_driver_probe(struct pci_dev *pci) return SND_INTEL_DSP_DRIVER_SST; } } +#endif
return SND_INTEL_DSP_DRIVER_LEGACY;
}
Kai-Heng
Can you try this instead, the dependencies are indeed wrong in the Makefile:
Ok, compiling a kernel for user to test...
Kai-Heng
diff --git a/sound/soc/intel/Makefile b/sound/soc/intel/Makefile index 4e0248d2accc..7c5038803be7 100644 --- a/sound/soc/intel/Makefile +++ b/sound/soc/intel/Makefile @@ -5,7 +5,7 @@ obj-$(CONFIG_SND_SOC) += common/ # Platform Support obj-$(CONFIG_SND_SST_ATOM_HIFI2_PLATFORM) += atom/ obj-$(CONFIG_SND_SOC_INTEL_CATPT) += catpt/ -obj-$(CONFIG_SND_SOC_INTEL_SKYLAKE) += skylake/ +obj-$(CONFIG_SND_SOC_INTEL_SKYLAKE_COMMON) += skylake/ obj-$(CONFIG_SND_SOC_INTEL_KEEMBAY) += keembay/
# Machine support
On Wed, Dec 16, 2020 at 11:55 AM Kai-Heng Feng kai.heng.feng@canonical.com wrote:
On Wed, Dec 16, 2020 at 1:59 AM Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com wrote:
Something's not adding up here.
Seems like you can enable CONFIG_SND_SOC_INTEL_KBL (and all other platforms), without enabling CONFIG_SND_SOC_INTEL_SKYLAKE, which enables building of snd_soc_skl module... I would say that there is something wrong with module dependencies in Kconfig :/
rather the Makefile is wrong, see below.
Yes that's exactly what happened here. So I wonder why we need to separate CONFIG_SND_SOC_INTEL_SKYLAKE from other configs...
Will look at it tomorrow. In the meantime any chance we can get the config which was used, to confirm my suspicion?
Ubuntu 5.8 kernel has this: # CONFIG_SND_SOC_INTEL_SKYLAKE is not set CONFIG_SND_SOC_INTEL_SKL=m CONFIG_SND_SOC_INTEL_APL=m CONFIG_SND_SOC_INTEL_KBL=m CONFIG_SND_SOC_INTEL_GLK=m # CONFIG_SND_SOC_INTEL_CNL is not set # CONFIG_SND_SOC_INTEL_CFL is not set # CONFIG_SND_SOC_INTEL_CML_H is not set # CONFIG_SND_SOC_INTEL_CML_LP is not set CONFIG_SND_SOC_INTEL_SKYLAKE_FAMILY=m CONFIG_SND_SOC_INTEL_SKYLAKE_SSP_CLK=m # CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC is not set
that would be needed to support DMIC+HDaudio platforms (with the Connexant restriction).
So should I enable this option? Is it safe for platforms with Connexant codec?
CONFIG_SND_SOC_INTEL_SKYLAKE_COMMON=m
So I guess we can do something like this? diff --git a/sound/hda/intel-dsp-config.c b/sound/hda/intel-dsp-config.c index 1c5114dedda9..c8142520532e 100644 --- a/sound/hda/intel-dsp-config.c +++ b/sound/hda/intel-dsp-config.c @@ -417,7 +417,7 @@ int snd_intel_dsp_driver_probe(struct pci_dev *pci) return SND_INTEL_DSP_DRIVER_SOF; }
+#if IS_REACHABLE(CONFIG_SND_SOC_INTEL_SKYLAKE) if (cfg->flags & FLAG_SST) { if (cfg->flags & FLAG_SST_ONLY_IF_DMIC) { if (snd_intel_dsp_check_dmic(pci)) { @@ -428,6 +428,7 @@ int snd_intel_dsp_driver_probe(struct pci_dev *pci) return SND_INTEL_DSP_DRIVER_SST; } } +#endif
return SND_INTEL_DSP_DRIVER_LEGACY;
}
Kai-Heng
Can you try this instead, the dependencies are indeed wrong in the Makefile:
Ok, compiling a kernel for user to test...
Well, this happens: ERROR: modpost: "skl_dsp_set_dma_control" [sound/soc/intel/skylake/snd-soc-skl-ssp-clk.ko] undefined! make[1]: *** [scripts/Makefile.modpost:111: sound/Module.symvers] Error 1 make[1]: *** Deleting file 'sound/Module.symvers' make: *** [Makefile:1709: modules] Error 2
Kai-Heng
Kai-Heng
diff --git a/sound/soc/intel/Makefile b/sound/soc/intel/Makefile index 4e0248d2accc..7c5038803be7 100644 --- a/sound/soc/intel/Makefile +++ b/sound/soc/intel/Makefile @@ -5,7 +5,7 @@ obj-$(CONFIG_SND_SOC) += common/ # Platform Support obj-$(CONFIG_SND_SST_ATOM_HIFI2_PLATFORM) += atom/ obj-$(CONFIG_SND_SOC_INTEL_CATPT) += catpt/ -obj-$(CONFIG_SND_SOC_INTEL_SKYLAKE) += skylake/ +obj-$(CONFIG_SND_SOC_INTEL_SKYLAKE_COMMON) += skylake/ obj-$(CONFIG_SND_SOC_INTEL_KEEMBAY) += keembay/
# Machine support
On 12/17/2020 9:25 AM, Kai-Heng Feng wrote: (...)
Can you try this instead, the dependencies are indeed wrong in the Makefile:
Ok, compiling a kernel for user to test...
Well, this happens: ERROR: modpost: "skl_dsp_set_dma_control" [sound/soc/intel/skylake/snd-soc-skl-ssp-clk.ko] undefined! make[1]: *** [scripts/Makefile.modpost:111: sound/Module.symvers] Error 1 make[1]: *** Deleting file 'sound/Module.symvers' make: *** [Makefile:1709: modules] Error 2
Kai-Heng
Kai-Heng
diff --git a/sound/soc/intel/Makefile b/sound/soc/intel/Makefile index 4e0248d2accc..7c5038803be7 100644 --- a/sound/soc/intel/Makefile +++ b/sound/soc/intel/Makefile @@ -5,7 +5,7 @@ obj-$(CONFIG_SND_SOC) += common/ # Platform Support obj-$(CONFIG_SND_SST_ATOM_HIFI2_PLATFORM) += atom/ obj-$(CONFIG_SND_SOC_INTEL_CATPT) += catpt/ -obj-$(CONFIG_SND_SOC_INTEL_SKYLAKE) += skylake/ +obj-$(CONFIG_SND_SOC_INTEL_SKYLAKE_COMMON) += skylake/ obj-$(CONFIG_SND_SOC_INTEL_KEEMBAY) += keembay/
# Machine support
Hi,
what is the status of this issue? Does it now work with usptream kernel? Can you provide full .config, so we can test on our side?
Amadeusz
participants (3)
-
Amadeusz Sławiński
-
Kai-Heng Feng
-
Pierre-Louis Bossart