[BUG] Huawei Matebook 14s headphone / speaker problem (CX8070 codec)
I tried different distros Ubuntu 21.10/Fedora and now Arch linux. I have an issue with speaker, headphone settings. First of all the laptop has 4 speakers and 4 dijital mics. Well these are problems:
- Gnome volume slider does not effect on volume. Each clicks give same beep until below %5 and volume goes down.
- If I plug a headphone, no sound at headphone and sound still comes from speakers. And after unplugged the headphone, speakers go mutted!
- To unmut the speakers I have to go alsamixer and select sound card 'sof-hda-dsp' (codec Chip: Conexant CX8070 ) and then I have to unmut headphone
- I can set speaker's volume from alsamixer's headphone slider. Speaker slider has no effect, Master slider only effect depends on headphone slider point.
Environment
- Branch name and commit hash of the 2 repositories: sof (firmware/topology) and linux (kernel driver).
- Kernel: linux 5.15.10-arch1
- SOF: 1.9.3
- Name of the topology file
- Topology: {FILE} no idead. (lead me for the file please)
- Name of the platform(s) on which the bug is observed.
- Platform: Arclinux
I tried several model=NAME options but there is no result. Here they are, installed alsa packages with sof-bin: alsa-card-profiles, alsa-firmware, alsa-lib, alsa-plugins, alsa-topology-conf, alsa-ucm-conf, alsa-utils, pulseaudio-alsa, zita-alsa-pcmi, sof-firmware, sof-tools
If you need more log, outputs, please lead me :)
aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: sofhdadsp [sof-hda-dsp], device 0: HDA Analog (*) []
Subdevices: 0/1
Subdevice #0: subdevice #0
card 0: sofhdadsp [sof-hda-dsp], device 1: HDA Digital (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofhdadsp [sof-hda-dsp], device 3: HDMI1 (*) []
Subdevices: 1/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
pacmd list-sinks
4 sink(s) available.
index: 0
name: <alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp_5__sink>
driver: <module-alsa-card.c>
flags: HARDWARE DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
state: SUSPENDED
suspend cause: IDLE
priority: 9037
volume: front-left: 65536 / 100% / 0.00 dB, front-right: 65536 / 100% / 0.00 dB
balance 0.00
base volume: 65536 / 100% / 0.00 dB
volume steps: 65537
muted: no
current latency: 0.00 ms
max request: 0 KiB
max rewind: 0 KiB
monitor source: 0
sample spec: s24-32le 2ch 48000Hz
channel map: front-left,front-right
Stereo
used by: 0
linked by: 0
configured latency: 0.00 ms; range is 0.50 .. 170.67 ms
card: 0 <alsa_card.pci-0000_00_1f.3-platform-skl_hda_dsp_generic>
module: 6
properties:
alsa.resolution_bits = "32"
device.api = "alsa"
device.class = "sound"
alsa.class = "generic"
alsa.subclass = "generic-mix"
alsa.name = ""
alsa.id = "HDMI3 (*)"
alsa.subdevice = "0"
alsa.subdevice_name = "subdevice #0"
alsa.device = "5"
alsa.card = "0"
alsa.card_name = "sof-hda-dsp"
alsa.long_card_name = "HUAWEI-HKD_WXX-M1010-HKD_WXX_PCB"
alsa.driver_name = "snd_soc_skl_hda_dsp"
device.bus_path = "pci-0000:00:1f.3-platform-skl_hda_dsp_generic"
sysfs.path = "/devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0"
device.bus = "pci"
device.vendor.id = "8086"
device.vendor.name = "Intel Corporation"
device.product.id = "a0c8"
device.product.name = "Tiger Lake-LP Smart Sound Technology Audio Controller"
device.string = "_ucm0001.hw:sofhdadsp,5"
device.buffering.buffer_size = "65536"
device.buffering.fragment_size = "16384"
device.access_mode = "mmap+timer"
device.profile.name = "HiFi: hw:sofhdadsp,5: sink"
device.profile.description = "HDMI / DisplayPort 3 Output"
alsa.mixer_device = "_ucm0001.hw:sofhdadsp"
device.description = "Tiger Lake-LP Smart Sound Technology Audio Controller HDMI / DisplayPort 3 Output"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
ports:
[Out] HDMI3: HDMI / DisplayPort 3 Output (priority 700, latency offset 0 usec, available: no)
properties:
active port: <[Out] HDMI3>
index: 1
name: <alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp_4__sink>
driver: <module-alsa-card.c>
flags: HARDWARE DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
state: SUSPENDED
suspend cause: IDLE
priority: 9036
volume: front-left: 65536 / 100% / 0.00 dB, front-right: 65536 / 100% / 0.00 dB
balance 0.00
base volume: 65536 / 100% / 0.00 dB
volume steps: 65537
muted: no
current latency: 0.00 ms
max request: 0 KiB
max rewind: 0 KiB
monitor source: 1
sample spec: s24-32le 2ch 48000Hz
channel map: front-left,front-right
Stereo
used by: 0
linked by: 0
configured latency: 0.00 ms; range is 0.50 .. 170.67 ms
card: 0 <alsa_card.pci-0000_00_1f.3-platform-skl_hda_dsp_generic>
module: 6
properties:
alsa.resolution_bits = "32"
device.api = "alsa"
device.class = "sound"
alsa.class = "generic"
alsa.subclass = "generic-mix"
alsa.name = ""
alsa.id = "HDMI2 (*)"
alsa.subdevice = "0"
alsa.subdevice_name = "subdevice #0"
alsa.device = "4"
alsa.card = "0"
alsa.card_name = "sof-hda-dsp"
alsa.long_card_name = "HUAWEI-HKD_WXX-M1010-HKD_WXX_PCB"
alsa.driver_name = "snd_soc_skl_hda_dsp"
device.bus_path = "pci-0000:00:1f.3-platform-skl_hda_dsp_generic"
sysfs.path = "/devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0"
device.bus = "pci"
device.vendor.id = "8086"
device.vendor.name = "Intel Corporation"
device.product.id = "a0c8"
device.product.name = "Tiger Lake-LP Smart Sound Technology Audio Controller"
device.string = "_ucm0001.hw:sofhdadsp,4"
device.buffering.buffer_size = "65536"
device.buffering.fragment_size = "16384"
device.access_mode = "mmap+timer"
device.profile.name = "HiFi: hw:sofhdadsp,4: sink"
device.profile.description = "HDMI / DisplayPort 2 Output"
alsa.mixer_device = "_ucm0001.hw:sofhdadsp"
device.description = "Tiger Lake-LP Smart Sound Technology Audio Controller HDMI / DisplayPort 2 Output"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
ports:
[Out] HDMI2: HDMI / DisplayPort 2 Output (priority 600, latency offset 0 usec, available: no)
properties:
active port: <[Out] HDMI2>
index: 2
name: <alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp_3__sink>
driver: <module-alsa-card.c>
flags: HARDWARE DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
state: SUSPENDED
suspend cause: IDLE
priority: 9035
volume: front-left: 65536 / 100% / 0.00 dB, front-right: 65536 / 100% / 0.00 dB
balance 0.00
base volume: 65536 / 100% / 0.00 dB
volume steps: 65537
muted: no
current latency: 0.00 ms
max request: 0 KiB
max rewind: 0 KiB
monitor source: 2
sample spec: s24-32le 2ch 48000Hz
channel map: front-left,front-right
Stereo
used by: 0
linked by: 0
configured latency: 0.00 ms; range is 0.50 .. 170.67 ms
card: 0 <alsa_card.pci-0000_00_1f.3-platform-skl_hda_dsp_generic>
module: 6
properties:
alsa.resolution_bits = "32"
device.api = "alsa"
device.class = "sound"
alsa.class = "generic"
alsa.subclass = "generic-mix"
alsa.name = ""
alsa.id = "HDMI1 (*)"
alsa.subdevice = "0"
alsa.subdevice_name = "subdevice #0"
alsa.device = "3"
alsa.card = "0"
alsa.card_name = "sof-hda-dsp"
alsa.long_card_name = "HUAWEI-HKD_WXX-M1010-HKD_WXX_PCB"
alsa.driver_name = "snd_soc_skl_hda_dsp"
device.bus_path = "pci-0000:00:1f.3-platform-skl_hda_dsp_generic"
sysfs.path = "/devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0"
device.bus = "pci"
device.vendor.id = "8086"
device.vendor.name = "Intel Corporation"
device.product.id = "a0c8"
device.product.name = "Tiger Lake-LP Smart Sound Technology Audio Controller"
device.string = "_ucm0001.hw:sofhdadsp,3"
device.buffering.buffer_size = "65536"
device.buffering.fragment_size = "16384"
device.access_mode = "mmap+timer"
device.profile.name = "HiFi: hw:sofhdadsp,3: sink"
device.profile.description = "HDMI / DisplayPort 1 Output"
alsa.mixer_device = "_ucm0001.hw:sofhdadsp"
device.description = "Tiger Lake-LP Smart Sound Technology Audio Controller HDMI / DisplayPort 1 Output"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
ports:
[Out] HDMI1: HDMI / DisplayPort 1 Output (priority 500, latency offset 0 usec, available: no)
properties:
active port: <[Out] HDMI1>
* index: 3
name: <alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp__sink>
driver: <module-alsa-card.c>
flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
state: IDLE
suspend cause: (none)
priority: 9032
volume: front-left: 31032 / 47% / -19.48 dB, front-right: 31032 / 47% / -19.48 dB
balance 0.00
base volume: 65536 / 100% / 0.00 dB
volume steps: 65537
muted: no
current latency: 40.32 ms
max request: 15 KiB
max rewind: 15 KiB
monitor source: 3
sample spec: s24-32le 2ch 48000Hz
channel map: front-left,front-right
Stereo
used by: 0
linked by: 2
configured latency: 40.00 ms; range is 0.50 .. 170.67 ms
card: 0 <alsa_card.pci-0000_00_1f.3-platform-skl_hda_dsp_generic>
module: 6
properties:
alsa.resolution_bits = "32"
device.api = "alsa"
device.class = "sound"
alsa.class = "generic"
alsa.subclass = "generic-mix"
alsa.name = ""
alsa.id = "HDA Analog (*)"
alsa.subdevice = "0"
alsa.subdevice_name = "subdevice #0"
alsa.device = "0"
alsa.card = "0"
alsa.card_name = "sof-hda-dsp"
alsa.long_card_name = "HUAWEI-HKD_WXX-M1010-HKD_WXX_PCB"
alsa.driver_name = "snd_soc_skl_hda_dsp"
device.bus_path = "pci-0000:00:1f.3-platform-skl_hda_dsp_generic"
sysfs.path = "/devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0"
device.bus = "pci"
device.vendor.id = "8086"
device.vendor.name = "Intel Corporation"
device.product.id = "a0c8"
device.product.name = "Tiger Lake-LP Smart Sound Technology Audio Controller"
device.string = "_ucm0001.hw:sofhdadsp"
device.buffering.buffer_size = "65536"
device.buffering.fragment_size = "16384"
device.access_mode = "mmap+timer"
device.profile.name = "HiFi: hw:sofhdadsp: sink"
device.profile.description = "Speaker + Headphones"
alsa.mixer_device = "_ucm0001.hw:sofhdadsp"
device.description = "Tiger Lake-LP Smart Sound Technology Audio Controller Speaker + Headphones"
module-udev-detect.discovered = "1"
device.icon_name = "audio-card-pci"
ports:
[Out] Speaker: Speaker (priority 100, latency offset 0 usec, available: unknown)
properties:
[Out] Headphones: Headphones (priority 200, latency offset 0 usec, available: no)
properties:
active port: <[Out] Speaker>
sudo lshw -c multimedia
*-usb:1
description: Video
product: USB Camera
vendor: 3730304231385631354A4A
physical id: 6
bus info: usb@3:6
version: 0.0e
serial: 200901010001
capabilities: usb-2.01
configuration: driver=uvcvideo maxpower=500mA speed=480Mbit/s
*-multimedia
description: Multimedia audio controller
product: Tiger Lake-LP Smart Sound Technology Audio Controller
vendor: Intel Corporation
physical id: 1f.3
bus info: pci@0000:00:1f.3
version: 20
width: 64 bits
clock: 33MHz
capabilities: pm msi bus_master cap_list
configuration: driver=sof-audio-pci-intel-tgl latency=32
resources: iomemory:600-5ff iomemory:600-5ff irq:168 memory:601d170000-601d173fff memory:601d000000-601d0fffff
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 1: HDA Digital (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofhdadsp [sof-hda-dsp], device 6: DMIC (*) []
Subdevices: 0/1
Subdevice #0: subdevice #0
card 0: sofhdadsp [sof-hda-dsp], device 7: DMIC16kHz (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
amixer
Simple mixer control 'Master',0
Capabilities: pvolume pswitch pswitch-joined
Playback channels: Front Left - Front Right
Limits: Playback 0 - 65536
Mono:
Front Left: Playback 31032 [47%] [on]
Front Right: Playback 31032 [47%] [on]
Simple mixer control 'Capture',0
Capabilities: cvolume cswitch cswitch-joined
Capture channels: Front Left - Front Right - Rear Left - Rear Right
Limits: Capture 0 - 65536
Front Left: Capture 65536 [100%] [off]
Front Right: Capture 65536 [100%] [off]
Rear Left: Capture 65536 [100%] [off]
Rear Right: Capture 65536 [100%] [off]
@fincan can you provide the output of dmesg. Transfering issue to kernel.
@fincan can you provide the output of dmesg. Transfering issue to kernel. dmesg.txt Hello, I attached dmesg as file.
Archlinux updated sof-firmware and tools from 1.9.3 to to 2.0. But the problem goes on.
I also this problem,CX8070,matebook14s, anything i can do?I want solve it
kernel:5.10.60 ,and after alsactl init , speaker can work.and I use
hda-verb.txt
headphone can work ,but so sorry use this script,headerphone and speaker work at the same time
@fincan I have the same problem, you get any solution?
@spacer2010 No, still waiting the fix. It seems it will be kernel/driver fix or something. I suppose we will wait some more.
@fincan for the speakers and headphones, please see https://thesofproject.github.io/latest/getting_started/intel_debug/suggestions.html, this looks like a codec issue that you should be able to try by disabling the SOF driver
@plbossart I have already tried "options snd-intel-dspcfg dsp_driver=1" and it made no differences.
@fincan then it's not an SOF issue but a codec driver issue. Something's missing, e.g. a quirk at the codec level.
@plbossart yes you can be right, I have checked linux kernel doc and there are only 4 Conexant codecs; 5045, 5047, 5051 and 5066. mine is CX8070 :/. https://www.kernel.org/doc/html/latest/sound/hd-audio/models.html#conexant-5045
if you happen to have a Windows setup, you can try to find the 'right' configuration for the codec, it's painful to snoop and reverse engineer low-level commands but it's the only way I am aware of to bring Linux to parity with Windows. see e.g. https://github.com/thesofproject/linux/issues/3356#issuecomment-1005381689
@plbossart there is only Archlinux in my system and reverse-engineering is over my computer skill :).
Today Archlinux updated kernel 5.15 >> 5.16 but the issue goes on.
have same issue on my Honor Magicbook 14 view (Manjaro distro), since it has same audio card CX8070. Headphones and speakers play simultaneously when headphones are plugged in Has anyone found a solution? Kernel: 5.16 SOF: 2.0
have same issue on my Honor Magicbook 14 view (Manjaro distro), since it has same audio card CX8070. Headphones and speakers play simultaneously when headphones are plugged in Has anyone found a solution? Kernel: 5.16 SOF: 2.0
There is no solution yet. I use BT headphone.
There is no solution yet. I use BT headphone.
I see. Thank you!
No, I dosen't found any solution, sorry
On Sat, 19 Mar 2022, 14:23 Artem Ivanec @.***> wrote:
There is no solution yet. I use BT headphone.
I see. Thank you!
— Reply to this email directly, view it on GitHub https://github.com/thesofproject/linux/issues/3350#issuecomment-1072984058, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHICGOHO4C7UD3CKQZA7QK3VAWTI7ANCNFSM5KTOKH7Q . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID: @.***>
Archlinux linux-5.17.3 and lastest sof-bin 2.1.1 there is still no sound from headphone.
By the way switch from pulse to pipewire and there are some error log about conexant after pipewire switch:
"""
17:06:06 pipewire: mod.adapter: usage: node.name=
@cihatertem can you add this file sof-dyndbg.conf.txt as /etc/modprobe.d/sof-dyndbg.conf, reboot and attach the dmesg log.
we've seen this error with the digital path that no one actually uses, we should remove this option to make those them go away. Thanks.
@cihatertem can you add this file sof-dyndbg.conf.txt as /etc/modprobe.d/sof-dyndbg.conf, reboot and attach the dmesg log.
we've seen this error with the digital path that no one actually uses, we should remove this option to make those them go away. Thanks.
Here it is. dmesg.txt
I removed this digital path in https://github.com/thesofproject/sof/pull/5691
Can you back-up /lib/firmware/intel/sof-tplg/, unzip this file sof-hda-generic-idisp-4ch.tplg.gz and copy it to the directory, reboot and recheck the results.
Thanks!
I did it but still same. The new dmesg. log.txt
Hello, i have the same problem. I don't know if this can help. I tried the last weeks multiple distros and i tried 5.10-5.17, but always the same behaviour. Last week i tried Chrome OS Flex, which is running with kernel 5.10 and it is fully working. I'm not sure if it is working, because Google modified the kernel. I used "top" to see running processes. They are not using pulseaudio/pipewire. Then i installed Chrome OS over dual bot with brunch framework and so i had access to shell. i compared alsamixer and i saw no difference in the detected inputs/outputs. So i think Chrome OS is directly interacting with alsa.
Modified kernel by Google? Perhaps a working codec for this chipset? Is it a problem of pipewire/pulseaudio? Or special alsa config?
And another thing. I have here Manjaro, Linux Kernel 5.17, KDE Plasma. Running pipewire with pulseaudio in combination. If i switch the port of the soundcard to Headphones (Not connected) and setting the app, which is running sound to Audio Controller Speakers+Headphones then the sound and speakers are working correctly.

Sry for screenshot with german lang.
Edit: Everytime the app is closed and you open a new app, you must reset the port, then it is working again.
And another thing. I have here Manjaro, Linux Kernel 5.17, KDE Plasma. Running pipewire with pulseaudio in combination. If i switch the port of the soundcard to Headphones (Not connected) and setting the app, which is running sound to Audio Controller Speakers+Headphones then the sound and speakers are working correctly.
Sry for screenshot with german lang.
Edit: Everytime the app is closed and you open a new app, you must reset the port, then it is working again.
There is no selection in gnome sound control and pavu like KDE sound section. BTW chrome OS's situation is interesting. 3-4 months ago I use a firmware for intel wireless chipset from chrome os firmware package and the firmware was added linux firmware package 1 month ago. I hope same merge is happen soon for the our sound hardware :).
@cihatertem Last week i installed Fedora 35 and added the package pavu control. There i had the same possibility to switch the outputs and i simulated the same behaviuor to make the speaker working.
@cihatertem Last week i installed Fedora 35 and added the package pavu control. There i had the same possibility to switch the outputs and i simulated the same behaviuor to make the speaker working.
@rzwinge Sorry I have just seen your reply but my problem is no sound at headphones. Speakers works but instead catching headphones plugged in but no sound at headphones. I unmute both headphone and speakers but there is only sound at speakers.
Same issues here with my Matebook 14S, for reference: OS: Ubuntu 22.04 LTS GNOME: 42.1
Similarly to what was reported before, under alsamixer I have a volume bar for "Headphones" and "Speaker". When my headphones are not plugged in, using the volume button on my keyboard increases/decreases "Speaker", but it doesn't actually change the volume of my speakers, however, changing manually in alsamixer the "Headphones" volume bar does change the volume on my speakers. When plugged in, no volume comes out in my headphones - but, using the volume buttons now updates "Headphones", it does not actually change anything with my headphones but does modify the volume of my speakers. So it does detect when it's plugged in and when it's not, however speaker seems to be under "Headphones" rather than under "Speaker".
Bluetooth headphones work without any problem, volume button also works.
Same issues here with my Matebook 14S, for reference: OS: Ubuntu 22.04 LTS GNOME: 42.1
Similarly to what was reported before, under alsamixer I have a volume bar for "Headphones" and "Speaker". When my headphones are not plugged in, using the volume button on my keyboard increases/decreases "Speaker", but it doesn't actually change the volume of my speakers, however, changing manually in alsamixer the "Headphones" volume bar does change the volume on my speakers. When plugged in, no volume comes out in my headphones - but, using the volume buttons now updates "Headphones", it does not actually change anything with my headphones but does modify the volume of my speakers. So it does detect when it's plugged in and when it's not, however speaker seems to be under "Headphones" rather than under "Speaker".
Bluetooth headphones work without any problem, volume button also works.
I switched from Arch to Ubuntu 22.04 and yes my issue goes on here too. I checked 2.2rc changelog and I could not see any related topic with our problem. For a uncertain time, we'll carry this problem :). At least BT is works perfectly.