Skip to content

No speaker output on TECNO Megabook S14 (Meteor Lake): SOF falls back to generic skl_hda_dsp_generic, RT1308 I2C amplifier never probed #5950

Description

@SNIP-ER

Summary

Internal speakers produce no sound on the TECNO Megabook S14 (Intel Core Ultra 200H / Meteor Lake variant — not the Snapdragon X Elite variant of the same model name). Headphone jack output works correctly. The onboard Realtek ALC269VC HDA codec is fully and correctly configured (pin defaults, mixer levels, mute state, EAPD all verified correct — details below), but a separate I2C-connected Realtek RT1308 smart amplifier sitting downstream of the codec is never probed or initialized by SOF, because the SOF stack picks the generic skl_hda_dsp_generic machine driver, which has no knowledge of the RT1308.

Hardware

  • System: TECNO Megabook S14, Standard/MEGABOOK S14MM baseboard (dmidecode below)
  • CPU: Intel Core Ultra 200H (Meteor Lake-P)
  • Audio Controller: Intel Meteor Lake-P HD Audio Controller, PCI 0000:00:1f.3 (8086:7e28)
  • HDA Codec: Realtek ALC269VC, PCI Subsystem ID 1f5c:0024
  • Speaker amplifier: Realtek RT1308 on I2C, ACPI HID 10EC1308 (/sys/bus/acpi/devices/10EC1308:00)
  • Kernel: 7.2.6-arch2-1
  • SOF firmware: 2.14.1.1 (Arch Linux sof-firmware package)
  • Distro: Arch Linux

dmidecode -t baseboard -t system (relevant excerpt)

System Information
	Manufacturer: TECNO Mobile Limited
	Product Name: MEGABOOK S14
	Version: Standard
	SKU Number: TECNO S14
	Family: MEGABOOK S Series

Base Board Information
	Manufacturer: Standard
	Product Name: MEGABOOK S14MM
	Version: Standard

Steps to reproduce / how DSP mode was reached

By default the kernel selects the legacy snd_hda_intel path on this machine (card shows as plain HDA Intel PCH), and SOF is never attempted — no SOF-related lines appear anywhere in dmesg at all under default settings. Adding snd_intel_dspcfg.dsp_driver=3 to the kernel command line forces SOF to load:

sof-audio-pci-intel-mtl 0000:00:1f.3: enabling device (0000 -> 0002)
sof-audio-pci-intel-mtl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040380
sof-audio-pci-intel-mtl 0000:00:1f.3: bound 0000:00:02.0 (ops intel_audio_component_bind_ops [i915])
sof-audio-pci-intel-mtl 0000:00:1f.3: use msi interrupt mode
sof-audio-pci-intel-mtl 0000:00:1f.3: hda codecs found, mask 5
sof-audio-pci-intel-mtl 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now
sof-audio-pci-intel-mtl 0000:00:1f.3: BT link detected in NHLT tables: 0x0
sof-audio-pci-intel-mtl 0000:00:1f.3: DMICs detected in NHLT tables: 0
sof-audio-pci-intel-mtl 0000:00:1f.3: Firmware file:     intel/sof-ipc4/mtl/sof-mtl.ri
sof-audio-pci-intel-mtl 0000:00:1f.3: Topology file:     intel/sof-ipc4-tplg/sof-hda-generic.tplg
sof-audio-pci-intel-mtl 0000:00:1f.3: Loaded firmware library: ADSPFW, version: 2.14.1.1
sof-audio-pci-intel-mtl 0000:00:1f.3: Booted firmware version: 2.14.1.1
sof-audio-pci-intel-mtl 0000:00:1f.3: loading topology: intel/sof-ipc4-tplg/sof-hda-generic.tplg

Card then shows as:

0 [sofhdadsp      ]: sof-hda-dsp - sof-hda-dsp
                      Standard-MEGABOOKS14-Standard-MEGABOOKS14MM

10ec1308 / rt1308 never appears anywhere in dmesg, with or without forcing dsp_driver=3 — the amplifier is not touched at all, regardless of which machine driver path is taken.

What's been ruled out (codec-side is fully correct)

cat /proc/asound/card0/codec#0 shows a completely standard, valid configuration for the ALC269VC — no BIOS pin-table bug of the kind seen on other budget ODM boards (compare with e.g. ALC269VB_FIXUP_INFINIX_INBOOK_X3_SLIM / ALC269VC_FIXUP_LUNNEN_GROUND_14, where the BIOS wrongly declares an unconnected pin as the speaker):

Node 0x14 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
  Pincap 0x00010014: OUT EAPD Detect
  EAPD 0x2: EAPD
  Pin Default 0x90170110: [Fixed] Speaker at Int N/A
  Pin-ctls: 0x40: OUT
  • Speaker Playback Switch: on
  • Speaker Playback Volume: 87/87 (max)
  • Master Playback Switch: on
  • No false/stuck headphone jack detection (Headphone Jack reports off correctly)
  • Confirmed no sound via speaker-test -D pulse, pw-play, and raw ALSA — same result whether legacy snd_hda_intel or SOF sof-hda-dsp is active
  • GPIO0/GPIO1 on the codec were manually toggled via hda-verb (SET_GPIO_MASK/SET_GPIO_DIRECTION/SET_GPIO_DATA) in case the codec itself drives an amp-enable line — no effect, confirming the amp is a separate I2C device (RT1308) rather than a codec-GPIO-controlled amp
  • Full codec dump and amixer -c0 contents available on request

Expected behavior

A machine driver / ACPI match table entry recognizing the ALC269VC + RT1308 combination on this board (matching on ACPI HID 10EC1308 and/or the DMI strings above), so SOF configures the RT1308 DAI link — similar to existing RT1308 amplifier support already present in the kernel for other Meteor Lake/Tiger Lake platforms (sound/soc/codecs/rt1308.c, sound/soc/intel/boards/sof_realtek_common.c) — instead of falling back to the codec-only skl_hda_dsp_generic driver.

Additional info

Happy to test patches, provide additional diagnostics (full codec dump, ACPI tables, i2cdetect output, kernel config), or run a debug kernel with extra tracing on the SOF/ASoC ACPI match code if that would help pin down why this board isn't matched.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions