Open andreaconsole opened 8 months ago
did you only run the workaround once with echo -1 > /sys/...
? Have you already tried running the command, logging out and then logging in?
if you have created the systemd service, can you show me the output of the sudo systemctl status disable-sound-autosuspend.service
command?
from alsa-info.sh I see you have both pipewire and pulseaudio with only the first one running. Did you change anything manually or has it been like this since you installed it?
Hi Tom, thank you for answering. I didn't set up the systemd service because I first wanted to check if the workaround was effective for me.
I've just tried the sequence:
but still no sound.
Regarding the presence of both pulseaudio and pipewire, it probably dates back to when I installed Kubuntu on my laptop. I tried fixing the issue myself before realising how complex the solution was. I've never refreshed the installation since then (I've merely upgraded the system as new Kubuntu releases came out) as this is my "production" laptop, with lots of software painfully installed :)
I have the same model, I tried it on rc6 too, there is no sound. Although I turned on alsamixer, I used a workaround. https://github.com/codepayne/linux-sound-huawei/issues/27
are you both on Ubuntu 23.10? and you both see the sound card from alsamixer but not from Gnome/KDE settings right?
can you try to play an audio with the aplay
command? (@saber716rus remember to push Headphone and DAC to 100%)
In the meantime I'll also try Ubuntu 23.10
https://github.com/codepayne/linux-sound-huawei/issues/27#issuecomment-1868257677 there is also no sound. saber716rus@saber716rus-M1010 ~> aplay -d 1 /usr/share/sounds/alsa/Noise.wav Воспроизведение WAVE '/usr/share/sounds/alsa/Noise.wav' : Signed 16 bit Little Endian, Частота 48000 Гц, Моно saber716rus@saber716rus-M1010 ~>
I just tried. No sound
This is what I see:
In the meantime I'll also try Ubuntu 23.10
Here I am. After a fresh install, I just needed to install the 6.7-rc6 kernel from the mainline ppa, set the levels in alsamixer, and enable the workaround to get the audio to work. So I switched my system to PulseAudio and had the same situation as @andreaconsole. Returning to Pipewire the problems were resolved... probably by delving into the management of profiles in pulseaudio it should also work on pulseaudio.
To switch from pipewire to pulseaudio I run sudo apt install pulseaudio pipewire-pulse-
(pay attention to the last dash, for some reason pipewire-pulse is not automatically removed)
From pulseaudio to pipewire I run sudo apt install pipewire-audio
In any case, be careful to the packages that apt will install/remove before pressing the Y key, they should only be components of pipewire or pulseaudio.
@saber716rus I'm no expert but your situation seems very strange, IMO it is better to keep things separate in the relevant GitHub issues.
@TomZanna perhaps the problem is in the gnome's settings. Kde sees the sound card itself, while there will be no sound, but gnome does not see it. he writes a fictitious sound.
Thanks for helping out, Tom. I installed pipewire with sudo apt install pipewire-audio, but nothing changed. How do I switch to using it? I do not see any option in the config tool.
@andreaconsole It should be enabled by default but you can check by running systemctl --user status pipewire
and systemctl --user status pipewire-pulse
. You should see "active (running)"
In KDE settings you can still see the audio card right? Can you attach the output of alsa-info
and dpkg --list | grep "wire\|pulse"
?
do you have any possibility of trying a clean install of a distro with kernel 6.7-rc in a second/external disk or a second partition?
@TomZanna ok, the system returns active/running to both commands.
This is my alsa-info http://alsa-project.org/db/?f=1511e08d23aab877a0a1f4c3a76a6acc5612a642 and the result of dpkg --list | grep "wire\|pulse"
is attached.
In KDE settings I only have one option for playback device, which is "audio pro", as before.
Regarding the clean install, I would avoid that. I'm afraid I could mess up the laptop and jeopardize other my ongoing projects.
dkpg-wire.txt
@andreaconsole It should be enabled by default but you can check by running
systemctl --user status pipewire
andsystemctl --user status pipewire-pulse
. You should see "active (running)"In KDE settings you can still see the audio card right? Can you attach the output of
alsa-info
anddpkg --list | grep "wire\|pulse"
?do you have any possibility of trying a clean install of a distro with kernel 6.7-rc in a second/external disk or a second partition?
see what a picture the pavucontol gui gives
saber716rus@saber716rus-M1010 ~> dpkg --list | grep "wire|pulse" ii gstreamer1.0-pipewire:amd64 0.3.79-2 amd64 GStreamer 1.0 plugin for the PipeWire multimedia server ii libcanberra-pulse:amd64 0.30-10ubuntu4 amd64 PulseAudio backend for libcanberra ii libpipewire-0.3-0:amd64 0.3.79-2 amd64 libraries for the PipeWire multimedia server ii libpipewire-0.3-common 0.3.79-2 all libraries for the PipeWire multimedia server - common files ii libpipewire-0.3-modules:amd64 0.3.79-2 amd64 libraries for the PipeWire multimedia server - modules ii libpulse-mainloop-glib0:amd64 1:16.1+dfsg1-2ubuntu4 amd64 PulseAudio client libraries (glib support) ii libpulse0:amd64 1:16.1+dfsg1-2ubuntu4 amd64 PulseAudio client libraries ii libpulsedsp:amd64 1:16.1+dfsg1-2ubuntu4 amd64 PulseAudio OSS pre-load library ii libwireplumber-0.4-0:amd64 0.4.14-4ubuntu1 amd64 Shared libraries for WirePlumber ii pamixer 1.6-1 amd64 pulseaudio command line mixer ii pipewire:amd64 0.3.79-2 amd64 audio and video processing engine multimedia server ii pipewire-alsa:amd64 0.3.79-2 amd64 PipeWire ALSA plugin ii pipewire-audio 0.3.79-2 all recommended set of PipeWire packages for a standard audio desktop use ii pipewire-bin 0.3.79-2 amd64 PipeWire multimedia server - programs ii pipewire-pulse 0.3.79-2 amd64 PipeWire PulseAudio daemon rc pulseaudio 1:16.1+dfsg1-2ubuntu4 amd64 PulseAudio sound server ii pulseaudio-utils 1:16.1+dfsg1-2ubuntu4 amd64 Command line tools for the PulseAudio sound server ii rfkill 2.39.1-4ubuntu2 amd64 tool for enabling and disabling wireless devices ii wireless-regdb 2022.06.06-0ubuntu2 all wireless regulatory database ii wireless-tools 30~pre9-13.1ubuntu4 amd64 Tools for manipulating Linux Wireless Extensions ii wireplumber 0.4.14-4ubuntu1 amd64 modular session / policy manager for PipeWire saber716rus@saber716rus-M1010 ~>
saber716rus@saber716rus-M1010 ~ [1]> systemctl --user status pipewire ● pipewire.service - PipeWire Multimedia Service Loaded: loaded (/usr/lib/systemd/user/pipewire.service; enabled; preset: enabled) Active: active (running) since Sun 2023-12-24 13:28:47 MSK; 15min ago TriggeredBy: ● pipewire.socket Main PID: 1148 (pipewire) Tasks: 3 (limit: 18305) Memory: 28.6M CPU: 6.241s CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service └─1148 /usr/bin/pipewire
дек 24 13:29:48 saber716rus-M1010 pipewire[1148]: mod.adapter: 0x5bd55f8df120: can't get format: Нет такого файла или каталога
дек 24 13:29:48 saber716rus-M1010 pipewire[1148]: mod.adapter: usage: node.name=
дек 24 13:28:47 saber716rus-M1010 systemd[1141]: Started pipewire-pulse.service - PipeWire PulseAudio. saber716rus@saber716rus-M1010 ~>
@andreaconsole from alsa-info and dpkg everything seem right.
@saber716rus oh, I hadn't thought about pavucontrol. Here's mine. If I set it to Pro Audio the audio no longer works.
Remember that the workaround must be applied at every startup if you have not created the systemd service.
P.S. When reporting the output of a command, if possible attach a file or include them in a code snipped and also in a collapsed sections
@TomZanna this is weird: if I set profile -> off I don't have any output device available (pavucontrol: "no output device available")
@andreaconsole how many entries do you have in the configuration tab?
We are interested in ACP/ACP3x/ACP6x audio coprocessor
, Radeon HD Audio Controller
is the sound via HDMI output.
I tried the "pro" profile, but there is still no sound.
@TomZanna I have the same options as @saber716rus
my impression is that the sound server (PulseAudio or Pipewire) is making a mess in detecting sound cards. It would be interesting to be able to test the individual sound cards directly but I don't know how 🤷♂️😢
Thanks anyway. It seems I will have to wait a little longer...
my impression is that the sound server (PulseAudio or Pipewire) is making a mess in detecting sound cards. It would be interesting to be able to test the individual sound cards directly but I don't know how 🤷♂️😢
perhaps you are right.
Could the output of wireplumber be useful? wireplumber.txt
@andreaconsole @saber716rus can you try the today's Fedora Workstation Rawhide? just boot it from a usb, adjust the levels in alsamixer and apply the workaround. At the moment it's only available from the official website, later you will also be able to find it from mirrors such as fedora.mirror.garr.it
Also in this issue similar to yours they solved it by creating a new account.
It's a different model, give it a try but I don't have much hope.
Hi @TomZanna , I tried by creating a new account, but it didn't work. I tried booting Fedora from the usb, too. Alsamixer shows the sound card (I applied the same changes as in my Kubuntu installation), but it is not available in the system configuration tool (it only shows the "dummy" option). I applied the workaround and even created an additional user to switch to, but nothing changed in the config menu.
@TomZanna @andreaconsole @saber716rus I have been working on a proper card profile for this sound card. This new profile also adds proper support for the internal DMIC microphone and support for microphones from headsets. Maybe this fixes some of your issues?
The profile can be found here: https://github.com/codepayne/alsa-ucm-conf
To install: curl -L -o alsa-ucm-conf.tar.gz https://github.com/codepayne/alsa-ucm-conf/archive/refs/heads/master.tar.gz sudo tar xvzf alsa-ucm-conf.tar.gz -C /usr/share/alsa --strip-components=1 --wildcards "/ucm" "/ucm2"
In order to reload the new profile settings run these commands: alsaucm -c acp3x-es83xx reload && sudo alsactl restore -P && alsactl init
Then restart the laptop.
This will only work on the driver from upstream, meaning only the rc kernels for the moment ( doesn't work on my sound drivers from my github).
@andreaconsole When you play video in youtube do you observe that the video stream flows at normal speed, or does it hang? Can you play a video in youtube for a few seconds and then paste the output from /proc/interrupts?
@codepayne
tar: /ucm: Not found in archive
tar: /ucm2: Not found in archive
tar: Exiting with failure status due to previous errors
what did I do wrong?
Can you play a video in youtube for a few seconds and then paste the output from /proc/interrupts?
Do you mean after applying the workaround?
@andreaconsole can you look inside the archive that curl downloaded, do you see folders named ucm and ucm2?
Do you mean after applying the workaround?
Yes after the workaround.
@andreaconsole can you look inside the archive that curl downloaded, do you see folders named ucm and ucm2?
Yes, these two folders are both present
@andreaconsole ok, the oneliner work for me, you can do the step manually:
Delete /usr/share/alsa/ucm and /usr/share/alsa/ucm2 folders, and replace them with the two folders from the archive.
Youtube videos play smooth. Here is the output of proc/interrupt [Uploading proc_int.txt…]()
@andreaconsole Can you also attach a screenshot from pavucontrol on the input and output tab? by the way I can't download the output of /proc/interrupts for some reason.
@codepayne copied and initialized and rebooted. There are no changes.
saber716rus@saber716rus-M1010 ~> alsaucm -c acp3x-es83xx reload && sudo alsactl restore -P && alsactl init
[sudo] пароль для saber716rus:
Found hardware: "HDA-Intel" "ATI R6xx HDMI" "HDA:1002aa01,00aa0100,00100700" "0x152d" "0x1365"
Hardware is initialized using a generic method
saber716rus@saber716rus-M1010 ~ [99]>
@saber716rus post screenshots from the input and output tabs of pavucontrol.
That's what I told you earlier.
@codepayne I have a core saber716rus@saber716rus-M1010 ~> uname -a Linux saber716rus-M1010 6.7.0-060700rc6-generic #202312172332 SMP PREEMPT_DYNAMIC Sun Dec 17 23:41:37 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux saber716rus@saber716rus-M1010 ~>
Attached the screenshots of my pavucontrol after the change you proposed and after applying the workaround
@andreaconsole The UCM profile doesn't seem to be enabled, don't understand why. WHat do you have in the input devices and output devices tab? Can you paste the output of: alsactl info ? Also reupload the /proc/interrupts output, I can't download it.
Here they are: alsactlinfo.txt proc_int.txt
@andreaconsole The good news is that it seems that the sound works ok for you since videos do not hang and interrupts occur on the i2s bus. It looks like it's something related to pipewire or pulseaudio. Which one do you use right now ?
How do I check?
systemctl --user status pulseaudio
systemctl --user status pipewire
pactl info | grep "Server Name" -> Server Name: PulseAudio (on PipeWire 0.3.79)
andrea@andrea-BOM-WXX9:~$ systemctl --user status pulseaudio Unit pulseaudio.service could not be found. andrea@andrea-BOM-WXX9:~$ systemctl --user status pipewire ● pipewire.service - PipeWire Multimedia Service Loaded: loaded (/usr/lib/systemd/user/pipewire.service; enabled; preset: enabled) Active: active (running) since Sat 2023-12-30 17:51:15 CET; 23min ago TriggeredBy: ● pipewire.socket Main PID: 1806 (pipewire) Tasks: 3 (limit: 8588) Memory: 22.7M CPU: 23.676s CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service └─1806 /usr/bin/pipewire dic 30 17:51:15 andrea-BOM-WXX9 pipewire[1806]: spa.alsa: Broken configuration: no configurations available: Invalid argument dic 30 17:51:15 andrea-BOM-WXX9 pipewire[1806]: spa.alsa: Broken configuration: no configurations available: Invalid argument dic 30 17:51:15 andrea-BOM-WXX9 pipewire[1806]: mod.adapter: 0x59f68e7826e0: can't get format: No such file or directory dic 30 17:51:15 andrea-BOM-WXX9 pipewire[1806]: mod.adapter: usage: node.name=
dic 30 17:52:49 andrea-BOM-WXX9 pipewire[1806]: spa.alsa: hw:1: snd_pcm_drop No such device dic 30 17:52:49 andrea-BOM-WXX9 pipewire[1806]: spa.alsa: hw:1: close failed: No such device dic 30 17:52:49 andrea-BOM-WXX9 pipewire[1806]: spa.alsa: front:1: snd_pcm_drop No such device dic 30 17:52:49 andrea-BOM-WXX9 pipewire[1806]: spa.alsa: front:1: close failed: No such device dic 30 18:06:00 andrea-BOM-WXX9 pipewire[1806]: spa.alsa: front:1: snd_pcm_drop No such device dic 30 18:06:00 andrea-BOM-WXX9 pipewire[1806]: spa.alsa: front:1: close failed: No such device
saber716rus@saber716rus-M1010 ~> alsactl info #
#
#
This script visits the following commands/files to collect diagnostic information about your ALSA installation and sound related hardware.
dmesg lspci aplay amixer alsactl rpm, dpkg /proc/asound/ /sys/class/sound/ ~/.asoundrc (etc.)
See './alsa-info.sh --help' for command line options.
cat: '/sys/module/snd_acp_legacy_mach/parameters/*': No such file or directory ./alsa-info.sh: line 659: tree: command not found ./alsa-info.sh: line 659: tree: command not found dmesg: read kernel buffer failed: Operation not permitted Automatically upload ALSA information to www.alsa-project.org? [y/N] : y Uploading information to www.alsa-project.org ... Done!
Your ALSA information is located at http://alsa-project.org/db/?f=947c55517f110162e6f0277b737403a659c3629a Please inform the person helping you.
saber716rus@saber716rus-M1010 ~> systemctl-pipe.txt systemctl-pulse.txt
@andreaconsole You have pipewire running, can you run the command: pipewire --version and paste the output.
We need to enable the debug logs of pipewire to see what happens: first copy this file to your home config folder:
cp /usr/share/pipewire/pipewire.conf ~/.config/pipewire/pipewire.conf
Then edit the file from ~/.config/pipewire/pipewire.conf and search for: log.level Uncomment the line and set it to value 5 like this:
log.level = 5
Then restart pipewire:
systemctl --user --now restart pipewire.service pipewire.socket pipewire-pulse.service pipewire-pulse.socket wireplumber.service
Then upload the logs here, you can get them like this:
journalctl --user -u pipewire -b > pipewire-logs.txt
pipewire Compiled with libpipewire 0.3.79 Linked with libpipewire 0.3.79
I had to create the "pipewire" folder within my .config folder because it was not there (is it weird?). This is the log after restarting the service: pipewire-logs.txt
@andreaconsole The input devices and output devices tab, can you upload the screenshots?
@andreaconsole also install the tree package, and then issue the command:
tree /sys/class/sound/
/sys/class/sound/
├── card0 -> ../../devices/pci0000:00/0000:00:08.1/0000:03:00.1/sound/card0
├── card1 -> ../../devices/pci0000:00/0000:00:08.1/0000:03:00.5/acp_asoc_renoir.0/acp3x-es83xx/sound/card1
├── controlC0 -> ../../devices/pci0000:00/0000:00:08.1/0000:03:00.1/sound/card0/controlC0
├── controlC1 -> ../../devices/pci0000:00/0000:00:08.1/0000:03:00.5/acp_asoc_renoir.0/acp3x-es83xx/sound/card1/controlC1
├── hwC0D0 -> ../../devices/pci0000:00/0000:00:08.1/0000:03:00.1/sound/card0/hwC0D0
├── pcmC0D3p -> ../../devices/pci0000:00/0000:00:08.1/0000:03:00.1/sound/card0/pcmC0D3p
├── pcmC1D0c -> ../../devices/pci0000:00/0000:00:08.1/0000:03:00.5/acp_asoc_renoir.0/acp3x-es83xx/sound/card1/pcmC1D0c
├── pcmC1D0p -> ../../devices/pci0000:00/0000:00:08.1/0000:03:00.5/acp_asoc_renoir.0/acp3x-es83xx/sound/card1/pcmC1D0p
├── pcmC1D1c -> ../../devices/pci0000:00/0000:00:08.1/0000:03:00.5/acp_asoc_renoir.0/acp3x-es83xx/sound/card1/pcmC1D1c
├── seq -> ../../devices/virtual/sound/seq
└── timer -> ../../devices/virtual/sound/timer
Input and output device options in the KDE configuration tool are Pro Audio and Off. With pavucontrol I see some additional options which are not available.
Hi @codepayne , I've just installed 6.7rc5 on Ubuntu 23.10 (6.7.0-060700rc5-generic (64-bit); HUAWEI BOM-WXX9 M1010). I took a look at the wiki and at this page to configure alsamixer and run the command you suggested as root (echo -1 > /sys/bus/pci/drivers/snd_acp_pci/0000:03:00.5/power/autosuspend_delay_ms), but the pc is still silent. Any hints? Thanks a lot! Free beer for you when you come to Rome!
Attached
dmesg.txt
http://alsa-project.org/db/?f=bb9c6b623e1b0015506f194ec7f76783cc7120b0