Em Thu, 23 Dec 2021 12:45:15 +0100 Mauro Carvalho Chehab <mchehab@xxxxxxxxxx> escreveu: > Hi Pierre-Louis, > > Em Mon, 22 Nov 2021 10:45:35 -0600 > Pierre-Louis Bossart <pierre-louis.bossart@xxxxxxxxxxxxxxx> escreveu: > > > Hi Mauro, > > > > >> Add machine driver to support APL/GLK/TGL platforms. > > >> The TGL platform supports DMIC, APL and GLK do not. > > > > > > I just bought a Comet Lake notebook with ES8336, but I'm having a hard > > > time to make audio work on it. > > > > Yes, we're aware of this design and we've tried to help. There's a > > series of devices based on this I2C/I2S device, which is the exception > > to the rule that all Windows-based designs are based on HDaudio or > > SoundWire. Intel wasn't informed of this device so we we've added quirks > > device after device, as bug reports came in. > > > > The CometLake enablement is tracked at > > https://github.com/thesofproject/linux/issues/3248 > > > > I will upstream the two quirks for CometLake later today. > > > > The latest hacky recipe to get the driver to probe is at > > https://github.com/thesofproject/linux/pull/3107 > > > > There is still work to do for the 'topology' part. The comment > > https://github.com/thesofproject/linux/issues/3248#issuecomment-959573378 has > > a tar file with 3 possible options for the I2S/SSP connection. > > > > The remaining part will be the codec driver, which is problematic for > > now, we're still waiting for updates from the vendor and it's unclear > > if/when they will be submitted. > > Sorry for taking a long time to answer. I lost access to the notebook, > due to a travel. > > I applied all "es8336" branches from your tree altogether: > > 8af10fc5d7f4 (HEAD) Merge remote-tracking branch 'plbossart/fix/es8336-codec' into HEAD > f47dc3daf1da Merge remote-tracking branch 'plbossart/fix/es8336-cml' into HEAD > b8df4ae02c0a Merge remote-tracking branch 'plbossart/fix/es8336-acpi-hid' into HEAD > 5e149dc4d6e9 (plbossart/fix/sof-es8336-quirk) fixup! ALSA: intel-nhlt: add helper to detect SSP link mask > > Unfortunately, it is failing to modprobe the SOF driver: > > [ 3.479810] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100 > [ 3.479828] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver > [ 3.479830] [681] snd_hda_intel 0000:00:1f.3: HDAudio driver not selected, aborting probe > [ 3.655569] snd_soc_skl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100 > [ 3.655587] snd_soc_skl 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver > [ 3.706810] RPC: Registered named UNIX socket transport module. > [ 3.730708] sof-audio-pci-intel-cnl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100 > [ 3.730728] sof-audio-pci-intel-cnl 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver > [ 3.730952] sof-audio-pci-intel-cnl 0000:00:1f.3: enabling device (0000 -> 0002) > [ 3.731103] sof-audio-pci-intel-cnl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040100 > [ 3.731204] sof-audio-pci-intel-cnl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915]) > [ 3.741143] sof-audio-pci-intel-cnl 0000:00:1f.3: use msi interrupt mode > [ 3.791894] [80] sof-audio-pci-intel-cnl 0000:00:1f.3: intel_nhlt_get_dmic_geo: found 2 format definitions > [ 3.791898] [80] sof-audio-pci-intel-cnl 0000:00:1f.3: intel_nhlt_get_dmic_geo: max channels found 2 > [ 3.791900] [80] sof-audio-pci-intel-cnl 0000:00:1f.3: intel_nhlt_get_dmic_geo: Array with 2 dmics > [ 3.791902] [80] sof-audio-pci-intel-cnl 0000:00:1f.3: intel_nhlt_get_dmic_geo: dmic number 2 max_ch 2 > [ 3.791904] sof-audio-pci-intel-cnl 0000:00:1f.3: hda codecs found, mask 4 > [ 3.793102] sof-audio-pci-intel-cnl 0000:00:1f.3: Firmware info: version 1:9:2-e096c > [ 3.793108] sof-audio-pci-intel-cnl 0000:00:1f.3: Firmware: ABI 3:20:0 Kernel ABI 3:18:0 > [ 3.793110] sof-audio-pci-intel-cnl 0000:00:1f.3: warn: FW ABI is more recent than kernel > [ 3.793114] sof-audio-pci-intel-cnl 0000:00:1f.3: unknown sof_ext_man header type 3 size 0x30 > [ 3.852602] Bluetooth: BNEP socket layer initialized > [ 3.891581] sof-audio-pci-intel-cnl 0000:00:1f.3: Firmware info: version 1:9:2-e096c > [ 3.891585] sof-audio-pci-intel-cnl 0000:00:1f.3: Firmware: ABI 3:20:0 Kernel ABI 3:18:0 > [ 3.891588] sof-audio-pci-intel-cnl 0000:00:1f.3: warn: FW ABI is more recent than kernel > [ 3.901310] sof-essx8336 sof-essx8336: quirk SSP2 > [ 3.903162] sof-audio-pci-intel-cnl 0000:00:1f.3: Topology: ABI 3:20:0 Kernel ABI 3:18:0 > [ 3.903167] sof-audio-pci-intel-cnl 0000:00:1f.3: warn: topology ABI is more recent than kernel > [ 3.903180] sof-audio-pci-intel-cnl 0000:00:1f.3: error: can't connect DAI SSP0.OUT stream SSP0-Codec > [ 3.903182] sof-audio-pci-intel-cnl 0000:00:1f.3: error: failed to add widget id 0 type 27 name : SSP0.OUT stream SSP0-Codec > [ 3.903184] sof-essx8336 sof-essx8336: ASoC: failed to load widget SSP0.OUT > [ 3.903185] sof-essx8336 sof-essx8336: ASoC: topology: could not load header: -22 > [ 3.903187] sof-audio-pci-intel-cnl 0000:00:1f.3: error: tplg component load failed -22 > [ 3.903191] sof-audio-pci-intel-cnl 0000:00:1f.3: error: failed to load DSP topology -22 > [ 3.903193] sof-audio-pci-intel-cnl 0000:00:1f.3: ASoC: error at snd_soc_component_probe on 0000:00:1f.3: -22 > [ 3.903201] sof-essx8336 sof-essx8336: ASoC: failed to instantiate card -22 > [ 3.903302] sof-essx8336 sof-essx8336: snd_soc_register_card failed: -22 > [ 3.903304] sof-essx8336: probe of sof-essx8336 failed with error -22 > > Any hints about how to fix the topology issues on it? Adding a quirk to modprobe partially solved the issue: https://github.com/thesofproject/linux/issues/3248#issuecomment-1000275241 With that, the speaker is now working fine, but microphone is marked as unavailable, and headphones aren't working yet. Thanks, Mauro