都要提交

This commit is contained in:
2026-04-09 22:37:04 +08:00
parent 9346a81935
commit e8073bc448
60 changed files with 37093 additions and 29 deletions

33
audio_topology/01.txt Normal file
View File

@@ -0,0 +1,33 @@
jack@jack-Kaisa:~/文档/chromebox_10th_audio_driver$ amixer -c0 cget "iface=CARD,name='HDMI/DP,pcm=2 Jack'"
amixer -c0 cget "iface=CARD,name='HDMI/DP,pcm=3 Jack'"
amixer -c0 cget "iface=CARD,name='HDMI/DP,pcm=4 Jack'"
amixer -c0 cget "iface=PCM,name='ELD',device=2" | head -n 3
amixer -c0 cget "iface=PCM,name='ELD',device=3" | head -n 3
amixer -c0 cget "iface=PCM,name='ELD',device=4" | head -n 3
pactl list cards | sed -n '/cml_rt5682_def/,+220p' | grep -nE '\[Out\] HDMI|availability group|available|not available|device\.product\.name'
numid=10,iface=CARD,name='HDMI/DP,pcm=2 Jack'
; type=BOOLEAN,access=r-------,values=1
: values=on
numid=16,iface=CARD,name='HDMI/DP,pcm=3 Jack'
; type=BOOLEAN,access=r-------,values=1
: values=off
numid=22,iface=CARD,name='HDMI/DP,pcm=4 Jack'
; type=BOOLEAN,access=r-------,values=1
: values=off
numid=15,iface=PCM,name='ELD',device=2
; type=BYTES,access=r--v----,values=36
: values=0x10,0x00,0x08,0x00,0x6a,0x14,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x69,0xa7,0x27,0x41,0x53,0x55,0x53,0x20,0x4d,0x47,0x32,0x37,0x39,0x09,0x17,0x07,0x00,0x00,0x00
numid=21,iface=PCM,name='ELD',device=3
; type=BYTES,access=r--v----,values=0
: values=
numid=27,iface=PCM,name='ELD',device=4
; type=BYTES,access=r--v----,values=0
: values=
24: device.product.name = "Comet Lake PCH-LP cAVS"
50: [Out] HDMI3: HDMI3 (type: HDMI, priority: 200, latency offset: 0 usec, availability group: HDMI/DP,pcm=4, not available)
57: [Out] HDMI2: HDMI2 (type: HDMI, priority: 200, latency offset: 0 usec, availability group: HDMI/DP,pcm=3, not available)
64: [Out] HDMI1: HDMI1 (type: HDMI, priority: 200, latency offset: 0 usec, availability group: HDMI/DP,pcm=2, available)
70: device.product.name = "ASUS MG279"
jack@jack-Kaisa:~/文档/chromebox_10th_audio_driver$

33
audio_topology/02.txt Normal file
View File

@@ -0,0 +1,33 @@
jack@jack-Kaisa:~/文档/chromebox_10th_audio_driver$ amixer -c0 cget "iface=CARD,name='HDMI/DP,pcm=2 Jack'"
amixer -c0 cget "iface=CARD,name='HDMI/DP,pcm=3 Jack'"
amixer -c0 cget "iface=CARD,name='HDMI/DP,pcm=4 Jack'"
amixer -c0 cget "iface=PCM,name='ELD',device=2" | head -n 3
amixer -c0 cget "iface=PCM,name='ELD',device=3" | head -n 3
amixer -c0 cget "iface=PCM,name='ELD',device=4" | head -n 3
pactl list cards | sed -n '/cml_rt5682_def/,+220p' | grep -nE '\[Out\] HDMI|availability group|available|not available|device\.product\.name'
numid=10,iface=CARD,name='HDMI/DP,pcm=2 Jack'
; type=BOOLEAN,access=r-------,values=1
: values=on
numid=16,iface=CARD,name='HDMI/DP,pcm=3 Jack'
; type=BOOLEAN,access=r-------,values=1
: values=off
numid=22,iface=CARD,name='HDMI/DP,pcm=4 Jack'
; type=BOOLEAN,access=r-------,values=1
: values=off
numid=15,iface=PCM,name='ELD',device=2
; type=BYTES,access=r--v----,values=36
: values=0x10,0x00,0x08,0x00,0x6a,0x14,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x69,0xa7,0x27,0x41,0x53,0x55,0x53,0x20,0x4d,0x47,0x32,0x37,0x39,0x09,0x17,0x07,0x00,0x00,0x00
numid=21,iface=PCM,name='ELD',device=3
; type=BYTES,access=r--v----,values=0
: values=
numid=27,iface=PCM,name='ELD',device=4
; type=BYTES,access=r--v----,values=0
: values=
24: device.product.name = "Comet Lake PCH-LP cAVS"
50: [Out] HDMI3: HDMI3 (type: HDMI, priority: 200, latency offset: 0 usec, availability group: HDMI/DP,pcm=4, not available)
57: [Out] HDMI2: HDMI2 (type: HDMI, priority: 200, latency offset: 0 usec, availability group: HDMI/DP,pcm=3, not available)
64: [Out] HDMI1: HDMI1 (type: HDMI, priority: 200, latency offset: 0 usec, availability group: HDMI/DP,pcm=2, available)
70: device.product.name = "ASUS MG279"
jack@jack-Kaisa:~/文档/chromebox_10th_audio_driver$

33
audio_topology/03.txt Normal file
View File

@@ -0,0 +1,33 @@
jack@jack-Kaisa:~/文档/chromebox_10th_audio_driver$ amixer -c0 cget "iface=CARD,name='HDMI/DP,pcm=2 Jack'"
amixer -c0 cget "iface=CARD,name='HDMI/DP,pcm=3 Jack'"
amixer -c0 cget "iface=CARD,name='HDMI/DP,pcm=4 Jack'"
amixer -c0 cget "iface=PCM,name='ELD',device=2" | head -n 3
amixer -c0 cget "iface=PCM,name='ELD',device=3" | head -n 3
amixer -c0 cget "iface=PCM,name='ELD',device=4" | head -n 3
pactl list cards | sed -n '/cml_rt5682_def/,+220p' | grep -nE '\[Out\] HDMI|availability group|available|not available|device\.product\.name'
numid=10,iface=CARD,name='HDMI/DP,pcm=2 Jack'
; type=BOOLEAN,access=r-------,values=1
: values=on
numid=16,iface=CARD,name='HDMI/DP,pcm=3 Jack'
; type=BOOLEAN,access=r-------,values=1
: values=off
numid=22,iface=CARD,name='HDMI/DP,pcm=4 Jack'
; type=BOOLEAN,access=r-------,values=1
: values=off
numid=15,iface=PCM,name='ELD',device=2
; type=BYTES,access=r--v----,values=36
: values=0x10,0x00,0x08,0x00,0x6a,0x14,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x69,0xa7,0x27,0x41,0x53,0x55,0x53,0x20,0x4d,0x47,0x32,0x37,0x39,0x09,0x17,0x07,0x00,0x00,0x00
numid=21,iface=PCM,name='ELD',device=3
; type=BYTES,access=r--v----,values=0
: values=
numid=27,iface=PCM,name='ELD',device=4
; type=BYTES,access=r--v----,values=0
: values=
24: device.product.name = "Comet Lake PCH-LP cAVS"
50: [Out] HDMI3: HDMI3 (type: HDMI, priority: 200, latency offset: 0 usec, availability group: HDMI/DP,pcm=4, not available)
57: [Out] HDMI2: HDMI2 (type: HDMI, priority: 200, latency offset: 0 usec, availability group: HDMI/DP,pcm=3, not available)
64: [Out] HDMI1: HDMI1 (type: HDMI, priority: 200, latency offset: 0 usec, availability group: HDMI/DP,pcm=2, available)
70: device.product.name = "ASUS MG279"
jack@jack-Kaisa:~/文档/chromebox_10th_audio_driver$

View File

@@ -0,0 +1,52 @@
ubuntu@ubuntu:/media/ubuntu/5911bd26-2b5e-4275-a627-b51f558cfd38/home/jack/文档/chromebox_10th_audio_driver$ uname -a
aplay -l
amixer -c0 sset 'IEC958',0 on
amixer -c0 sset 'IEC958',1 on
amixer -c0 sset 'IEC958',2 on
speaker-test -D pipewire -c2 -t sine -f 440 -l 2
Linux ubuntu 6.17.0-14-generic #14~24.04.1-Ubuntu SMP PREEMPT_DYNAMIC Thu Jan 15 15:52:10 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
**** List of PLAYBACK Hardware Devices ****
card 0: sofrt5682 [sof-rt5682], device 0: Port1 (*) []
Subdevices: 0/1
Subdevice #0: subdevice #0
card 0: sofrt5682 [sof-rt5682], device 2: HDMI1 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofrt5682 [sof-rt5682], device 3: HDMI2 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofrt5682 [sof-rt5682], device 4: HDMI3 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
Simple mixer control 'IEC958',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'IEC958',1
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'IEC958',2
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
speaker-test 1.2.9
Playback device is pipewire
Stream parameters are 48000Hz, S16_LE, 2 channels
Sine wave rate is 440.0000Hz
Rate set to 48000Hz (requested 48000Hz)
Buffer size range from 64 to 1048576
Period size range from 32 to 524288
Using max buffer size 1048576
Periods = 4
was set period_size = 262144
was set buffer_size = 1048576
0 - Front Left
1 - Front Right
Time per period = 11.044935
0 - Front Left
1 - Front Right
Time per period = 11.091206

View File

@@ -0,0 +1,61 @@
ubuntu@ubuntu:/media/ubuntu/5911bd26-2b5e-4275-a627-b51f558cfd38/home/jack/文档/chromebox_10th_audio_driver$ alsaucm -c sof-rt5682 list _verbs
pactl list cards
0: HiFi
Kaisa (sof-rt5682): Port1 + HDMI1/2/3 (Jack-driven)
Card #44
Name: alsa_card.pci-0000_00_1f.3-platform-cml_rt5682_def
Driver: alsa
Owner Module: n/a
Properties:
api.acp.auto-port = "true"
api.acp.auto-profile = "false"
api.alsa.card = "0"
api.alsa.card.longname = "Google-Kaisa-rev4"
api.alsa.card.name = "sof-rt5682"
api.alsa.path = "hw:0"
api.alsa.use-acp = "true"
api.alsa.use-ucm = "true"
api.dbus.ReserveDevice1 = "Audio0"
device.api = "alsa"
device.bus = "pci"
device.bus_path = "pci-0000:00:1f.3-platform-cml_rt5682_def"
device.description = "Comet Lake PCH-LP cAVS"
device.enum.api = "udev"
device.icon_name = "audio-card-analog-pci"
device.name = "alsa_card.pci-0000_00_1f.3-platform-cml_rt5682_def"
device.nick = "sof-rt5682"
device.plugged.usec = "8441140"
device.product.id = "0x02c8"
device.product.name = "Comet Lake PCH-LP cAVS"
device.profile = "HiFi"
device.subsystem = "sound"
sysfs.path = "/devices/pci0000:00/0000:00:1f.3/cml_rt5682_def/sound/card0"
device.vendor.id = "0x8086"
device.vendor.name = "Intel Corporation"
media.class = "Audio/Device"
factory.id = "14"
client.id = "37"
object.id = "44"
object.serial = "44"
object.path = "alsa:pcm:0"
alsa.card = "0"
alsa.card_name = "sof-rt5682"
alsa.long_card_name = "Google-Kaisa-rev4"
alsa.driver_name = "snd_soc_sof_rt5682"
alsa.mixer_name = "Intel Kabylake HDMI"
alsa.components = "HDA:8086280b,80860101,00100000"
alsa.id = "sofrt5682"
device.string = "0"
Profiles:
off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
pro-audio: Pro Audio (sinks: 4, sources: 3, priority: 1, available: yes)
Active Profile: off
ubuntu@ubuntu:/media/ubuntu/5911bd26-2b5e-4275-a627-b51f558cfd38/home/jack/文档/chromebox_10th_audio_driver$ pactl set-card-profile "$(pactl list cards short | awk '/cml_rt5682/ {print $2; exit}')" HiFi
Failure: No such entity
ubuntu@ubuntu:/media/ubuntu/5911bd26-2b5e-4275-a627-b51f558cfd38/home/jack/文档/chromebox_10th_audio_driver$

View File

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,14 @@
ubuntu@ubuntu:/media/ubuntu/5911bd26-2b5e-4275-a627-b51f558cfd38/home/jack/文档/chromebox_10th_audio_driver$ ./scripts/install-kaisa-ucm-overlay.sh
systemctl --user restart wireplumber pipewire pipewire-pulse
>>> 安装 UCM2 -> /usr/share/alsa/ucm2/
>>> 安装 WirePlumber Lua -> /usr/share/wireplumber/main.lua.d/
>>> 重启用户 pipewire 栈
完成。请先验证 UCM 能解析(应列出 HiFi不应报 parse 错误):
alsaucm -c sof-rt5682 list _verbs
再按 docs/linux-hdmi/OPERATION_PipeWire_Kaisa_UCM_HiFi.md 验收 pactl / GNOME。
ubuntu@ubuntu:/media/ubuntu/5911bd26-2b5e-4275-a627-b51f558cfd38/home/jack/文档/chromebox_10th_audio_driver$ alsaucm -c sof-rt5682 list _verbs
0: HiFi
Kaisa (sof-rt5682): Port1 + HDMI1/2/3 (Jack-driven)
ubuntu@ubuntu:/media/ubuntu/5911bd26-2b5e-4275-a627-b51f558cfd38/home/jack/文档/chromebox_10th_audio_driver$

View File

@@ -0,0 +1,511 @@
ubuntu@ubuntu:/media/ubuntu/5911bd26-2b5e-4275-a627-b51f558cfd38/home/jack/文档/chromebox_10th_audio_driver$ ls
HISTORY.md README.md REPO_INDEX.md _bmad _bmad-output audio_topology bmad-help.zh-CN.md chromiumos_kernel debian docs help.md next.md reference report.txt scripts wireplumber
ubuntu@ubuntu:/media/ubuntu/5911bd26-2b5e-4275-a627-b51f558cfd38/home/jack/文档/chromebox_10th_audio_driver$ ./scripts/kaisa-audio-doctor.sh
================================================================================
Kaisa audio doctor (sof-rt5682) — report: /tmp/kaisa-audio-doctor_20260408_130755.log
================================================================================
$ uname -a
Linux ubuntu 6.17.0-14-generic #14~24.04.1-Ubuntu SMP PREEMPT_DYNAMIC Thu Jan 15 15:52:10 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
$ date
Wed Apr 8 13:07:55 UTC 2026
$ id
uid=1000(ubuntu) gid=1000(ubuntu) groups=1000(ubuntu),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),100(users),114(lpadmin),124(sambashare)
================================================================================
Session sanity (THIS OFTEN EXPLAINS 'no sound')
================================================================================
If you run this as root / without a logged-in desktop session:
- systemctl --user will be offline
- /run/user/$UID may not exist
- PipeWire/WirePlumber won't be running
- ALSA may show 'no soundcards found'
Current:
$ bash -lc echo "USER=$USER UID=$UID HOME=$HOME XDG_RUNTIME_DIR=${XDG_RUNTIME_DIR-}"
USER=ubuntu UID=1000 HOME=/home/ubuntu XDG_RUNTIME_DIR=/run/user/1000
$ bash -lc if [ -n "${XDG_RUNTIME_DIR-}" ]; then ls -ld "${XDG_RUNTIME_DIR}" 2>/dev/null || true; else echo "XDG_RUNTIME_DIR is empty"; fi
drwx------ 18 ubuntu ubuntu 560 Apr 8 13:07 /run/user/1000
$ bash -lc test -S "${XDG_RUNTIME_DIR-}/pipewire-0" && echo "pipewire socket: OK" || echo "pipewire socket: MISSING"
pipewire socket: OK
$ bash -lc test -S "${XDG_RUNTIME_DIR-}/pulse/native" && echo "pulse native socket: OK" || echo "pulse native socket: MISSING"
pulse native socket: OK
================================================================================
Versions (PipeWire / WirePlumber / ALSA utils)
================================================================================
$ pipewire --version
pipewire
Compiled with libpipewire 1.0.5
Linked with libpipewire 1.0.5
$ wireplumber --version
wireplumber
Compiled with libwireplumber 0.4.17
Linked with libwireplumber 0.4.17
$ wpctl --version
Error: Unknown option --version
Usage:
wpctl [OPTION…] COMMAND [COMMAND_OPTIONS] - WirePlumber Control CLI
Commands:
status
get-volume ID
inspect ID
set-default ID
set-volume ID VOL[%][-/+]
set-mute ID 1|0|toggle
set-profile ID INDEX
clear-default [ID]
Help Options:
-h, --help Show help options
Pass -h after a command to see command-specific options
$ pactl --version
./scripts/kaisa-audio-doctor.sh: line 62: pactl: command not found
$ pw-play --version
pw-play
Compiled with libpipewire 1.0.5
Linked with libpipewire 1.0.5
$ speaker-test --version
speaker-test: unrecognized option '--version'
Unknown option '?'
speaker-test 1.2.9
$ alsaucm --version
alsaucm: version 1.2.9
$ amixer --version
amixer version 1.2.9
$ aplay --version
aplay: version 1.2.9 by Jaroslav Kysela <perex@perex.cz>
================================================================================
User services status
================================================================================
$ systemctl --user is-system-running
running
$ systemctl --user status pipewire pipewire-pulse wireplumber --no-pager
● pipewire.service - PipeWire Multimedia Service
Loaded: loaded (/usr/lib/systemd/user/pipewire.service; enabled; preset: enabled)
Active: active (running) since Fri 2026-02-13 01:00:58 UTC; 1 month 24 days ago
TriggeredBy: ● pipewire.socket
Main PID: 2342 (pipewire)
Tasks: 3 (limit: 38168)
Memory: 6.1M (peak: 6.7M)
CPU: 265ms
CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service
└─2342 /usr/bin/pipewire
Feb 13 01:00:58 ubuntu systemd[2330]: Started pipewire.service - PipeWire Multimedia Service.
Feb 13 01:00:59 ubuntu pipewire[2342]: mod.jackdbus-detect: Failed to receive jackdbus reply: org.freedesktop.DBus.Error.ServiceUnknown: The name org.jackaudio.service was not provided by any .service files
● pipewire-pulse.service - PipeWire PulseAudio
Loaded: loaded (/usr/lib/systemd/user/pipewire-pulse.service; enabled; preset: enabled)
Active: active (running) since Fri 2026-02-13 01:00:58 UTC; 1 month 24 days ago
TriggeredBy: ● pipewire-pulse.socket
Main PID: 2346 (pipewire-pulse)
Tasks: 3 (limit: 38168)
Memory: 3.5M (peak: 4.3M)
CPU: 117ms
CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire-pulse.service
└─2346 /usr/bin/pipewire-pulse
Feb 13 01:00:58 ubuntu systemd[2330]: Started pipewire-pulse.service - PipeWire PulseAudio.
● wireplumber.service - Multimedia Service Session Manager
Loaded: loaded (/usr/lib/systemd/user/wireplumber.service; enabled; preset: enabled)
Active: active (running) since Fri 2026-02-13 01:00:58 UTC; 1 month 24 days ago
Main PID: 2345 (wireplumber)
Tasks: 6 (limit: 38168)
Memory: 10.3M (peak: 11.1M)
CPU: 635ms
CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/wireplumber.service
└─2345 /usr/bin/wireplumber
Feb 13 01:00:58 ubuntu systemd[2330]: Started wireplumber.service - Multimedia Service Session Manager.
Feb 13 01:00:59 ubuntu wireplumber[2345]: SPA handle 'api.libcamera.enum.manager' could not be loaded; is it installed?
Feb 13 01:00:59 ubuntu wireplumber[2345]: PipeWire's libcamera SPA missing or broken. libcamera not supported.
Feb 13 01:00:59 ubuntu wireplumber[2345]: Failed to get percentage from UPower: org.freedesktop.DBus.Error.NameHasNoOwner
$ systemctl --user status pipewire.socket wireplumber.socket --no-pager
Unit wireplumber.socket could not be found.
● pipewire.socket - PipeWire Multimedia System Sockets
Loaded: loaded (/usr/lib/systemd/user/pipewire.socket; enabled; preset: enabled)
Active: active (running) since Fri 2026-02-13 01:00:58 UTC; 1 month 24 days ago
Triggers: ● pipewire.service
Listen: /run/user/1000/pipewire-0 (Stream)
/run/user/1000/pipewire-0-manager (Stream)
CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/pipewire.socket
Feb 13 01:00:58 ubuntu systemd[2330]: Listening on pipewire.socket - PipeWire Multimedia System Sockets.
================================================================================
ALSA enumeration
================================================================================
$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: sofrt5682 [sof-rt5682], device 0: Port1 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofrt5682 [sof-rt5682], device 2: HDMI1 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofrt5682 [sof-rt5682], device 3: HDMI2 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofrt5682 [sof-rt5682], device 4: HDMI3 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
================================================================================
ALSA PCM list (check pipewire/default/pulse)
================================================================================
$ aplay -L
null
Discard all samples (playback) or generate zero samples (capture)
pipewire
PipeWire Sound Server
default
Default ALSA Output (currently PipeWire Media Server)
hw:CARD=sofrt5682,DEV=0
sof-rt5682,
Direct hardware device without any conversions
hw:CARD=sofrt5682,DEV=2
sof-rt5682,
Direct hardware device without any conversions
hw:CARD=sofrt5682,DEV=3
sof-rt5682,
Direct hardware device without any conversions
hw:CARD=sofrt5682,DEV=4
sof-rt5682,
Direct hardware device without any conversions
plughw:CARD=sofrt5682,DEV=0
sof-rt5682,
Hardware device with all software conversions
plughw:CARD=sofrt5682,DEV=2
sof-rt5682,
Hardware device with all software conversions
plughw:CARD=sofrt5682,DEV=3
sof-rt5682,
Hardware device with all software conversions
plughw:CARD=sofrt5682,DEV=4
sof-rt5682,
Hardware device with all software conversions
sysdefault:CARD=sofrt5682
sof-rt5682,
Default Audio Device
dmix:CARD=sofrt5682,DEV=0
sof-rt5682,
Direct sample mixing device
dmix:CARD=sofrt5682,DEV=2
sof-rt5682,
Direct sample mixing device
dmix:CARD=sofrt5682,DEV=3
sof-rt5682,
Direct sample mixing device
dmix:CARD=sofrt5682,DEV=4
sof-rt5682,
Direct sample mixing device
================================================================================
UCM sanity
================================================================================
$ alsaucm -c sof-rt5682 list _verbs
ALSA lib main.c:1554:(snd_use_case_mgr_open) error: failed to import sof-rt5682 use case configuration -2
alsaucm: error failed to open sound card sof-rt5682: No such file or directory
$ alsaucm -c sof-rt5682 list _devices
ALSA lib main.c:1554:(snd_use_case_mgr_open) error: failed to import sof-rt5682 use case configuration -2
alsaucm: error failed to open sound card sof-rt5682: No such file or directory
================================================================================
IEC958 switches (all 0/1/2)
================================================================================
$ amixer -c0 sget IEC958,0
Simple mixer control 'IEC958',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [off]
$ amixer -c0 sget IEC958,1
Simple mixer control 'IEC958',1
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
$ amixer -c0 sget IEC958,2
Simple mixer control 'IEC958',2
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
================================================================================
HDMI Jack states (on/off) + ELD controls
================================================================================
$ amixer -c0 cget numid=10
numid=10,iface=CARD,name='HDMI/DP,pcm=2 Jack'
; type=BOOLEAN,access=r-------,values=1
: values=on
$ amixer -c0 cget numid=16
numid=16,iface=CARD,name='HDMI/DP,pcm=3 Jack'
; type=BOOLEAN,access=r-------,values=1
: values=off
$ amixer -c0 cget numid=22
numid=22,iface=CARD,name='HDMI/DP,pcm=4 Jack'
; type=BOOLEAN,access=r-------,values=1
: values=off
$ amixer -c0 cget numid=15
numid=15,iface=PCM,name='ELD',device=2
; type=BYTES,access=r--v----,values=36
: values=0x10,0x00,0x08,0x00,0x6a,0x14,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x69,0xa7,0x27,0x41,0x53,0x55,0x53,0x20,0x4d,0x47,0x32,0x37,0x39,0x09,0x17,0x07,0x00,0x00,0x00
$ amixer -c0 cget numid=21
numid=21,iface=PCM,name='ELD',device=3
; type=BYTES,access=r--v----,values=0
: values=
$ amixer -c0 cget numid=27
numid=27,iface=PCM,name='ELD',device=4
; type=BYTES,access=r--v----,values=0
: values=
================================================================================
Installed files (system paths)
================================================================================
$ ls -l /usr/share/alsa/ucm2/conf.d/sof-rt5682/sof-rt5682.conf
ls: cannot access '/usr/share/alsa/ucm2/conf.d/sof-rt5682/sof-rt5682.conf': No such file or directory
$ ls -l /usr/share/alsa/ucm2/GoogleKaisa/sof-rt5682/HiFi.conf
ls: cannot access '/usr/share/alsa/ucm2/GoogleKaisa/sof-rt5682/HiFi.conf': No such file or directory
$ ls -l /usr/share/wireplumber/main.lua.d/60-kaisa-ucm.lua
ls: cannot access '/usr/share/wireplumber/main.lua.d/60-kaisa-ucm.lua': No such file or directory
$ ls -l /usr/share/wireplumber/main.lua.d/60-kaisa-ucm.lua.disabled
ls: cannot access '/usr/share/wireplumber/main.lua.d/60-kaisa-ucm.lua.disabled': No such file or directory
================================================================================
Potential conflicting WirePlumber snippets (user/system)
================================================================================
$ ls -la /home/ubuntu/.config/wireplumber/wireplumber.conf.d
ls: cannot access '/home/ubuntu/.config/wireplumber/wireplumber.conf.d': No such file or directory
$ ls -la /home/ubuntu/.config/wireplumber/wireplumber.conf.d/*kaisa*
$ ls -la /etc/wireplumber/wireplumber.conf.d
$ ls -la /etc/wireplumber/wireplumber.conf.d/*kaisa*
================================================================================
WirePlumber state (profile / nodes / routes)
================================================================================
$ ls -la /home/ubuntu/.local/state/wireplumber
total 4
drwx------ 2 ubuntu ubuntu 60 Feb 13 01:02 .
drwx------ 3 ubuntu ubuntu 60 Feb 13 01:00 ..
-rw-rw-r-- 1 ubuntu ubuntu 541 Feb 13 01:02 restore-stream
$ sed -n 1,200p /home/ubuntu/.local/state/wireplumber/default-profile
sed: can't read /home/ubuntu/.local/state/wireplumber/default-profile: No such file or directory
$ sed -n 1,200p /home/ubuntu/.local/state/wireplumber/default-nodes
sed: can't read /home/ubuntu/.local/state/wireplumber/default-nodes: No such file or directory
$ sed -n 1,200p /home/ubuntu/.local/state/wireplumber/default-routes
sed: can't read /home/ubuntu/.local/state/wireplumber/default-routes: No such file or directory
================================================================================
PipeWire card / profile / ports (focus: cml_rt5682_def)
================================================================================
$ pactl list cards short
./scripts/kaisa-audio-doctor.sh: line 62: pactl: command not found
./scripts/kaisa-audio-doctor.sh: line 62: pactl: command not found
================================================================================
Sinks (PipeWire) + default sink
================================================================================
$ pactl info
./scripts/kaisa-audio-doctor.sh: line 62: pactl: command not found
$ pactl list short sinks
./scripts/kaisa-audio-doctor.sh: line 62: pactl: command not found
$ wpctl status
PipeWire 'pipewire-0' [1.0.5, ubuntu@ubuntu, cookie:1694820104]
└─ Clients:
32. pipewire [1.0.5, ubuntu@ubuntu, pid:2346]
34. WirePlumber [1.0.5, ubuntu@ubuntu, pid:2345]
35. WirePlumber [export] [1.0.5, ubuntu@ubuntu, pid:2345]
50. GNOME Volume Control Media Keys [1.0.5, ubuntu@ubuntu, pid:2781]
51. gnome-shell [1.0.5, ubuntu@ubuntu, pid:2626]
52. GNOME Shell Volume Control [1.0.5, ubuntu@ubuntu, pid:2626]
53. xdg-desktop-portal [1.0.5, ubuntu@ubuntu, pid:3172]
54. Terminal [1.0.5, ubuntu@ubuntu, pid:6098]
55. wpctl [1.0.5, ubuntu@ubuntu, pid:6426]
Audio
├─ Devices:
│ 42. Comet Lake PCH-LP cAVS [alsa]
├─ Sinks:
│ * 47. Comet Lake PCH-LP cAVS Stereo [vol: 0.40]
├─ Sink endpoints:
├─ Sources:
│ 48. Comet Lake PCH-LP cAVS Stereo [vol: 1.00]
├─ Source endpoints:
└─ Streams:
Video
├─ Devices:
├─ Sinks:
├─ Sink endpoints:
├─ Sources:
├─ Source endpoints:
└─ Streams:
Settings
└─ Default Configured Node Names:
================================================================================
Quick playback tests (non-destructive)
================================================================================
Note: if ALSA 'pulse' PCM is missing, do NOT use: speaker-test -D pulse
Try these instead (they use PipeWire):
Tip: these are wrapped with a short timeout to avoid hanging.
(uses: timeout -k 1s 5s ... -> TERM then KILL)
$ timeout -k 1s 5s speaker-test -D pipewire -c2 -t sine -f 440 -l 1
speaker-test 1.2.9
Playback device is pipewire
Stream parameters are 48000Hz, S16_LE, 2 channels
Sine wave rate is 440.0000Hz
Rate set to 48000Hz (requested 48000Hz)
Buffer size range from 64 to 1048576
Period size range from 32 to 524288
Using max buffer size 1048576
Periods = 4
was set period_size = 262144
was set buffer_size = 1048576
0 - Front Left
1 - Front Right
Time per period = 5.555177
$ timeout -k 1s 5s speaker-test -D default -c2 -t sine -f 440 -l 1
speaker-test 1.2.9
Playback device is default
Stream parameters are 48000Hz, S16_LE, 2 channels
Sine wave rate is 440.0000Hz
Rate set to 48000Hz (requested 48000Hz)
Buffer size range from 64 to 1048576
Period size range from 32 to 524288
Using max buffer size 1048576
Periods = 4
was set period_size = 262144
was set buffer_size = 1048576
0 - Front Left
1 - Front Right
Time per period = 5.523937
$ timeout -k 1s 5s pw-play /usr/share/sounds/alsa/Front_Center.wav
$ timeout -k 1s 5s paplay /usr/share/sounds/alsa/Front_Center.wav
timeout: failed to run command paplay: No such file or directory
================================================================================
Recent logs (journalctl --user, current boot)
================================================================================
$ journalctl --user -u wireplumber -b --no-pager -n 200
Feb 13 01:00:58 ubuntu systemd[2330]: Started wireplumber.service - Multimedia Service Session Manager.
Feb 13 01:00:59 ubuntu wireplumber[2345]: SPA handle 'api.libcamera.enum.manager' could not be loaded; is it installed?
Feb 13 01:00:59 ubuntu wireplumber[2345]: PipeWire's libcamera SPA missing or broken. libcamera not supported.
Feb 13 01:00:59 ubuntu wireplumber[2345]: Failed to get percentage from UPower: org.freedesktop.DBus.Error.NameHasNoOwner
$ journalctl --user -u pipewire -b --no-pager -n 200
Feb 13 01:00:58 ubuntu systemd[2330]: Started pipewire.service - PipeWire Multimedia Service.
Feb 13 01:00:59 ubuntu pipewire[2342]: mod.jackdbus-detect: Failed to receive jackdbus reply: org.freedesktop.DBus.Error.ServiceUnknown: The name org.jackaudio.service was not provided by any .service files
$ journalctl --user -u pipewire-pulse -b --no-pager -n 200
Feb 13 01:00:58 ubuntu systemd[2330]: Started pipewire-pulse.service - PipeWire PulseAudio.
================================================================================
Hints
================================================================================
- If HDMI ports show "not available", verify cable/monitor input/EDID and re-plug.
- If profile keeps reverting after reboot, compare:
- ~/.local/state/wireplumber/default-profile
- /usr/share/wireplumber/main.lua.d/60-kaisa-ucm.lua (device.profile)
- any *kaisa* snippets under ~/.config/wireplumber/ or /etc/wireplumber/
- If set_hw_params errors appear in logs for a given pcm (2/3/4), test only ONE HDMI at a time and switch sink accordingly.
================================================================================
Done. Report saved to: /tmp/kaisa-audio-doctor_20260408_130755.log