[HowTo] set up the audio card in Samsung Galaxy Book

What kernel are you using?

5.10.2, I’ve also tried with 5.9.

I think it’s the services that are failing me.

If I do the steps manually and just run:
bash /home/YOURUSER/scripts/TO912.sh
it works! Now when I know where the problem is, I might be able to fix it myself without bothering you further. Thank you for the guide.

EDIT: I managed to fix the services by using the line below instead:
ExecStart=/bin/bash /home/YOURUSER/scripts/TO912.sh

On a slightly unrelated note, have you solved any other HW compatibility problem with these Samsung laptops? I’m thinking primarily about the ability to control the keyboard back light, or enabling the outdoor brightness mode under linux.

1 Like

Hi, did you follow all the steps changing only the package manager?? I am not able to find any requested package

On a slightly unrelated note, have you solved any other HW compatibility problem with these Samsung laptops? I’m thinking primarily about the ability to control the keyboard back light, or enabling the outdoor brightness mode under linux.

No, I haven’t yet. I am still looking for a way to control the keyboard back light.

Another thanks for this guide.

I recently acquired Samsung NP950XCJ for a family member and began the move from Windows to Manjaro xfce.

As previously mentioned alsa-base.conf doesn’t exist on this notebook, so I ignored section 6 above and now have sound working.

I don’t even use Manjaro, but I signed up just to say thank you. Some of the steps above seems unnecessary, but can confirm that this works on galaxybook ion with fedora 34. Thanks alot!

Hello.
I would like to thank for this help, I did it exactly as is, but I have sound on right speaker only, how can I fix it, any advice? My laptop Samsung Galaxy Flex 15.6’’, NP950QCG.

You have a different system and probably need to find the correct HDA Verbs

The bugzilla report posted in OP has links to the original method developed by Connor McAdams
Setup and usage of the program · Conmanx360/QemuHDADump Wiki · GitHub
Connor also proved it’s effectiveness with a patch for Creative cards
Soundblaster Creative AE-5 Plus: No sound

But there are revised and improved instructions here
How to sniff verbs from a Windows sound driver · ryanprescott/realtek-verb-tools Wiki · GitHub

Thank You for advice, I will try.

Thank you for this guide. I can confirm this works for the flex2 alpha mostly. I for some reason cannot get the headphones to work.

I make sure my headphones are plugged in. I open alsamixer from the terminal and press F6 then select sof-hda-dsp

I am able to adjust the sound level but I hear no sound out of the head phones. They are not muted in the taskbar either. I am using Cinnamon which has a different interface. I dont see an advance option for configuring audio from the icon.

Can confirm this works on the Samsung Galaxy Book Pro 360.

Made an account just to thank you for this wizardry.

I can confirm this works (minus the Samsung-specific steps) for an HP 15-dy2152wm laptop with Core i5-1137G5 and Tiger Lake LP Sound.

Hello, Using to912.sh is working for me!

But, still internal mic (= built-in mic) does not work.

Cloud you please tell me how to set internal mic working using hda-verb?

Thank you.

Can confirm this is working with the Samsung Galaxy Book2 Pro 360 as well.

Unfortunately, the script fails to execute on boot, but if I manually start it afterwards (or suspend and wake), it works perfectly.

I skipped the options snd slots=snd_soc_skl_hda_dsp part since it seemed to break the script somehow (even though snd_soc_skl_hda_dsp is loaded automatically later on anyways)

Now I’m wondering if there’s a way to implement this in a less hacky way (directly in the kernel, alsa, etc) instead of a script, and maybe upstream it since it seems to be a common issue on Samsung notebooks in general.

There are now 4 patches in Linux kernel for Samsung Galaxy devices
and patches have been back-ported to LTS kernels v5.15 and v5.10

patch_realtek.c - sound/pci/hda/patch_realtek.c - Linux source code (v5.18.12) - Bootlin

    SND_PCI_QUIRK(0x144d, 0xc189, "Samsung Galaxy Flex Book (NT950QCG-X716)", ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET),
	SND_PCI_QUIRK(0x144d, 0xc18a, "Samsung Galaxy Book Ion (NP930XCJ-K01US)", ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET),
 
	SND_PCI_QUIRK(0x144d, 0xc830, "Samsung Galaxy Book Ion (NT950XCJ-X716A)", ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET),
	SND_PCI_QUIRK(0x144d, 0xc832, "Samsung Galaxy Book Flex Alpha (NP730QCJ)", ALC256_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET),

Galaxy Book Flex Alpha has ALC256 codec instead of ALC298 codec and has a different patch

There are also open bug reports awaiting a patch:
https://bugzilla.kernel.org/show_bug.cgi?id=205267
https://bugzilla.kernel.org/show_bug.cgi?id=216023
https://bugzilla.kernel.org/show_bug.cgi?id=188411

The kernel has a model alias name for both patches:

patch_realtek.c - sound/pci/hda/patch_realtek.c - Linux source code (v5.18.12) - Bootlin

    {.id = ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET, .name = "alc298-samsung-headphone"},
	{.id = ALC256_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET, .name = "alc256-samsung-headphone"},

The model alias can be added to unpatched systems as a modprobe option

sudo tee /etc/modprobe.d/samsung-headphone.conf <<< 'options snd-hda-intel model=alc298-samsung-headphone'
1 Like

Hello.

Is this patch available in built-in mic?

Hi,
I’m using a Galaxy book2 pro.
I follow this tutorial and now my microphone is working but the speakers don’t.

Can this issue come from pipewire?
Regards

Confirmed to work on Linux Mint 21 for Galaxy Book Pro 360 with the caveat that I need to run the script file on every restart (this is with using ExecStart=/bin/bash /home/YOURUSER/scripts/TO912.sh). However, Pop OS will not work as it running Pipewire instead of pulseaudio seems to need other workarounds.

I also skipped step 4 as mine uses tigerlake. Could probably change the skl to tgl or sth, but it still works.

More kernel patches have been back-ported to LTS kernels v5.15 and v5.10 for:

  • Notebook 9 Pen
  • Notebook 9 Pro
  • Galaxy Book Pro
  • Galaxy Book Pro 360

patch_realtek.c - sound/pci/hda/patch_realtek.c - Linux source code (v5.10.157) - Bootlin

	SND_PCI_QUIRK(0x144d, 0xc169, "Samsung Notebook 9 Pen (NP930SBE-K01US)", ALC298_FIXUP_SAMSUNG_AMP),
	SND_PCI_QUIRK(0x144d, 0xc176, "Samsung Notebook 9 Pro (NP930MBE-K04US)", ALC298_FIXUP_SAMSUNG_AMP),
	SND_PCI_QUIRK(0x144d, 0xc189, "Samsung Galaxy Flex Book (NT950QCG-X716)", ALC298_FIXUP_SAMSUNG_AMP),
	SND_PCI_QUIRK(0x144d, 0xc18a, "Samsung Galaxy Book Ion (NP930XCJ-K01US)", ALC298_FIXUP_SAMSUNG_AMP),
	SND_PCI_QUIRK(0x144d, 0xc1a3, "Samsung Galaxy Book Pro (NP935XDB-KC1SE)", ALC298_FIXUP_SAMSUNG_AMP),
	SND_PCI_QUIRK(0x144d, 0xc1a6, "Samsung Galaxy Book Pro 360 (NP930QBD)", ALC298_FIXUP_SAMSUNG_AMP),

	SND_PCI_QUIRK(0x144d, 0xc830, "Samsung Galaxy Book Ion (NT950XCJ-X716A)", ALC298_FIXUP_SAMSUNG_AMP),
	SND_PCI_QUIRK(0x144d, 0xc832, "Samsung Galaxy Book Flex Alpha (NP730QCJ)", ALC256_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET),

Previous kernel patch ALC298_FIXUP_SAMSUNG_HEADPHONE_VERY_QUIET was replaced with ALC298_FIXUP_SAMSUNG_AMP in Sep 2022.
The model alias name in previous post #27 was also changed:

LKML: Greg Kroah-Hartman: [PATCH 5.19 145/155] ALSA: hda/realtek: Add speaker AMP init for Samsung laptops with ALC298

    {.id = ALC298_FIXUP_SAMSUNG_AMP, .name = "alc298-samsung-amp"},

To use new model alias name on an unpatched system:

sudo tee /etc/modprobe.d/samsung-headphone.conf <<< 'options snd-hda-intel model=alc298-samsung-amp'