ALSA, PulseAudio and Intel HDA PCH with no sound

I only have a single on-board sound card which is a Realtek ALC298 and I do not have any specific needs for any advanced sound configurations. Just need a working sound system to listen to youtube videos, watch movies etc... So far I've followed many online articles. To summarize all of which I've tried:

  1. Figure out if channel(s) are muted. I used alsamixer and also checked the pavucontrol, both of which show no muted channels. I repeated this step when was on 3rd step (read below) and new channels did show from time to time, but ultimately no sound.

  2. Figure out if it's ALSA or just PulseAudio issue. So I used aplay -l:

**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC298 Analog [ALC298 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 10: HDMI 4 [HDMI 4]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

From there used a PCM formatted wav file aplay -D plughw:0,0 test.wav which gave:

Playing WAVE 'test.wav' : Signed 32 bit Little Endian, Rate 44100 Hz, Stereo

But nothing! no sound nowhere, speakers or headphones. I conculded that it's an ALSA problem and not a PulseAudio issue, but I do have a doubt as PulseAudio daemon was running throughout this step. As an interesting side note, when I was doing this step the gnome sound settings showed the sound bars moving as if something was playing :smiley:

  1. I found an article on kernel website about HDA audio and a kernel ability to dynamically reconfigure the audio codec without having to reboot the machine. I managed to find and use the hdajackretask utility which is part of alsa-tools repo and it provided me with a GUI. This utility writes the pin modifications to user_pin_configs file (FYI verified this manually after reboot). However I could not figure out the right combination of pin reassignments. Following are the pins that can be reassigned:
0x12
0x13
0x14
0x17
0x18
0x19
0x1a
0x1d
0x1e
0x1f
0x21
  1. My idea here was to basically use ALC269 model as I saw an interesting patch file when googling. Link is for rasp pi, but I figured it's worth a shot seeing the ALC269 is a supported kernel HDA audio model. Although this did not change anything, perhaps someone can benefit from it.

Any help is appreciated here. I'm way beyond my linux skills.

PS: manjaro, linux56 although all distributions have the same issue with the sound card. I've installed almost every distro in the past a few months hoping sound would work.

welcome to Manjaro @Jackson1

please get full ALSA data with alsa-info.sh --upload
and post the URL to alsa-project from response

here is the pastebin of alsa-info.sh

Edit 1
Figured to also add more information here. Using hda-verb utility and issuing a VREF change on 0x1a pin to change it from default HREZ (or whatever value it is) to 50, 80 or 100 fixes the headphones. For a while i wrote a systemd file to issue this command at startup, but eventually it stopped working (what a hack!!). I was hoping someone knowledgeable enough could point me in the right direction and I'd eventually make a patch for this chip.

Edit 2
Facts:

  1. ALC298 is from Realtek and is correctly identified.
  2. It is not an Intel HDA codec since it uses I2S bus codec instead which is currently unsupported by kernel (linux56).
  3. Many newer intel CPUs use Smart Sound Technology and this does not work in parallel with Intel HDA.

Good news?
I found a workaround to fix the headphones and that's about it. If you have a lenovo, samsung or huawei laptops that use I2S bus codec, then headphones is all you're going to get until further notice. Follow this Arch Topic to learn about the fix.

Samsung specifications confirm this system has 'Internal Dual Array Digital Mic'

for 'Intel Corporation Cannon Point-LP High Definition Audio Controller [8086:9dc8]'
suggest install sof-firmware

Sound Open Firmware is required to support 'Array Microphone' on this laptop

1 Like

Unfortunately that will not work. It turns out the BIOS/UEFI software does not correctly assign the codec pins. Kernel 5.7 has the aforementioned headphone fix included, but the speakers will not work. In the past the kernel team have used Windows to capture raw PCI communications between windows audio driver and the firmware in order to decode and add support in kernel. Same has to happen with this new chipset to write a C patch, fixing the speakers. I'll make sure to stay alert next time I'm buying a laptop.

for Cannon Lake devices it has usually been sofproject.org pushing out bugfixes

but you were correct, there was a headphone patch in May:

matches your audio codec ID in ALSA

Subsystem Id: 0x144dc169

and matches to the alsa-info in the Bugzilla report

comments from June indicate there is work on a fix for speakers progressing
https://bugzilla.kernel.org/show_bug.cgi?id=207423#c19

the Arch user/developers on this are doing an awesome job
i have not seen a bug report this well research and presented before. a lot of it is over my head, but the links for more reading should help with that

it looks like you have the best people on the case and it may not be too long to wait for a full solution

3 Likes

This topic was automatically closed after 180 days. New replies are no longer allowed.

Forum kindly sponsored by