* SoF support for 8086:9d71? @ 2020-12-14 16:51 Kai-Heng Feng 2020-12-14 19:33 ` [Sound-open-firmware] " Pierre-Louis Bossart 0 siblings, 1 reply; 11+ messages in thread From: Kai-Heng Feng @ 2020-12-14 16:51 UTC (permalink / raw) To: sound-open-firmware; +Cc: SOUND 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? BugLink: <https://bugs.launchpad.net/bugs/1902457> ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Sound-open-firmware] SoF support for 8086:9d71? 2020-12-14 16:51 SoF support for 8086:9d71? Kai-Heng Feng @ 2020-12-14 19:33 ` Pierre-Louis Bossart 2020-12-15 3:54 ` Kai-Heng Feng 0 siblings, 1 reply; 11+ messages in thread From: Pierre-Louis Bossart @ 2020-12-14 19:33 UTC (permalink / raw) To: Kai-Heng Feng, sound-open-firmware; +Cc: SOUND > 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 ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Sound-open-firmware] SoF support for 8086:9d71? 2020-12-14 19:33 ` [Sound-open-firmware] " Pierre-Louis Bossart @ 2020-12-15 3:54 ` Kai-Heng Feng 2020-12-15 17:21 ` Pierre-Louis Bossart 0 siblings, 1 reply; 11+ messages in thread From: Kai-Heng Feng @ 2020-12-15 3:54 UTC (permalink / raw) To: Pierre-Louis Bossart; +Cc: SOUND, sound-open-firmware 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 >> \x7fclass/subclass/prog-if info 0x040100 >> [ 47.211383] snd_hda_intel 0000:00:1f.3: Digital mics found on >> \x7fSkylake+ platform, using SST driver >> >> However, only legacy HDA supports it: >> 00:1f.3 Multimedia audio controller [0401]: Intel Corporation >> Sunrise \x7fPoint-LP HD Audio [8086:9d71] (rev 21) >> .. >> Kernel modules: snd_hda_intel >> >> Ubuntu kernel doesn't select SND_SOC_INTEL_SKYLAKE, which builds >> \x7fsnd-soc-skl, because based on the Kconfig description SOF should >> support \x7fit. >> >> 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: > > 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. Right, so we can't really enable this for generic distros like Ubuntu. Let me think of a more generic solution. Kai-Heng > > 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 ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Sound-open-firmware] SoF support for 8086:9d71? 2020-12-15 3:54 ` Kai-Heng Feng @ 2020-12-15 17:21 ` Pierre-Louis Bossart 2020-12-15 17:48 ` Amadeusz Sławiński 0 siblings, 1 reply; 11+ messages in thread From: Pierre-Louis Bossart @ 2020-12-15 17:21 UTC (permalink / raw) To: Kai-Heng Feng; +Cc: SOUND, sound-open-firmware 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 >>> \x7fclass/subclass/prog-if info 0x040100 >>> [ 47.211383] snd_hda_intel 0000:00:1f.3: Digital mics found on >>> \x7fSkylake+ platform, using SST driver >>> >>> However, only legacy HDA supports it: >>> 00:1f.3 Multimedia audio controller [0401]: Intel Corporation >>> Sunrise \x7fPoint-LP HD Audio [8086:9d71] (rev 21) >>> .. >>> Kernel modules: snd_hda_intel >>> >>> Ubuntu kernel doesn't select SND_SOC_INTEL_SKYLAKE, which builds >>> \x7fsnd-soc-skl, because based on the Kconfig description SOF should >>> support \x7fit. >>> >>> 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: >> >> 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. > > 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. ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Sound-open-firmware] SoF support for 8086:9d71? 2020-12-15 17:21 ` Pierre-Louis Bossart @ 2020-12-15 17:48 ` Amadeusz Sławiński 2020-12-15 17:53 ` Kai-Heng Feng 0 siblings, 1 reply; 11+ messages in thread From: Amadeusz Sławiński @ 2020-12-15 17:48 UTC (permalink / raw) To: Pierre-Louis Bossart, Kai-Heng Feng; +Cc: SOUND, sound-open-firmware 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 >>>> \x7fclass/subclass/prog-if info 0x040100 >>>> [ 47.211383] snd_hda_intel 0000:00:1f.3: Digital mics found on >>>> \x7fSkylake+ platform, using SST driver >>>> >>>> However, only legacy HDA supports it: >>>> 00:1f.3 Multimedia audio controller [0401]: Intel Corporation >>>> Sunrise \x7fPoint-LP HD Audio [8086:9d71] (rev 21) >>>> .. >>>> Kernel modules: snd_hda_intel >>>> >>>> Ubuntu kernel doesn't select SND_SOC_INTEL_SKYLAKE, which builds >>>> \x7fsnd-soc-skl, because based on the Kconfig description SOF should >>>> support \x7fit. >>>> >>>> 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: >>> >>> 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. >> >> 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 ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Sound-open-firmware] SoF support for 8086:9d71? 2020-12-15 17:48 ` Amadeusz Sławiński @ 2020-12-15 17:53 ` Kai-Heng Feng 2020-12-15 17:59 ` Pierre-Louis Bossart 0 siblings, 1 reply; 11+ messages in thread From: Kai-Heng Feng @ 2020-12-15 17:53 UTC (permalink / raw) To: Amadeusz Sławiński Cc: SOUND, Pierre-Louis Bossart, sound-open-firmware 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: > >>> > >>> 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. > >> > >> 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 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [Sound-open-firmware] SoF support for 8086:9d71? 2020-12-15 17:53 ` Kai-Heng Feng @ 2020-12-15 17:59 ` Pierre-Louis Bossart 2020-12-16 3:55 ` Kai-Heng Feng 0 siblings, 1 reply; 11+ messages in thread From: Pierre-Louis Bossart @ 2020-12-15 17:59 UTC (permalink / raw) To: Kai-Heng Feng, Amadeusz Sławiński; +Cc: SOUND, sound-open-firmware >>> 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 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [Sound-open-firmware] SoF support for 8086:9d71? 2020-12-15 17:59 ` Pierre-Louis Bossart @ 2020-12-16 3:55 ` Kai-Heng Feng 2020-12-17 8:25 ` Kai-Heng Feng 0 siblings, 1 reply; 11+ messages in thread From: Kai-Heng Feng @ 2020-12-16 3:55 UTC (permalink / raw) To: Pierre-Louis Bossart Cc: SOUND, sound-open-firmware, Amadeusz Sławiński 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 > > ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Sound-open-firmware] SoF support for 8086:9d71? 2020-12-16 3:55 ` Kai-Heng Feng @ 2020-12-17 8:25 ` Kai-Heng Feng 2021-01-12 13:25 ` Amadeusz Sławiński 0 siblings, 1 reply; 11+ messages in thread From: Kai-Heng Feng @ 2020-12-17 8:25 UTC (permalink / raw) To: Pierre-Louis Bossart Cc: SOUND, sound-open-firmware, Amadeusz Sławiński 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 > > > > ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Sound-open-firmware] SoF support for 8086:9d71? 2020-12-17 8:25 ` Kai-Heng Feng @ 2021-01-12 13:25 ` Amadeusz Sławiński [not found] ` <CAAd53p7OHhqXDJDuEamXwfseXiUdGfDsJhNJbdUYo_4uoBdzdQ@mail.gmail.com> 0 siblings, 1 reply; 11+ messages in thread From: Amadeusz Sławiński @ 2021-01-12 13:25 UTC (permalink / raw) To: Kai-Heng Feng, Pierre-Louis Bossart; +Cc: SOUND, sound-open-firmware 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 ^ permalink raw reply [flat|nested] 11+ messages in thread
[parent not found: <CAAd53p7OHhqXDJDuEamXwfseXiUdGfDsJhNJbdUYo_4uoBdzdQ@mail.gmail.com>]
* Re: [Sound-open-firmware] SoF support for 8086:9d71? [not found] ` <CAAd53p7OHhqXDJDuEamXwfseXiUdGfDsJhNJbdUYo_4uoBdzdQ@mail.gmail.com> @ 2021-01-13 13:44 ` Amadeusz Sławiński 0 siblings, 0 replies; 11+ messages in thread From: Amadeusz Sławiński @ 2021-01-13 13:44 UTC (permalink / raw) To: Kai-Heng Feng Cc: SOUND, Pierre-Louis Bossart, moderated list:SOUND - SOUND OPEN FIRMWARE (SOF) DRIVERS On 1/13/2021 5:48 AM, Kai-Heng Feng wrote: > On Tue, Jan 12, 2021 at 9:25 PM Amadeusz Sławiński > <amadeuszx.slawinski@linux.intel.com> wrote: >> >> 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? > > Still the same, unresolved. > >> Does it now work with usptream kernel? > > No it doesn't. > Can you try with following patch: 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 diff --git a/sound/soc/intel/skylake/Makefile b/sound/soc/intel/skylake/Makefile index dd39149b89b1..1c4649bccec5 100644 --- a/sound/soc/intel/skylake/Makefile +++ b/sound/soc/intel/skylake/Makefile @@ -7,7 +7,7 @@ ifdef CONFIG_DEBUG_FS snd-soc-skl-objs += skl-debug.o endif -obj-$(CONFIG_SND_SOC_INTEL_SKYLAKE) += snd-soc-skl.o +obj-$(CONFIG_SND_SOC_INTEL_SKYLAKE_COMMON) += snd-soc-skl.o #Skylake Clock device support snd-soc-skl-ssp-clk-objs := skl-ssp-clk.o ^ permalink raw reply related [flat|nested] 11+ messages in thread
end of thread, other threads:[~2021-01-13 13:46 UTC | newest] Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2020-12-14 16:51 SoF support for 8086:9d71? Kai-Heng Feng 2020-12-14 19:33 ` [Sound-open-firmware] " Pierre-Louis Bossart 2020-12-15 3:54 ` Kai-Heng Feng 2020-12-15 17:21 ` Pierre-Louis Bossart 2020-12-15 17:48 ` Amadeusz Sławiński 2020-12-15 17:53 ` Kai-Heng Feng 2020-12-15 17:59 ` Pierre-Louis Bossart 2020-12-16 3:55 ` Kai-Heng Feng 2020-12-17 8:25 ` Kai-Heng Feng 2021-01-12 13:25 ` Amadeusz Sławiński [not found] ` <CAAd53p7OHhqXDJDuEamXwfseXiUdGfDsJhNJbdUYo_4uoBdzdQ@mail.gmail.com> 2021-01-13 13:44 ` Amadeusz Sławiński
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.