Skip to content

[Meteor Lake + Realtek ALC298? Samsung NP960XGK] Internal speakers silent on SOF; HDMI audio works #5628

Open

Description

@yamm1flux

On Samsung Galaxy Book4 Pro (NP960XGK) with Meteor Lake-P HD Audio Controller and Realtek codec, PipeWire exposes Speaker/HDMI sinks under SOF, microphones work, HDMI audio works, but internal speakers are silent. ALSA mixers are unmuted, Auto-Mute disabled, and trying EAPD/pin widget enable via hda-verb does not restore speaker output. Legacy HDA (with SOF disabled) is untested/partial; HDMI is used as a workaround. Regression not confirmed; persists on latest Fedora kernel as of [date].

Hardware:

Laptop: Samsung Galaxy Book4 Pro 16 (NP960XGK) [adjust if different]
CPU/Platform: Intel Meteor Lake-P
Audio: Meteor Lake-P HD Audio Controller + Realtek codec (likely ALC298 family)
Display/audio over HDMI: working
Software:

Distro: Fedora 42
Kernel: uname -a: [paste]
SOF firmware/topology: sof-logger -l /lib/firmware/intel/sof/ or sof-info output [see “Data to attach”]
PipeWire: 1.4.9
WirePlumber: 1.4.9
ALSA utils: 1.2.14
Observed behavior:

wpctl status shows Speaker and HDMI sinks; selecting Speaker produces no sound in any app.
HDMI sink plays audio normally.
ALSA controls:
Auto-Mute Mode: Disabled
Speaker: 100% unmuted
hda-verb attempts:
hda-verb /dev/snd/hwC0D0 0x17 SET_EAPD_BTLENABLE 0x02 -> value=0x0
hda-verb /dev/snd/hwC0D0 0x21 SET_EAPD_BTLENABLE 0x02 -> value=0x0
hda-verb /dev/snd/hwC0D0 0x17 SET_PIN_WIDGET_CONTROL 0x40 -> value=0x0
No audio output afterward.
speaker-test plays (no errors), but no audible output from speakers.
Expected behavior:

Internal “Speaker” sink should produce sound.
Steps to reproduce:

Boot Fedora 42 on Samsung NP960XGK with default SOF stack.
Ensure card profile: pactl set-card-profile "HiFi (HDMI1, HDMI2, HDMI3, Mic1, Mic2, Speaker)"
Set default sink to Speaker and unmute:
wpctl set-default
wpctl set-mute 0
wpctl set-volume 1.0
Confirm ALSA mixers:
amixer -c 0 set 'Auto-Mute Mode' Disabled
amixer -c 0 set 'Speaker' 100% unmute
Play test tone:
speaker-test -D default -c 2 -t sine -f 440 -l 1
Observe: no sound from internal speakers; HDMI works if selected.
Notes:

PipeWire previously showed only “Dummy Output” until card profile was reapplied; current kernels expose proper sinks.
Looks like a SOF topology/codec-init quirk for this Samsung model—likely missing EAPD/amp enable or GPIO amp control in the topology/quirks.
Willing to test patches or debug builds.

Activity

  1. yamm1flux commented on Dec 17, 2025

    @yamm1flux
    Author

    daha@gamora:~$ sudo dmidecode | egrep -i 'product name|system product|system version|bios version|bios release|board name|manufacturer'
    [sudo] password for daha:
    Manufacturer: SAMSUNG ELECTRONICS CO., LTD.
    Product Name: 960XGK
    Manufacturer: SAMSUNG ELECTRONICS CO., LTD.
    Product Name: NP960XGK-KG5HK
    Manufacturer: SAMSUNG ELECTRONICS CO., LTD.
    Manufacturer: SAMSUNG ELECTRONICS CO., LTD.
    Manufacturer: Default string
    Manufacturer: INTEL
    Manufacturer: Samsung
    Module Manufacturer ID: Bank 1, Hex 0xCE
    Memory Subsystem Controller Manufacturer ID: Unknown
    Manufacturer: Samsung
    Module Manufacturer ID: Bank 1, Hex 0xCE
    Memory Subsystem Controller Manufacturer ID: Unknown
    Manufacturer: Samsung
    Module Manufacturer ID: Bank 1, Hex 0xCE
    Memory Subsystem Controller Manufacturer ID: Unknown
    Manufacturer: Samsung
    Module Manufacturer ID: Bank 1, Hex 0xCE
    Memory Subsystem Controller Manufacturer ID: Unknown
    Manufacturer: Samsung
    Module Manufacturer ID: Bank 1, Hex 0xCE
    Memory Subsystem Controller Manufacturer ID: Unknown
    Manufacturer: Samsung
    Module Manufacturer ID: Bank 1, Hex 0xCE
    Memory Subsystem Controller Manufacturer ID: Unknown
    Manufacturer: Samsung
    Module Manufacturer ID: Bank 1, Hex 0xCE
    Memory Subsystem Controller Manufacturer ID: Unknown
    Manufacturer: Samsung
    Module Manufacturer ID: Bank 1, Hex 0xCE
    Memory Subsystem Controller Manufacturer ID: Unknown
    Manufacturer: Intel(R) Corporation
    daha@gamora:~$ uname -a
    Linux gamora 6.17.11-200.fc42.x86_64 thesofproject/sof#1 SMP PREEMPT_DYNAMIC Tue Dec 9 00:25:56 UTC 2025 x86_64 GNU/Linux
    daha@gamora:~$

  2. yamm1flux commented on Dec 17, 2025

    @yamm1flux
    Author

    daha@gamora:~$ aplay -l
    **** List of PLAYBACK Hardware Devices ****
    card 0: sofhdadsp [sof-hda-dsp], device 0: HDA Analog () []
    Subdevices: 1/1
    Subdevice #0: subdevice #0
    card 0: sofhdadsp [sof-hda-dsp], device 3: HDMI1 (
    ) []
    Subdevices: 0/1
    Subdevice #0: subdevice #0
    card 0: sofhdadsp [sof-hda-dsp], device 4: HDMI2 () []
    Subdevices: 1/1
    Subdevice #0: subdevice #0
    card 0: sofhdadsp [sof-hda-dsp], device 5: HDMI3 (
    ) []
    Subdevices: 1/1
    Subdevice #0: subdevice #0
    card 0: sofhdadsp [sof-hda-dsp], device 31: Deepbuffer HDA Analog () []
    Subdevices: 1/1
    Subdevice #0: subdevice #0
    daha@gamora:~$ arecord -l
    **** List of CAPTURE Hardware Devices ****
    card 0: sofhdadsp [sof-hda-dsp], device 0: HDA Analog (
    ) []
    Subdevices: 1/1
    Subdevice #0: subdevice #0
    card 0: sofhdadsp [sof-hda-dsp], device 6: DMIC Raw () []
    Subdevices: 1/1
    Subdevice #0: subdevice #0
    daha@gamora:~$ cat /proc/asound/cards
    0 [sofhdadsp ]: sof-hda-dsp - sof-hda-dsp
    SAMSUNGELECTRONICSCO.LTD.-960XGK-P10RHA-NP960XGK_KG5HK
    daha@gamora:~$ sudo cat /proc/asound/card0/codec#0 2>/dev/null || sudo cat /proc/asound/card0/codec* 2>/dev/null
    Codec: Realtek ALC298
    Address: 0
    AFG Function Id: 0x1 (unsol 1)
    Vendor Id: 0x10ec0298
    Subsystem Id: 0x144dc890
    Revision Id: 0x100103
    No Modem Function Group found
    Default PCM:
    rates [0x60]: 44100 48000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
    Default Amp-In caps: N/A
    Default Amp-Out caps: N/A
    State of AFG node 0x01:
    Power states: D0 D1 D2 D3 D3cold CLKSTOP EPSS
    Power: setting=D0, actual=D0
    GPIO: io=8, o=0, i=0, unsolicited=1, wake=0
    IO[0]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
    IO[1]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
    IO[2]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
    IO[3]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
    IO[4]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
    IO[5]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
    IO[6]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
    IO[7]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
    Node 0x02 [Audio Output] wcaps 0x41d: Stereo Amp-Out
    Control: name="Headphone Playback Volume", index=0, device=0
    ControlAmp: chs=3, dir=Out, idx=0, ofs=0
    Amp-Out caps: ofs=0x7f, nsteps=0x7f, stepsize=0x01, mute=0
    Amp-Out vals: [0x7f 0x7f]
    Converter: stream=0, channel=0
    PCM:
    rates [0x60]: 44100 48000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Node 0x03 [Audio Output] wcaps 0x41d: Stereo Amp-Out
    Control: name="Speaker Playback Volume", index=0, device=0
    ControlAmp: chs=3, dir=Out, idx=0, ofs=0
    Amp-Out caps: ofs=0x7f, nsteps=0x7f, stepsize=0x01, mute=0
    Amp-Out vals: [0x7f 0x7f]
    Converter: stream=0, channel=0
    PCM:
    rates [0x60]: 44100 48000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Node 0x04 [Vendor Defined Widget] wcaps 0xf00000: Mono
    Node 0x05 [Vendor Defined Widget] wcaps 0xf00000: Mono
    Node 0x06 [Audio Output] wcaps 0x411: Stereo
    Converter: stream=0, channel=0
    PCM:
    rates [0x40]: 48000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Node 0x07 [Vendor Defined Widget] wcaps 0xf00000: Mono
    Node 0x08 [Audio Input] wcaps 0x10051b: Stereo Amp-In
    Control: name="Capture Volume", index=0, device=0
    ControlAmp: chs=3, dir=In, idx=0, ofs=0
    Control: name="Capture Switch", index=0, device=0
    ControlAmp: chs=3, dir=In, idx=0, ofs=0
    Amp-In caps: ofs=0x43, nsteps=0x7f, stepsize=0x01, mute=1
    Amp-In vals: [0x7f 0x7f]
    Converter: stream=0, channel=0
    SDI-Select: 0
    PCM:
    rates [0x60]: 44100 48000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Connection: 1
    0x23
    Node 0x09 [Audio Input] wcaps 0x10051b: Stereo Amp-In
    Amp-In caps: ofs=0x43, nsteps=0x7f, stepsize=0x01, mute=1
    Amp-In vals: [0xc3 0xc3]
    Converter: stream=0, channel=0
    SDI-Select: 0
    PCM:
    rates [0x60]: 44100 48000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Connection: 1
    0x22
    Node 0x0a [Audio Input] wcaps 0x100511: Stereo
    Converter: stream=0, channel=0
    SDI-Select: 0
    PCM:
    rates [0x40]: 48000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Connection: 1
    0x25
    Node 0x0b [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
    Control: name="Mic Playback Volume", index=0, device=0
    ControlAmp: chs=3, dir=In, idx=0, ofs=0
    Control: name="Mic Playback Switch", index=0, device=0
    ControlAmp: chs=3, dir=In, idx=0, ofs=0
    Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1
    Amp-In vals: [0x9c 0x9c] [0x80 0x80] [0x80 0x80] [0x80 0x80]
    Connection: 4
    0x18 0x19 0x1a 0x1d
    Node 0x0c [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
    Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
    Amp-In vals: [0x00 0x00] [0x80 0x80]
    Connection: 2
    0x02 0x0b
    Node 0x0d [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
    Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
    Amp-In vals: [0x00 0x00]
    Connection: 1
    0x03
    Node 0x0e [Vendor Defined Widget] wcaps 0xf00000: Mono
    Node 0x0f [Vendor Defined Widget] wcaps 0xf00000: Mono
    Node 0x10 [Vendor Defined Widget] wcaps 0xf00000: Mono
    Node 0x11 [Audio Input] wcaps 0x10051b: Stereo Amp-In
    Amp-In caps: ofs=0x43, nsteps=0x7f, stepsize=0x01, mute=1
    Amp-In vals: [0xc3 0xc3]
    Converter: stream=0, channel=0
    SDI-Select: 0
    PCM:
    rates [0x60]: 44100 48000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Connection: 1
    0x24
    Node 0x12 [Pin Complex] wcaps 0x40040b: Stereo Amp-In
    Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
    Amp-In vals: [0x00 0x00]
    Pincap 0x00000020: IN
    Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
    Conn = 1/8, Color = Black
    DefAssociation = 0xf, Sequence = 0x0
    Misc = NO_PRESENCE
    Pin-ctls: 0x00:
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Node 0x13 [Pin Complex] wcaps 0x40040b: Stereo Amp-In
    Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
    Amp-In vals: [0x00 0x00]
    Pincap 0x00000020: IN
    Pin Default 0x40000000: [N/A] Line Out at Ext N/A
    Conn = Unknown, Color = Unknown
    DefAssociation = 0x0, Sequence = 0x0
    Pin-ctls: 0x00:
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Node 0x14 [Pin Complex] wcaps 0x40050d: Stereo Amp-Out
    Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
    Amp-Out vals: [0x80 0x80]
    Pincap 0x00010010: OUT EAPD
    EAPD 0x2: EAPD
    Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
    Conn = 1/8, Color = Black
    DefAssociation = 0xf, Sequence = 0x0
    Misc = NO_PRESENCE
    Pin-ctls: 0x00:
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Connection: 2
    0x0c
    0x0d
    Node 0x15 [Vendor Defined Widget] wcaps 0xf00000: Mono
    Node 0x16 [Vendor Defined Widget] wcaps 0xf00000: Mono
    Node 0x17 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
    Control: name="Speaker Playback Switch", index=0, device=0
    ControlAmp: chs=3, dir=Out, idx=0, ofs=0
    Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
    Amp-Out vals: [0x00 0x00]
    Pincap 0x0001001c: OUT HP EAPD Detect
    EAPD 0x2: EAPD
    Pin Default 0x90170110: [Fixed] Speaker at Int N/A
    Conn = Analog, Color = Unknown
    DefAssociation = 0x1, Sequence = 0x0
    Misc = NO_PRESENCE
    Pin-ctls: 0x40: OUT
    Unsolicited: tag=00, enabled=0
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Connection: 3
    0x0c 0x0d* 0x06
    Node 0x18 [Pin Complex] wcaps 0x40048b: Stereo Amp-In
    Control: name="Mic Boost Volume", index=0, device=0
    ControlAmp: chs=3, dir=In, idx=0, ofs=0
    Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
    Amp-In vals: [0x03 0x03]
    Pincap 0x00003724: IN Detect
    Vref caps: HIZ 50 GRD 80 100
    Pin Default 0x04a11020: [Jack] Mic at Ext Right
    Conn = 1/8, Color = Black
    DefAssociation = 0x2, Sequence = 0x0
    Pin-ctls: 0x24: IN VREF_80
    Unsolicited: tag=02, enabled=1
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Node 0x19 [Pin Complex] wcaps 0x40048b: Stereo Amp-In
    Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
    Amp-In vals: [0x00 0x00]
    Pincap 0x00003724: IN Detect
    Vref caps: HIZ 50 GRD 80 100
    Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
    Conn = 1/8, Color = Black
    DefAssociation = 0xf, Sequence = 0x0
    Misc = NO_PRESENCE
    Pin-ctls: 0x00: VREF_HIZ
    Unsolicited: tag=00, enabled=0
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Node 0x1a [Pin Complex] wcaps 0x40058f: Stereo Amp-In Amp-Out
    Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
    Amp-In vals: [0x00 0x00]
    Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
    Amp-Out vals: [0x80 0x80]
    Pincap 0x0001373c: IN OUT HP EAPD Detect
    Vref caps: HIZ 50 GRD 80 100
    EAPD 0x2: EAPD
    Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
    Conn = 1/8, Color = Black
    DefAssociation = 0xf, Sequence = 0x0
    Misc = NO_PRESENCE
    Pin-ctls: 0x00: VREF_HIZ
    Unsolicited: tag=00, enabled=0
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Connection: 2
    0x0c* 0x0d
    Node 0x1b [Vendor Defined Widget] wcaps 0xf00000: Mono
    Node 0x1c [Vendor Defined Widget] wcaps 0xf00000: Mono
    Node 0x1d [Pin Complex] wcaps 0x400400: Mono
    Pincap 0x00000020: IN
    Pin Default 0x40630245: [N/A] Modem Line at Ext N/A
    Conn = ATAPI, Color = Unknown
    DefAssociation = 0x4, Sequence = 0x5
    Pin-ctls: 0x20: IN
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Node 0x1e [Pin Complex] wcaps 0x400501: Stereo
    Pincap 0x00000014: OUT Detect
    Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
    Conn = 1/8, Color = Black
    DefAssociation = 0xf, Sequence = 0x0
    Misc = NO_PRESENCE
    Pin-ctls: 0x00:
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Connection: 1
    0x06
    Node 0x1f [Pin Complex] wcaps 0x400401: Stereo
    Pincap 0x00000024: IN Detect
    Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
    Conn = 1/8, Color = Black
    DefAssociation = 0xf, Sequence = 0x0
    Misc = NO_PRESENCE
    Pin-ctls: 0x00:
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Node 0x20 [Vendor Defined Widget] wcaps 0xf00040: Mono
    Processing caps: benign=0, ncoeff=150
    Node 0x21 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
    Control: name="Headphone Playback Switch", index=0, device=0
    ControlAmp: chs=3, dir=Out, idx=0, ofs=0
    Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
    Amp-Out vals: [0x80 0x80]
    Pincap 0x0000001c: OUT HP Detect
    Pin Default 0x04211050: [Jack] HP Out at Ext Right
    Conn = 1/8, Color = Black
    DefAssociation = 0x5, Sequence = 0x0
    Pin-ctls: 0xc0: OUT HP
    Unsolicited: tag=01, enabled=1
    Power states: D0 D1 D2 D3 EPSS
    Power: setting=D0, actual=D0
    Connection: 2
    0x0c* 0x0d
    Node 0x22 [Audio Selector] wcaps 0x300101: Stereo
    Connection: 6
    0x18* 0x19 0x1a 0x1d 0x0b 0x12
    Node 0x23 [Audio Selector] wcaps 0x300101: Stereo
    Connection: 6
    0x18* 0x19 0x1a 0x1d 0x0b 0x13
    Node 0x24 [Audio Selector] wcaps 0x300101: Stereo
    Connection: 2
    0x12* 0x13
    Node 0x25 [Audio Selector] wcaps 0x300101: Stereo
    Connection: 1
    0x1f
    daha@gamora:~$

  3. yamm1flux commented on Dec 17, 2025

    @yamm1flux
    Author
  4. lgirdwood commented on Dec 17, 2025

    @lgirdwood
    Member

    @shumingfan could this be a missing HDA verb ?

  5. shumingfan commented on Dec 23, 2025

    @shumingfan

    @KailangYang Do you have any idea?

  6. KailangYang commented on Dec 24, 2025

    @KailangYang

    Node 0x17 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
    Control: name="Speaker Playback Switch", index=0, device=0
    ControlAmp: chs=3, dir=Out, idx=0, ofs=0
    Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
    Amp-Out vals: [0x00 0x00]
    Pincap 0x0001001c: OUT HP EAPD Detect
    EAPD 0x2: EAPD
    Pin Default 0x90170110: [Fixed] Speaker at Int N/A
    Conn = Analog, Color = Unknown
    DefAssociation = 0x1, Sequence = 0x0
    Misc = NO_PRESENCE
    Pin-ctls: 0x40: OUT

    This platform also has speaker Amp. It's not own by Realtek.
    Please report to Samsung or Amp vendor directly.

  7. Andycodeman commented on Feb 14, 2026

    @Andycodeman

    For anyone looking for an easy way to apply these fixes — I've packaged tested, automated install scripts for both the speaker and webcam issues on Samsung Galaxy Book4 (and others) laptops:

    https://github.com/Andycodeman/samsung-galaxy-book4-linux-fixes

    Speaker fix: DKMS driver for the MAX98390 I2C amplifiers (based on thesofproject/linux PR #5616). Auto-rebuilds on kernel updates and auto-removes itself when native kernel support lands.

    curl -sL https://github.com/Andycodeman/samsung-galaxy-book4-linux-fixes/archive/refs/heads/main.tar.gz | tar xz && cd samsung-galaxy-book4-linux-fixes-main/speaker-fix && sudo ./install.sh && sudo reboot

    Webcam fix: Handles IVSC module loading, Intel IPU6 camera HAL setup, v4l2loopback relay, and PipeWire device classification. Works with Firefox, Chrome, Zoom, Teams, OBS, mpv, and more.

    curl -sL https://github.com/Andycodeman/samsung-galaxy-book4-linux-fixes/archive/refs/heads/main.tar.gz | tar xz && cd samsung-galaxy-book4-linux-fixes-main/webcam-fix && ./install.sh && sudo reboot

    Tested on: Samsung Galaxy Book4 Ultra, Ubuntu 24.04 LTS, kernel 6.17 (HWE). The upstream speaker PR (#5616) has also been confirmed working on the Book4 Pro, Pro 360, and Pro 16-inch by other users. If you're on a Galaxy Book5 or a different distro (Fedora, Arch, Manjaro, Debian, etc.), the fixes may still work since the underlying hardware (ALC298 + MAX98390 amps, IPU6 + OV02C10 sensor) is shared across models — but only the Ultra on Ubuntu has been directly verified. Reports from other configurations are welcome.

    Note: The built-in microphones (DMIC) do not work yet on any of these models — that requires SOF driver support which is expected in kernel 7.0 (April 2026) or 7.1 (June 2026). See the repo README for details and workarounds.

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

    Not SOF FW/DriverNot using SOF audio FW and driverOEM HDA codec customizationIssue with HDA codec verbs/configuration by OEMbugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions