The Problem
If you have a Samsung Galaxy Book4 Pro running Linux, you've probably noticed that the internal speakers don't work. The headphone jack works fine, but the built-in speakers are completely silent — regardless of your distro or kernel version.
This post documents what actually works after hours of research through forums, repositories, and documentation.
Why It Happens
The Galaxy Book4 Pro uses the Realtek ALC298 codec combined with MAX98390 smart amplifiers connected via I2C bus. The Linux kernel detects the codec correctly, but never initializes the MAX98390 amplifier — resulting in completely silent speakers.
On Windows, Samsung installs a proprietary DSP driver that automatically initializes and controls this amp. On Linux, that driver simply doesn't exist.
Diagnosis
First, confirm your hardware is affected:
cat /proc/asound/card0/codec#0 | grep -i "codec\|subsystem"
If you see Codec: Realtek ALC298 and a Subsystem ID starting with 0x144d (Samsung), you're in the right place.
Also confirm the amp is never initialized:
sudo dmesg | grep -i "max98\|cs35\|speaker\|amp"
If there are no lines about MAX98390, the amp was never woken up.
The Fix
Thanks to the amazing work by @Andycodeman and the open source community, there's a DKMS driver that solves the problem. The fix installs the MAX98390 driver, creates a systemd service that initializes the amp on every boot, and works automatically after restarting.
Before installing, verify:
# Secure Boot must be disabled
mokutil --sb-state
Installation (Ubuntu/Zorin/Mint/Pop!_OS):
curl -sL https://github.com/Andycodeman/samsung-galaxy-book-linux-fixes/archive/refs/heads/main.tar.gz | tar xz && cd samsung-galaxy-book-linux-fixes-main/speaker-fix && sudo ./install.sh
Test without rebooting:
sudo systemctl start max98390-hda-i2c-setup.service
If sound comes out, reboot to confirm it persists:
sudo reboot
Improving Sound Quality with EasyEffects
The driver initializes the amp, but the sound is more "raw" than on Windows (where Samsung uses proprietary DSP). To improve it, install EasyEffects:
sudo apt install -y easyeffects calf-plugins
In the Effects → Output tab, add:
- Equalizer — boost mids (1kHz~4kHz) and reduce excessive bass (32Hz~250Hz)
- Limiter with threshold at -3dB — prevents distortion on peaks
- Compressor with 4:1 ratio and 5ms attack — softens hard transients
Set EasyEffects to run in the background: ⋯ → Launch as a Service
Tested On
| Model | Distro | Kernel | Status |
|---|---|---|---|
| Galaxy Book4 Pro (NP940XGK) | Zorin OS 18.1 | 6.17.0-23-generic | ✅ Working |
Credits
- Andycodeman — DKMS packaging, install scripts, dynamic I2C detection
- Kevin Cuperus — Original MAX98390 driver code (upstream PR #5616)
- Google Redrix (Chromebook) — DSP firmware blobs extracted from same MAX98390 hardware
👉 Repository: https://github.com/Andycodeman/samsung-galaxy-book-linux-fixes
Top comments (0)