Public bug reported:

Summary
-------
On a Medion laptop with Intel Gemini Lake audio (8086:3198) and an ESS ES8336
codec, no sound card is created at all: the SOF machine driver
sof-essx8336 fails with -EPROBE_DEFER (-517) and never recovers, because the
codec driver snd-soc-es8336 is missing from the generic kernel. The es8316
codec driver (wrong chip, same ACPI HID "ESSX8336") binds to the I2C device
instead.

Hardware
--------
Laptop: Medion [MODEL / MD REFERENCE]
Audio controller: Intel Celeron/Pentium Silver High Definition Audio 
[8086:3198] (rev 06)
Codec: ESS ES8336, enumerated as i2c device ESSX8336:00
Kernel: 7.0.0-38-generic (Ubuntu resolute, all repos up to date)

Evidence
--------
1. No sound card:
   $ cat /proc/asound/cards
   --- no soundcards ---

2. Machine driver defers forever:
   $ sudo dmesg | grep -i essx
   [   13.643789] sof-essx8336 sof-essx8336: snd_soc_register_card failed: -517
   [   23.784549] sof-essx8336 sof-essx8336: snd_soc_register_card failed: -517

3. Codec is present on the I2C bus, but bound to the wrong driver:
   $ ls -l /sys/bus/i2c/devices/i2c-ESSX8336:00/
   lrwxrwxrwx ... driver -> ../../../../../../bus/i2c/drivers/es8316

4. The codec module does not exist in the package; only machine drivers do:
   $ find /lib/modules/$(uname -r) -name '*es8336*'
   .../kernel/sound/soc/amd/snd-soc-acp-es8336-mach.ko.zst
   .../kernel/sound/soc/intel/boards/snd-soc-sof_es8336.ko.zst
   .../kernel/sound/soc/intel/avs/boards/snd-soc-avs-es8336.ko.zst
   $ modinfo snd_soc_es8336
   modinfo: ERROR: Module snd_soc_es8336 not found.

5. Kernel config enables the ES8336 machine drivers but not the codec driver
   itself — no CONFIG_SND_SOC_ES8336 line at all:
   $ grep -i es8336 /boot/config-$(uname -r)
   CONFIG_SND_SOC_AMD_ST_ES8336_MACH=m
   CONFIG_SND_SOC_INTEL_AVS_MACH_ES8336=m
   CONFIG_SND_SOC_INTEL_SOF_ES8336_MACH=m

6. SOF firmware and topologies for Gemini Lake + ES8336 are present:
   /lib/firmware/intel/sof/sof-glk.ri
   /lib/firmware/intel/sof-tplg/sof-glk-es8336*.tplg

Analysis
--------
The three *_MACH options above select the machine drivers, which depend on
the es8336 codec driver. Enabling the machine drivers without
CONFIG_SND_SOC_ES8336 is inconsistent: the machine driver probes, defers
waiting for a codec component that the kernel cannot provide, and the audio
device is entirely broken (no playback, no mic). Additionally, since
snd-soc-es8316 also claims ACPI HID ESSX8336, it binds to the codec, so even
shipping the es8336 module alone may require making sure the correct driver
wins the match.

This affects an entire family of low-cost Gemini Lake laptops
(Celeron/Pentium Silver N-series + ES8336, common on Medion/Akoya devices).

Requested fix
-------------
Enable CONFIG_SND_SOC_ES8336=m in the generic (and signed/unsigned variants)
kernel config. Users may also need to blacklist es8316 to avoid the wrong
ACPI-HID match on affected machines.

Workarounds tried
-----------------
- linux-modules-extra does not exist for 7.0.0-38 in resolute repos.
- linux-generic / linux-generic-hwe-26.04 point to the same 7.0.0-38 kernel.
- Blacklisting es8316 leaves the codec unbound but still no sound card,
  as expected without the es8336 codec module.

ProblemType: Bug
DistroRelease: Ubuntu 26.04
Package: linux-image-7.0.0-38-generic 7.0.0-38.38
ProcVersionSignature: Ubuntu 7.0.0-38.38-generic 7.0.14
Uname: Linux 7.0.0-38-generic x86_64
ApportVersion: 2.34.1-0ubuntu0.1
Architecture: amd64
AudioDevicesInUse:
 USER        PID ACCESS COMMAND
 /dev/snd/seq:        ben        2375 F.... pipewire
CasperMD5CheckResult: unknown
CurrentDesktop: X-Cinnamon
Date: Tue Oct 27 12:36:34 2026
InstallationDate: Installed on 2026-10-25 (2 days ago)
InstallationMedia: Ubuntu 26.04.1 LTS "Resolute Raccoon" - Release amd64 
(20260826)
MachineType: MEDION E14223
ProcEnviron:
 LANG=fr_FR.UTF-8
 PATH=(custom, no user)
 SHELL=/bin/bash
 TERM=xterm-256color
 XDG_RUNTIME_DIR=<set>
ProcFB: 0 simpledrmdrmfb
ProcKernelCmdLine: root=UUID=5064b816-7c46-4111-a0da-30ba489e66b3 ro nomodeset 
initrd=\EFI\ubuntu-direct\initrd.img
PulseList: Error: command ['pacmd', 'list'] failed with exit code 1: No 
PulseAudio daemon running, or not running as session daemon.
SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 05/30/2024
dmi.bios.release: 5.13
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: GeminiLake_NP14G_V1.0.18
dmi.board.asset.tag: Default string
dmi.board.name: NP14G
dmi.board.vendor: MEDION
dmi.board.version: 3.0
dmi.chassis.asset.tag: Default string
dmi.chassis.type: 10
dmi.chassis.vendor: MEDION
dmi.chassis.version: Default string
dmi.modalias: 
dmi:bvnAmericanMegatrendsInc.:bvrGeminiLake_NP14G_V1.0.18:bd05/30/2024:br5.13:svnMEDION:pnE14223:pvrNONE:rvnMEDION:rnNP14G:rvr3.0:cvnMEDION:ct10:cvrDefaultstring:skuML-23000730035746:pfaAKOYA:
dmi.product.family: AKOYA
dmi.product.name: E14223
dmi.product.sku: ML-230007 30035746
dmi.product.version: NONE
dmi.sys.vendor: MEDION

** Affects: linux (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug resolute

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2172305

Title:
  [regression] snd-soc-es8336 codec driver missing from generic kernel
  config — sof-essx8336 card fails with -517, ES8336 wrongly bound to
  es8316

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2172305/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to