* [BUG] Samsung Galaxy Book 4 Ultra - MAX98390 speakers not supported on MTL platform
@ 2026-01-07 22:26 José Augusto de Almeida Neto
2026-01-08 7:53 ` Péter Ujfalusi
2026-01-08 10:10 ` Pierre-Louis Bossart
0 siblings, 2 replies; 3+ messages in thread
From: José Augusto de Almeida Neto @ 2026-01-07 22:26 UTC (permalink / raw)
To: alsa-devel@alsa-project.org; +Cc: linux-sound@vger.kernel.org
[-- Attachment #1: Type: text/plain, Size: 1691 bytes --]
Hi ALSA developers,
I'm reporting a hardware support issue with the Samsung Galaxy Book 4 Ultra
(NP960XGL-XG1BR) running on Intel Meteor Lake (MTL) platform.
SUMMARY:
The laptop has MAX98390 smart speaker amplifiers that are not supported in
the current Linux kernel. Headphones work (ALC298 HDA codec) but speakers
are completely non-functional.
HARDWARE:
- System: Samsung Galaxy Book 4 Ultra (NP960XGL-XG1BR)
- CPU: Intel Meteor Lake-P
- Audio Controller: Intel MTL HD Audio (8086:7728)
- HDA Codec: Realtek ALC298 (working for headphones)
- Speaker Amps: 4x Maxim MAX98390 on I2C bus 2 (addresses 0x38, 0x39, 0x3C, 0x3D)
- Kernel: 6.17.9 (also tested on 6.8.0 mainline)
ROOT CAUSE:
1. No machine driver match in soc-acpi-intel-mtl-match.c for Samsung + MAX98390
2. No SOF topology file for MTL + HDA + MAX98390 combination
3. NHLT only shows SSP2 (Bluetooth), no SSP configured for speakers
4. SOF falls back to generic skl_hda_dsp_generic (2-channel HDA only)
VERIFICATION:
- MAX98390 chips respond on I2C (revision 0x42 confirmed on all 4 chips)
- ACPI device MAX98390:00 present (status 15 - enabled)
- ALC298 speaker DAC receives audio but no output from physical speakers
- No I2S/TDM connection to MAX98390 amplifiers
I have collected detailed technical information including:
- DSDT and NHLT ACPI tables
- Full HDA codec dump
- I2C bus scans and MAX98390 register reads
- dmesg logs showing current SOF behavior
Full detailed report: BUG_REPORT.md attached
QUESTION:
Is there ongoing work to support MAX98390 on Meteor Lake platforms?
I'm willing to test patches and provide additional debugging information.
Thank you,
Jose
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: BUG_REPORT.md --]
[-- Type: text/markdown; name="BUG_REPORT.md", Size: 6792 bytes --]
# Linux Kernel Bug Report: Samsung Galaxy Book 4 Ultra - MAX98390 Speaker Support Missing
**Date:** January 7, 2026
**Reported by:** jaalneto@hotmail.com
**To:** linux-sound@vger.kernel.org
**CC:** alsa-devel@alsa-project.org
---
## Summary
Samsung Galaxy Book 4 Ultra (NP960XGL-XG1BR) with Intel Meteor Lake (MTL) platform has MAX98390 smart speaker amplifiers that are not supported in the current Linux kernel. Speakers are non-functional, only headphones work.
## Hardware Information
- **System:** Samsung Galaxy Book 4 Ultra
- **Model:** 960XGL / NP960XGL-XG1BR
- **BIOS:** P09ALX.430.251002.05 (Release Date: 10/02/2025)
- **CPU:** Intel Meteor Lake-P
- **Audio Controller:** Intel Meteor Lake-P HD Audio (PCI 00:1f.3)
- Vendor: 8086:7728
- Subsystem: 144d:c1d8
- **Kernel:** 6.17.9-76061709-generic
- **Distribution:** Pop!\_OS 24.04 LTS
## Audio Hardware Configuration
### Working Components
- **HDA Codec:** Realtek ALC298 (codec#0)
- Headphone output: Pin 0x21 - **WORKING**
- Internal microphone: **WORKING**
### Non-Working Components
- **Speaker Amplifiers:** 4x Maxim MAX98390 smart amplifiers
- I2C Bus: 2 (i2c_designware.2)
- I2C Addresses: 0x38, 0x39, 0x3C, 0x3D
- ACPI HID: MAX98390
- ACPI Device: MAX98390:00 (status 15 - present, enabled)
- Chip Revision: 0x42 (verified via I2C read)
- **Status:** Device present and responsive on I2C, but NO AUDIO OUTPUT
## Root Cause Analysis
The Samsung Galaxy Book 4 Ultra uses an unconventional audio architecture:
- **ALC298 HDA codec** handles headphone output
- **MAX98390 amplifiers** (I2S/TDM digital input) handle speaker output
- Requires SSP (Serial Synchronous Port) connection from SOF DSP to MAX98390
### Issues Identified
1. **No Machine Driver Match**
- File: `sound/soc/intel/common/soc-acpi-intel-mtl-match.c`
- No entry for Samsung + ALC298 + MAX98390 combination
- SOF falls back to generic `skl_hda_dsp_generic` driver
2. **No SOF Topology File**
- Required: Meteor Lake topology with HDA codec + MAX98390 amplifiers
- Missing: `sof-mtl-*-max98390*.tplg` file
- Existing MTL topologies only support MAX98357A, MAX98360A, MAX98363 (different amplifier chips)
3. **No SSP Port Configuration**
- NHLT (Non-HD Audio Link Table) only shows:
- SSP2 for Bluetooth
- 2x DMIC (working)
- Missing: SSP configuration for speaker amplifiers (likely SSP0 or SSP1)
4. **ACPI/DSDT Configuration**
- MAX98390 ACPI device defined with 4 I2C addresses
- No GPIO resources defined (power/reset/enable)
- No SSP/I2S connection details in ACPI tables
## Current Behavior
```
$ cat /proc/asound/cards
0 [sofhdadsp ]: sof-hda-dsp - sof-hda-dsp
SAMSUNG ELECTRONICS CO., LTD. - 960XGL
$ dmesg | grep -i "sof.*tplg\|machine"
sof-audio-pci-intel-mtl 0000:00:1f.3: Topology file: intel/sof-ace-tplg/sof-hda-generic-2ch.tplg
sof-audio-pci-intel-mtl 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now
```
- Audio playback to "Speaker" device produces no output
- ALC298 speaker DAC (Node 0x03) receives audio stream
- Speaker pin (0x17) is configured and unmuted
- MAX98390 amplifiers are detected on I2C but never initialized
- No I2S/TDM audio data reaches MAX98390 chips
## Expected Behavior
Speakers should work similarly to other Intel platforms with MAX98390, such as:
- Comet Lake (CML) + MAX98390 configurations
- Alder Lake (ADL) + MAX98390 configurations
## Technical Evidence
### I2C Bus Scan (Bus 2)
```
0 1 2 3 4 5 6 7 8 9 a b c d e f
30: -- -- -- -- -- -- -- -- 38 39 -- -- 3c 3d -- --
```
### MAX98390 Chip Detection
All 4 amplifiers respond with Revision ID 0x42:
- 0x38: REV_ID = 0x42
- 0x39: REV_ID = 0x42
- 0x3C: REV_ID = 0x42
- 0x3D: REV_ID = 0x42
### ACPI Device Info
```
Device: MAX98390:00
Status: 15 (present, enabled, decoding resources)
Path: \_SB_.PC00.I2C2.MX98
```
### ALC298 Codec Configuration
```
Node 0x17 [Pin Complex] - Speaker
Pin Default: 0x90170110 [Fixed] Speaker at Int N/A
Pin-ctls: 0x40 (OUT enabled)
EAPD: 0x2 (enabled)
Connection: DAC Node 0x03
Node 0x03 [Audio Output] - Speaker DAC
Stream assignment: Receives audio during playback
Volume: 127/127 (100%, unmuted)
```
## Proposed Solution
### 1. Add Machine Driver Match
In `sound/soc/intel/common/soc-acpi-intel-mtl-match.c`:
```c
static const struct snd_soc_acpi_codecs mtl_max98390_amp = {
.num_codecs = 1,
.codecs = {"MX98390"}
};
// Add to snd_soc_acpi_intel_mtl_machines[] array:
{
.id = "10EC0298", // ALC298 HID
.drv_name = "mtl_max98390_8825", // or appropriate driver
.machine_quirk = snd_soc_acpi_codec_list,
.quirk_data = &mtl_max98390_amp,
.sof_tplg_filename = "sof-mtl-max98390-rt5682.tplg", // needs creation
},
```
### 2. Create SOF Topology File
Create topology file supporting:
- HDA codec (ALC298) for headphones
- SSP port (likely SSP0 or SSP1) for MAX98390
- 4-channel TDM configuration for 4 amplifier chips
- DMICs (already working)
### 3. Add SSP Configuration
Update NHLT or create ACPI override to expose SSP port for speakers
### 4. Samsung DMI Quirk (Optional)
Add specific handling for Samsung Galaxy Book 4 models if needed
## Workarounds Attempted
1. ❌ Manual I2C initialization of MAX98390 - fails without I2S clock
2. ❌ Force load `snd_soc_max98390` module - module loads but no audio path
3. ❌ HDA codec speaker pin manipulation - audio goes to pin but not to physical speakers
4. ❌ Legacy HDA driver (`snd_hda_intel dsp_driver=1`) - breaks all audio
## Additional Information
This appears to be a similar issue to other recent Intel platforms that added MAX98390 support:
- [Commit example needed - check git log for similar additions]
The MAX98390 is also used in:
- Dell XPS series
- Lenovo ThinkPad X1 Carbon Gen 11
- HP Spectre x360
## Attachments
I can provide the following files if needed:
1. **dsdt.bin** (416KB) - Full DSDT table
2. **nhlt.bin** (2.4KB) - NHLT audio configuration
3. **dmesg_audio.log** - Filtered kernel messages
4. **alc298_codec.txt** - Full HDA codec dump
5. **i2c_bus2_scan.txt** - I2C bus 2 device scan
6. **max98390_info.txt** - MAX98390 register reads
Please let me know if you need any of these files or additional debugging information.
## Request
Could someone with experience in Intel SOF and MAX98390 integration provide guidance on:
1. Correct SSP port assignment for this hardware
2. Whether an NHLT update or ACPI SSDT override is needed
3. Topology file structure for HDA + MAX98390 combination on MTL
I'm willing to test patches and provide additional debugging information.
---
**Contact:** jaalneto@hotmail.com
**Availability for testing:** High - this is my primary laptop
Thank you for your attention to this issue.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [BUG] Samsung Galaxy Book 4 Ultra - MAX98390 speakers not supported on MTL platform
2026-01-07 22:26 [BUG] Samsung Galaxy Book 4 Ultra - MAX98390 speakers not supported on MTL platform José Augusto de Almeida Neto
@ 2026-01-08 7:53 ` Péter Ujfalusi
2026-01-08 10:10 ` Pierre-Louis Bossart
1 sibling, 0 replies; 3+ messages in thread
From: Péter Ujfalusi @ 2026-01-08 7:53 UTC (permalink / raw)
To: José Augusto de Almeida Neto, alsa-devel@alsa-project.org
Cc: linux-sound@vger.kernel.org
Hi José,
The machine likely similar to Book 4 Pro, it is an HDA+companion amp setup:
https://github.com/thesofproject/linux/issues/5002
The bounty for Book 4 Pro resulted (as far as I know) working audio,
which can be replicated:
https://github.com/stephanlensky/galaxy-book4-linux-sound
You might need to add the quirk for the Ultra and by luck it might work
as well.
SOF is not needed, used in these machines as they are pure HDA devices.
--
Péter
On 08/01/2026 00:26, José Augusto de Almeida Neto wrote:
> Hi ALSA developers,
>
> I'm reporting a hardware support issue with the Samsung Galaxy Book 4 Ultra
> (NP960XGL-XG1BR) running on Intel Meteor Lake (MTL) platform.
>
> SUMMARY:
> The laptop has MAX98390 smart speaker amplifiers that are not supported in
> the current Linux kernel. Headphones work (ALC298 HDA codec) but speakers
> are completely non-functional.
>
> HARDWARE:
> - System: Samsung Galaxy Book 4 Ultra (NP960XGL-XG1BR)
> - CPU: Intel Meteor Lake-P
> - Audio Controller: Intel MTL HD Audio (8086:7728)
> - HDA Codec: Realtek ALC298 (working for headphones)
> - Speaker Amps: 4x Maxim MAX98390 on I2C bus 2 (addresses 0x38, 0x39,
> 0x3C, 0x3D)
> - Kernel: 6.17.9 (also tested on 6.8.0 mainline)
>
> ROOT CAUSE:
> 1. No machine driver match in soc-acpi-intel-mtl-match.c for Samsung +
> MAX98390
> 2. No SOF topology file for MTL + HDA + MAX98390 combination
> 3. NHLT only shows SSP2 (Bluetooth), no SSP configured for speakers
> 4. SOF falls back to generic skl_hda_dsp_generic (2-channel HDA only)
>
> VERIFICATION:
> - MAX98390 chips respond on I2C (revision 0x42 confirmed on all 4 chips)
> - ACPI device MAX98390:00 present (status 15 - enabled)
> - ALC298 speaker DAC receives audio but no output from physical speakers
> - No I2S/TDM connection to MAX98390 amplifiers
>
> I have collected detailed technical information including:
> - DSDT and NHLT ACPI tables
> - Full HDA codec dump
> - I2C bus scans and MAX98390 register reads
> - dmesg logs showing current SOF behavior
>
> Full detailed report: BUG_REPORT.md attached
>
> QUESTION:
> Is there ongoing work to support MAX98390 on Meteor Lake platforms?
> I'm willing to test patches and provide additional debugging information.
>
> Thank you,
> Jose
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [BUG] Samsung Galaxy Book 4 Ultra - MAX98390 speakers not supported on MTL platform
2026-01-07 22:26 [BUG] Samsung Galaxy Book 4 Ultra - MAX98390 speakers not supported on MTL platform José Augusto de Almeida Neto
2026-01-08 7:53 ` Péter Ujfalusi
@ 2026-01-08 10:10 ` Pierre-Louis Bossart
1 sibling, 0 replies; 3+ messages in thread
From: Pierre-Louis Bossart @ 2026-01-08 10:10 UTC (permalink / raw)
To: José Augusto de Almeida Neto, alsa-devel@alsa-project.org
Cc: linux-sound@vger.kernel.org
On 1/7/26 23:26, José Augusto de Almeida Neto wrote:
> Hi ALSA developers,
>
> I'm reporting a hardware support issue with the Samsung Galaxy Book 4 Ultra
> (NP960XGL-XG1BR) running on Intel Meteor Lake (MTL) platform.
>
> SUMMARY:
> The laptop has MAX98390 smart speaker amplifiers that are not supported in
> the current Linux kernel. Headphones work (ALC298 HDA codec) but speakers
> are completely non-functional.
>
> HARDWARE:
> - System: Samsung Galaxy Book 4 Ultra (NP960XGL-XG1BR)
> - CPU: Intel Meteor Lake-P
> - Audio Controller: Intel MTL HD Audio (8086:7728)
> - HDA Codec: Realtek ALC298 (working for headphones)
> - Speaker Amps: 4x Maxim MAX98390 on I2C bus 2 (addresses 0x38, 0x39, 0x3C, 0x3D)
> - Kernel: 6.17.9 (also tested on 6.8.0 mainline)
>
> ROOT CAUSE:
> 1. No machine driver match in soc-acpi-intel-mtl-match.c for Samsung + MAX98390
> 2. No SOF topology file for MTL + HDA + MAX98390 combination
> 3. NHLT only shows SSP2 (Bluetooth), no SSP configured for speakers
> 4. SOF falls back to generic skl_hda_dsp_generic (2-channel HDA only)
>
> VERIFICATION:
> - MAX98390 chips respond on I2C (revision 0x42 confirmed on all 4 chips)
> - ACPI device MAX98390:00 present (status 15 - enabled)
> - ALC298 speaker DAC receives audio but no output from physical speakers
> - No I2S/TDM connection to MAX98390 amplifiers
>
> I have collected detailed technical information including:
> - DSDT and NHLT ACPI tables
> - Full HDA codec dump
> - I2C bus scans and MAX98390 register reads
> - dmesg logs showing current SOF behavior
>
> Full detailed report: BUG_REPORT.md attached
>
> QUESTION:
> Is there ongoing work to support MAX98390 on Meteor Lake platforms?
This has nothing to do with SOF, the main issue is that the amplifier needs to be configured by HDAudio verbs which are translated by the HDaudio codec in I2C commands. The problem is to reverse-engineer what those verbs might be, usually with a Windows setup. There was a Wiki for this sort of things, see https://thesofproject.github.io/latest/getting_started/intel_debug/suggestions.html#reverse-engineer-the-windows-audio-driver
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-03-04 15:26 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-07 22:26 [BUG] Samsung Galaxy Book 4 Ultra - MAX98390 speakers not supported on MTL platform José Augusto de Almeida Neto
2026-01-08 7:53 ` Péter Ujfalusi
2026-01-08 10:10 ` Pierre-Louis Bossart
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox