Similar to this bug: https://bugzilla.kernel.org/show_bug.cgi?id=205275. On my MSI X580-A PRO motherboard there is no output from the analog audio, and the analog audio input is corrupted. The issue is resolved following Christian Lachner's patch, submitted at https://lkml.org/lkml/2020/8/28/1051. The issue likely effects kernel versions 4.19, 5.4, 5.8, 5.9 etc (I'm running this patch on 5.7.8 with no issues). It likely also effects similar X570 chipset devices. However, this patch seems to have side effects with nvidia (see comment 2 of the prior bug report), and also for this user: https://bugzilla.redhat.com/show_bug.cgi?id=1879277. This user doesn't appear to have any nvidia devices, so there may be some more complicated interaction occurring.
Could you give alsa-info.sh output on your system? Run the script with --no-upload option and attach to Bugzilla. At best, give the results on both patched and non-patched kernels.
Created attachment 292603 [details] output of alsa-info.sh with patched kernel
Created attachment 292605 [details] output of alsa-info.sh with unpatched kernel
Sure, I've just attached. I'm seeing some unusual behaviour across reboots with patched/unpatched kernel. It seems like sometimes the patched kernel is still bugged, and sometimes the unpatched works. I would like to confirm that the kernel is correctly building with/without the patch. Anyway, hopefully the attachments have some insight.
The comparison of those two files indicated a few differences: 1. The USB-audio device is registered as the first card 2. GPIO 0 and 1 are cleared after patch by some reason 3. Pin 0x1b (headphone) is connected to 0x0c -> DAC1 0x02, shared with the speaker 1 is likely just a coincidence by the parallel probe, but you can put a module option like options snd-usb-audio index=2 for enforcing the slot. I don't think this would matter, but who knows. 2 is mysterious, because clevo-p950 quirk doesn't touch GPIO at all. Maybe those are the ones tied with EAPD? You can toggle GPIO via hda-verb dynamically and see what influence they may have. 3 is the result of clevo-p950 quirk. And clevo-p950 quirk has two changes, - Enable some magic COEF alc_update_coef_idx(codec, 0x7, 0, 0x3c3); - Override the connection list to enforce the connection I wonder whether applying the COEF above would be enough without the connection change. Could you comment out two lines of snd_hda_override_conn_list() in alc1220_fixup_clevo_p950() and check whether it still works?
Created attachment 292639 [details] output of alsa-info.sh with patched kernel, minus override_conn_list calls
Re (3), see latest attachment. Audio seems to be ok across reboots. I can try toggling the GPIO manually later.