View previous topic :: View next topic |
Author |
Message |
newin n00b
Joined: 27 Oct 2012 Posts: 31
|
Posted: Sun Dec 08, 2024 3:53 pm Post subject: Realtek ALC1220 appear as generic and has no controls. |
|
|
Hi,
It's been a long time since I've posted here. This time it won't be a cryptic and deeply specific GPU thing.
In the past on all my machines my experience with sound on gentoo was very painless and quite amazing: enable snd_hda, enable the right card, install alsa and I didn't even need to play with asound.conf it just worked out of the box.
But this time, I have a quite simple setup which I know is supported (https://forums.gentoo.org/viewtopic-t-1099046-start-0.html)
My machine has two sound devices:
A GPU with HDMI output (which I do *not* want).
A motherboard embeded which lspci -k report as:
Code: |
18:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h/19h HD Audio Controller
DeviceName: Realtek ALC1220
Subsystem: Micro-Star International Co., Ltd. [MSI] Device ed70
|
I also technically also something that get reported as a USB one but it's a problem for another day. It's the ALC 1220 one I want.
I'm relatively sure my kernel configuration should be okay with this but but because it will probably get asked I here is my cat .config | grep SND
Code: |
CONFIG_SND=y
CONFIG_SND_TIMER=y
CONFIG_SND_PCM=y
CONFIG_SND_HWDEP=y
CONFIG_SND_RAWMIDI=y
CONFIG_SND_JACK=y
CONFIG_SND_JACK_INPUT_DEV=y
# CONFIG_SND_OSSEMUL is not set
CONFIG_SND_PCM_TIMER=y
# CONFIG_SND_HRTIMER is not set
CONFIG_SND_DYNAMIC_MINORS=y
CONFIG_SND_MAX_CARDS=32
CONFIG_SND_SUPPORT_OLD_API=y
CONFIG_SND_PROC_FS=y
CONFIG_SND_VERBOSE_PROCFS=y
CONFIG_SND_CTL_FAST_LOOKUP=y
# CONFIG_SND_DEBUG is not set
# CONFIG_SND_CTL_INPUT_VALIDATION is not set
# CONFIG_SND_UTIMER is not set
CONFIG_SND_VMASTER=y
CONFIG_SND_DMA_SGBUF=y
CONFIG_SND_CTL_LED=y
# CONFIG_SND_SEQUENCER is not set
CONFIG_SND_DRIVERS=y
# CONFIG_SND_PCSP is not set
# CONFIG_SND_DUMMY is not set
# CONFIG_SND_ALOOP is not set
# CONFIG_SND_PCMTEST is not set
# CONFIG_SND_MTPAV is not set
# CONFIG_SND_SERIAL_U16550 is not set
# CONFIG_SND_MPU401 is not set
CONFIG_SND_PCI=y
# CONFIG_SND_AD1889 is not set
# CONFIG_SND_ALS300 is not set
# CONFIG_SND_ALS4000 is not set
# CONFIG_SND_ALI5451 is not set
# CONFIG_SND_ASIHPI is not set
# CONFIG_SND_ATIIXP is not set
# CONFIG_SND_ATIIXP_MODEM is not set
# CONFIG_SND_AU8810 is not set
# CONFIG_SND_AU8820 is not set
# CONFIG_SND_AU8830 is not set
# CONFIG_SND_AW2 is not set
# CONFIG_SND_AZT3328 is not set
# CONFIG_SND_BT87X is not set
# CONFIG_SND_CA0106 is not set
# CONFIG_SND_CMIPCI is not set
# CONFIG_SND_OXYGEN is not set
# CONFIG_SND_CS4281 is not set
# CONFIG_SND_CS46XX is not set
# CONFIG_SND_CTXFI is not set
# CONFIG_SND_DARLA20 is not set
# CONFIG_SND_GINA20 is not set
# CONFIG_SND_LAYLA20 is not set
# CONFIG_SND_DARLA24 is not set
# CONFIG_SND_GINA24 is not set
# CONFIG_SND_LAYLA24 is not set
# CONFIG_SND_MONA is not set
# CONFIG_SND_MIA is not set
# CONFIG_SND_ECHO3G is not set
# CONFIG_SND_INDIGO is not set
# CONFIG_SND_INDIGOIO is not set
# CONFIG_SND_INDIGODJ is not set
# CONFIG_SND_INDIGOIOX is not set
# CONFIG_SND_INDIGODJX is not set
# CONFIG_SND_EMU10K1 is not set
# CONFIG_SND_EMU10K1X is not set
# CONFIG_SND_ENS1370 is not set
# CONFIG_SND_ENS1371 is not set
# CONFIG_SND_ES1938 is not set
# CONFIG_SND_ES1968 is not set
# CONFIG_SND_FM801 is not set
# CONFIG_SND_HDSP is not set
# CONFIG_SND_HDSPM is not set
# CONFIG_SND_ICE1712 is not set
# CONFIG_SND_ICE1724 is not set
# CONFIG_SND_INTEL8X0 is not set
# CONFIG_SND_INTEL8X0M is not set
# CONFIG_SND_KORG1212 is not set
# CONFIG_SND_LOLA is not set
# CONFIG_SND_LX6464ES is not set
# CONFIG_SND_MAESTRO3 is not set
# CONFIG_SND_MIXART is not set
# CONFIG_SND_NM256 is not set
# CONFIG_SND_PCXHR is not set
# CONFIG_SND_RIPTIDE is not set
# CONFIG_SND_RME32 is not set
# CONFIG_SND_RME96 is not set
# CONFIG_SND_RME9652 is not set
# CONFIG_SND_SE6X is not set
# CONFIG_SND_SONICVIBES is not set
# CONFIG_SND_TRIDENT is not set
# CONFIG_SND_VIA82XX is not set
# CONFIG_SND_VIA82XX_MODEM is not set
# CONFIG_SND_VIRTUOSO is not set
# CONFIG_SND_VX222 is not set
# CONFIG_SND_YMFPCI is not set
CONFIG_SND_HDA=y
CONFIG_SND_HDA_GENERIC_LEDS=y
CONFIG_SND_HDA_INTEL=y
CONFIG_SND_HDA_HWDEP=y
CONFIG_SND_HDA_RECONFIG=y
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INPUT_BEEP_MODE=1
# CONFIG_SND_HDA_PATCH_LOADER is not set
CONFIG_SND_HDA_SCODEC_COMPONENT=y
CONFIG_SND_HDA_CODEC_REALTEK=y
# CONFIG_SND_HDA_CODEC_ANALOG is not set
# CONFIG_SND_HDA_CODEC_SIGMATEL is not set
# CONFIG_SND_HDA_CODEC_VIA is not set
# CONFIG_SND_HDA_CODEC_HDMI is not set
# CONFIG_SND_HDA_CODEC_CIRRUS is not set
# CONFIG_SND_HDA_CODEC_CS8409 is not set
# CONFIG_SND_HDA_CODEC_CONEXANT is not set
# CONFIG_SND_HDA_CODEC_SENARYTECH is not set
# CONFIG_SND_HDA_CODEC_CA0110 is not set
# CONFIG_SND_HDA_CODEC_CA0132 is not set
# CONFIG_SND_HDA_CODEC_CMEDIA is not set
# CONFIG_SND_HDA_CODEC_SI3054 is not set
CONFIG_SND_HDA_GENERIC=y
CONFIG_SND_HDA_POWER_SAVE_DEFAULT=3
# CONFIG_SND_HDA_INTEL_HDMI_SILENT_STREAM is not set
# CONFIG_SND_HDA_CTL_DEV_ID is not set
CONFIG_SND_HDA_CORE=y
CONFIG_SND_HDA_COMPONENT=y
CONFIG_SND_HDA_PREALLOC_SIZE=3072
CONFIG_SND_INTEL_NHLT=y
CONFIG_SND_INTEL_DSP_CONFIG=y
CONFIG_SND_INTEL_SOUNDWIRE_ACPI=y
CONFIG_SND_USB=y
CONFIG_SND_USB_AUDIO=y
# CONFIG_SND_USB_AUDIO_MIDI_V2 is not set
# CONFIG_SND_USB_UA101 is not set
# CONFIG_SND_USB_USX2Y is not set
# CONFIG_SND_USB_CAIAQ is not set
# CONFIG_SND_USB_US122L is not set
# CONFIG_SND_USB_6FIRE is not set
# CONFIG_SND_USB_HIFACE is not set
# CONFIG_SND_BCD2000 is not set
# CONFIG_SND_USB_POD is not set
# CONFIG_SND_USB_PODHD is not set
# CONFIG_SND_USB_TONEPORT is not set
# CONFIG_SND_USB_VARIAX is not set
CONFIG_SND_PCMCIA=y
# CONFIG_SND_VXPOCKET is not set
# CONFIG_SND_PDAUDIOCF is not set
# CONFIG_SND_SOC is not set
CONFIG_SND_X86=y
|
about that kernel config. I'm not sure what CONFIG_SND_HDA_INPUT_BEEP and CONFIG_SND_HDA_INPUT_BEEP_MODE are but I've tried with and without it didn't help me.
Because I want only one I don't think CONFIG_SND_HDA_RECONFIG is important but I tried with and without, it didn't help me.
I've seen CONFIG_SND_HDA_PREALLOC_SIZE was 0 by default. I've seen some config with my sound card using 3072. I tried in doubt but it also didn't help.
I don't have any asound.conf. I never actually needed any and I'm quite sure it doesn't matter in my case. It seems to break *before*.
Here is my symptoms:
first when I /etc/init.d/alsasound restart it's (very) slow (like takes 15 seconds) and give me:
Code: |
* Storing ALSA Mixer Levels ... [ ok ]
* Restoring Mixer Levels ...
alsactl: snd_card_iterator_sinit:257: Cannot find soundcard '1'...
* Errors while restoring defaults, ignoring
|
which is something I've never seen before.
During boot amixer also complains that "Unable to find simple control 'PCM' 0" during OpenRC (after a somewhat long pause of a couple of seconds).
aplay -L give me:
Code: |
null
Discard all samples (playback) or generate zero samples (capture)
hdmi:CARD=Generic,DEV=0
HD-Audio Generic, Generic Digital
HDMI Audio Output
|
That's where it get strange, I don't know what this null is and my hdmi one is supposed to be disabled.
and /sys/class/sound/card0/id just show "Generic"
Last but not least dmesg | grep snd -i give me something interesting but I'm not sure I understand what it tries to tell me:
Code: |
[ 0.026429] Kernel command line: root=/dev/sda2 rootfstype=btrfs rw snd_hda_intel.enable=0,1,0
[ 3.361632] snd_hda_intel 0000:03:00.1: probe with driver snd_hda_intel failed with error -2
[ 3.361870] snd_hda_intel 0000:18:00.1: enabling device (0000 -> 0002)
[ 3.362145] snd_hda_intel 0000:18:00.6: probe with driver snd_hda_intel failed with error -2
[ 3.362370] usbcore: registered new interface driver snd-usb-audio
[ 3.364365] snd_hda_codec_generic hdaudioC0D0: ignore pin 0x7, too many assigned pins
[ 3.364653] snd_hda_codec_generic hdaudioC0D0: ignore pin 0x9, too many assigned pins
[ 3.365042] snd_hda_codec_generic hdaudioC0D0: autoconfig for Generic: line_outs=0 (0x0/0x0/0x0/0x0/0x0) type:line
[ 3.365252] snd_hda_codec_generic hdaudioC0D0: speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[ 3.365473] snd_hda_codec_generic hdaudioC0D0: hp_outs=0 (0x0/0x0/0x0/0x0/0x0)
[ 3.365684] snd_hda_codec_generic hdaudioC0D0: mono: mono_out=0x0
[ 3.365891] snd_hda_codec_generic hdaudioC0D0: dig-out=0x3/0x5
[ 3.366096] snd_hda_codec_generic hdaudioC0D0: inputs:
[ 3.366767] input: HD-Audio Generic HDMI as /devices/pci0000:00/0000:00:08.1/0000:18:00.1/sound/card0/input3
[ 3.367074] input: HD-Audio Generic HDMI as /devices/pci0000:00/0000:00:08.1/0000:18:00.1/sound/card0/input4
[ 3.376268] #0: HD-Audio Generic at 0xfc988000 irq 137
|
And that's where I'm a bit lost. It's like the kernel is trying to enable the HDMI audio I disabled and just not use my onboard ALC1220. Still along those lines, snd_hda_intel I passed muting the HDMI one. Additionally I'm not exactly sure what this -2 mean... I feel like there is some stupid mistake somewhere I can't quite put my finger on. If someone has a bit of a clue on what I should try it would be lovely. _________________ uname -a: Linux vega 6.12.2-gentoo #7 SMP PREEMPT_DYNAMIC Sun Dec 8 18:55:36 EET 2024 x86_64 AMD Ryzen 9 7950X 16-Core Processor AuthenticAMD GNU/Linux
clang : clang version 19.1.5
window manager : i3 version 4.23 (2023-10-29) (with some patches) |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5338 Location: Bavaria
|
|
Back to top |
|
|
newin n00b
Joined: 27 Oct 2012 Posts: 31
|
Posted: Sun Dec 08, 2024 9:32 pm Post subject: |
|
|
I tried to enable the "Serial bus multi instantiate pseudo device driver" but it didn't help unfortunately.
After booting on a live usb the lspci -nnk for the ALC1220 looks like:
Code: |
18:00.6 Audio device [0403]: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) HD Audio Controller [1022:15e3]
DeviceName: Realtek ALC1220
Subsystem: Micro-Star International Co., Ltd. [MSI] Family 17h (Models 10h-1fh) HD Audio Controller [1462:ed70]
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
|
Which is exactly what my gentoo have except the missing module line. Which I don't have because I have a monolithic kernel.
For lsmod. On my side I have a monolithic kernel so there is no such thing. On the live however it looks like:
Code: |
Module Size Used by
tls 147456 0
rfcomm 98304 4
cmac 16384 3
algif_hash 20480 1
algif_skcipher 16384 1
af_alg 32768 6 algif_hash,algif_skcipher
bnep 32768 2
binfmt_misc 24576 1
zfs 4603904 8
zunicode 352256 1 zfs
zzstd 589824 1 zfs
zlua 229376 1 zfs
zavl 24576 1 zfs
icp 368640 1 zfs
zcommon 131072 2 zfs,icp
znvpair 135168 2 zfs,zcommon
spl 163840 6 zfs,icp,zzstd,znvpair,zcommon,zavl
snd_hda_codec_hdmi 94208 2
intel_rapl_msr 20480 0
mt7921e 28672 0
snd_hda_intel 61440 3
snd_usb_audio 421888 3
intel_rapl_common 40960 1 intel_rapl_msr
mt7921_common 114688 1 mt7921e
snd_intel_dspcfg 36864 1 snd_hda_intel
snd_intel_sdw_acpi 20480 1 snd_intel_dspcfg
snd_hda_codec 204800 2 snd_hda_codec_hdmi,snd_hda_intel
mt76_connac_lib 90112 2 mt7921e,mt7921_common
mt76 122880 3 mt7921e,mt7921_common,mt76_connac_lib
snd_hda_core 135168 3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec
snd_usbmidi_lib 53248 1 snd_usb_audio
mc 81920 1 snd_usb_audio
snd_hwdep 20480 2 snd_usb_audio,snd_hda_codec
edac_mce_amd 45056 0
mac80211 1617920 3 mt76,mt7921_common,mt76_connac_lib
snd_pcm 192512 5 snd_hda_codec_hdmi,snd_hda_intel,snd_usb_audio,snd_hda_codec,snd_hda_core
btusb 69632 0
kvm_amd 204800 0
btrtl 28672 1 btusb
btbcm 24576 1 btusb
snd_seq_midi 20480 0
btintel 53248 1 btusb
snd_seq_midi_event 16384 1 snd_seq_midi
btmtk 16384 1 btusb
bluetooth 1036288 34 btrtl,btmtk,btintel,btbcm,bnep,btusb,rfcomm
snd_rawmidi 53248 2 snd_seq_midi,snd_usbmidi_lib
kvm 1347584 1 kvm_amd
cfg80211 1241088 4 mt76,mac80211,mt7921_common,mt76_connac_lib
snd_seq 94208 2 snd_seq_midi,snd_seq_midi_event
snd_seq_device 16384 3 snd_seq,snd_seq_midi,snd_rawmidi
snd_timer 49152 2 snd_seq,snd_pcm
ecdh_generic 16384 2 bluetooth
ecc 45056 1 ecdh_generic
snd 135168 23 snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_usb_audio,snd_usbmidi_lib,snd_hda_codec,snd_timer,snd_pcm,snd_rawmidi
hid_magicmouse 20480 0
apple_mfi_fastcharge 20480 0
input_leds 16384 0
joydev 32768 0
libarc4 16384 1 mac80211
soundcore 16384 1 snd
irqbypass 16384 1 kvm
ucsi_ccg 24576 0
typec_ucsi 53248 1 ucsi_ccg
typec 106496 1 typec_ucsi
rapl 20480 0
ccp 131072 1 kvm_amd
wmi_bmof 16384 0
k10temp 16384 0
mac_hid 16384 0
sch_fq_codel 24576 2
msr 16384 0
parport_pc 53248 0
ppdev 24576 0
lp 28672 0
parport 73728 3 parport_pc,lp,ppdev
ramoops 36864 0
pstore_blk 16384 0
efi_pstore 16384 0
reed_solomon 28672 1 ramoops
pstore_zone 36864 1 pstore_blk
ip_tables 36864 0
x_tables 65536 1 ip_tables
autofs4 57344 2
overlay 188416 1
nls_iso8859_1 16384 1
btrfs 1921024 1
blake2b_generic 20480 0
xor 24576 1 btrfs
raid6_pq 126976 1 btrfs
libcrc32c 16384 1 btrfs
dm_mirror 24576 0
dm_region_hash 24576 1 dm_mirror
dm_log 20480 2 dm_region_hash,dm_mirror
wacom 159744 0
amdgpu 14491648 13
hid_generic 16384 0
iommu_v2 24576 1 amdgpu
drm_buddy 20480 1 amdgpu
gpu_sched 61440 1 amdgpu
i2c_algo_bit 16384 1 amdgpu
drm_ttm_helper 16384 1 amdgpu
ttm 110592 2 amdgpu,drm_ttm_helper
drm_display_helper 212992 1 amdgpu
cec 94208 1 drm_display_helper
rc_core 77824 1 cec
drm_kms_helper 249856 5 drm_display_helper,amdgpu
uas 28672 0
usbhid 73728 1 wacom
usb_storage 86016 2 uas
hid 176128 4 wacom,usbhid,hid_generic,hid_magicmouse
syscopyarea 16384 1 drm_kms_helper
sysfillrect 20480 1 drm_kms_helper
nvme 61440 0
crct10dif_pclmul 16384 1
crc32_pclmul 16384 0
polyval_clmulni 16384 0
polyval_generic 16384 1 polyval_clmulni
ghash_clmulni_intel 16384 0
sha512_ssse3 53248 0
aesni_intel 397312 4
sysimgblt 20480 1 drm_kms_helper
crypto_simd 20480 1 aesni_intel
cryptd 28672 3 crypto_simd,ghash_clmulni_intel
nvme_core 208896 1 nvme
drm 696320 13 gpu_sched,drm_kms_helper,drm_display_helper,drm_buddy,amdgpu,drm_ttm_helper,ttm
r8169 114688 0
i2c_piix4 28672 0
ahci 49152 1
nvme_common 28672 1 nvme_core
libahci 57344 1 ahci
realtek 36864 1
xhci_pci 24576 0
i2c_designware_pci 16384 0
xhci_pci_renesas 20480 1 xhci_pci
i2c_ccgx_ucsi 16384 1 i2c_designware_pci
video 73728 1 amdgpu
wmi 40960 2 video,wmi_bmof
gpio_amdpt 20480 0
|
The strange thing is that usb audio thing. Earlier I was assuming it was my Zoom H5 which can act as a USB speaker, a microphone and also do a bunch of other sound stuff. The (very) surprising thing here is I unplugged it this time, yet I see a snd_usb_audio loaded.
So (still on the live) I did an aplay -L (note, it's not a gentoo live but a ubuntu live):
Code: |
null
Discard all samples (playback) or generate zero samples (capture)
samplerate
Rate Converter Plugin Using Samplerate Library
speexrate
Rate Converter Plugin Using Speex Resampler
jack
JACK Audio Connection Kit
oss
Open Sound System
pulse
PulseAudio Sound Server
upmix
Plugin for channel upmix (4,6,8)
vdownmix
Plugin for channel downmix (stereo) with a simple spacialization
hw:CARD=HDMI,DEV=3
HDA ATI HDMI, HDMI 0
Direct hardware device without any conversions
hw:CARD=HDMI,DEV=7
HDA ATI HDMI, HDMI 1
Direct hardware device without any conversions
hw:CARD=HDMI,DEV=8
HDA ATI HDMI, HDMI 2
Direct hardware device without any conversions
hw:CARD=HDMI,DEV=9
HDA ATI HDMI, HDMI 3
Direct hardware device without any conversions
hw:CARD=HDMI,DEV=10
HDA ATI HDMI, HDMI 4
Direct hardware device without any conversions
hw:CARD=HDMI,DEV=11
HDA ATI HDMI, HDMI 5
Direct hardware device without any conversions
plughw:CARD=HDMI,DEV=3
HDA ATI HDMI, HDMI 0
Hardware device with all software conversions
plughw:CARD=HDMI,DEV=7
HDA ATI HDMI, HDMI 1
Hardware device with all software conversions
plughw:CARD=HDMI,DEV=8
HDA ATI HDMI, HDMI 2
Hardware device with all software conversions
plughw:CARD=HDMI,DEV=9
HDA ATI HDMI, HDMI 3
Hardware device with all software conversions
plughw:CARD=HDMI,DEV=10
HDA ATI HDMI, HDMI 4
Hardware device with all software conversions
plughw:CARD=HDMI,DEV=11
HDA ATI HDMI, HDMI 5
Hardware device with all software conversions
hdmi:CARD=HDMI,DEV=0
HDA ATI HDMI, HDMI 0
HDMI Audio Output
hdmi:CARD=HDMI,DEV=1
HDA ATI HDMI, HDMI 1
HDMI Audio Output
hdmi:CARD=HDMI,DEV=2
HDA ATI HDMI, HDMI 2
HDMI Audio Output
hdmi:CARD=HDMI,DEV=3
HDA ATI HDMI, HDMI 3
HDMI Audio Output
hdmi:CARD=HDMI,DEV=4
HDA ATI HDMI, HDMI 4
HDMI Audio Output
hdmi:CARD=HDMI,DEV=5
HDA ATI HDMI, HDMI 5
HDMI Audio Output
dmix:CARD=HDMI,DEV=3
HDA ATI HDMI, HDMI 0
Direct sample mixing device
dmix:CARD=HDMI,DEV=7
HDA ATI HDMI, HDMI 1
Direct sample mixing device
dmix:CARD=HDMI,DEV=8
HDA ATI HDMI, HDMI 2
Direct sample mixing device
dmix:CARD=HDMI,DEV=9
HDA ATI HDMI, HDMI 3
Direct sample mixing device
dmix:CARD=HDMI,DEV=10
HDA ATI HDMI, HDMI 4
Direct sample mixing device
dmix:CARD=HDMI,DEV=11
HDA ATI HDMI, HDMI 5
Direct sample mixing device
usbstream:CARD=HDMI
HDA ATI HDMI
USB Stream Output
hw:CARD=Generic_1,DEV=3
HD-Audio Generic, HDMI 0
Direct hardware device without any conversions
hw:CARD=Generic_1,DEV=7
HD-Audio Generic, HDMI 1
Direct hardware device without any conversions
hw:CARD=Generic_1,DEV=8
HD-Audio Generic, HDMI 2
Direct hardware device without any conversions
hw:CARD=Generic_1,DEV=9
HD-Audio Generic, HDMI 3
Direct hardware device without any conversions
plughw:CARD=Generic_1,DEV=3
HD-Audio Generic, HDMI 0
Hardware device with all software conversions
plughw:CARD=Generic_1,DEV=7
HD-Audio Generic, HDMI 1
Hardware device with all software conversions
plughw:CARD=Generic_1,DEV=8
HD-Audio Generic, HDMI 2
Hardware device with all software conversions
plughw:CARD=Generic_1,DEV=9
HD-Audio Generic, HDMI 3
Hardware device with all software conversions
hdmi:CARD=Generic_1,DEV=0
HD-Audio Generic, HDMI 0
HDMI Audio Output
hdmi:CARD=Generic_1,DEV=1
HD-Audio Generic, HDMI 1
HDMI Audio Output
hdmi:CARD=Generic_1,DEV=2
HD-Audio Generic, HDMI 2
HDMI Audio Output
hdmi:CARD=Generic_1,DEV=3
HD-Audio Generic, HDMI 3
HDMI Audio Output
dmix:CARD=Generic_1,DEV=3
HD-Audio Generic, HDMI 0
Direct sample mixing device
dmix:CARD=Generic_1,DEV=7
HD-Audio Generic, HDMI 1
Direct sample mixing device
dmix:CARD=Generic_1,DEV=8
HD-Audio Generic, HDMI 2
Direct sample mixing device
dmix:CARD=Generic_1,DEV=9
HD-Audio Generic, HDMI 3
Direct sample mixing device
usbstream:CARD=Generic_1
HD-Audio Generic
USB Stream Output
front:CARD=Generic
Front output / input
surround21:CARD=Generic
2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=Generic
4.0 Surround output to Front and Rear speakers
surround41:CARD=Generic
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=Generic
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=Generic
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=Generic
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
usbstream:CARD=Generic
HD-Audio Generic
USB Stream Output
hw:CARD=Audio,DEV=0
USB Audio, USB Audio
Direct hardware device without any conversions
hw:CARD=Audio,DEV=1
USB Audio, USB Audio #1
Direct hardware device without any conversions
hw:CARD=Audio,DEV=2
USB Audio, USB Audio #2
Direct hardware device without any conversions
hw:CARD=Audio,DEV=3
USB Audio, USB Audio #3
Direct hardware device without any conversions
plughw:CARD=Audio,DEV=0
USB Audio, USB Audio
Hardware device with all software conversions
plughw:CARD=Audio,DEV=1
USB Audio, USB Audio #1
Hardware device with all software conversions
plughw:CARD=Audio,DEV=2
USB Audio, USB Audio #2
Hardware device with all software conversions
plughw:CARD=Audio,DEV=3
USB Audio, USB Audio #3
Hardware device with all software conversions
default:CARD=Audio
USB Audio, USB Audio
Default Audio Device
sysdefault:CARD=Audio
USB Audio, USB Audio
Default Audio Device
front:CARD=Audio,DEV=0
USB Audio, USB Audio
Front output / input
surround21:CARD=Audio,DEV=0
USB Audio, USB Audio
2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=Audio,DEV=0
USB Audio, USB Audio
4.0 Surround output to Front and Rear speakers
surround41:CARD=Audio,DEV=0
USB Audio, USB Audio
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=Audio,DEV=0
USB Audio, USB Audio
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=Audio,DEV=0
USB Audio, USB Audio
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=Audio,DEV=0
USB Audio, USB Audio
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=Audio,DEV=0
USB Audio, USB Audio
IEC958 (S/PDIF) Digital Audio Output
iec958:CARD=Audio,DEV=1
USB Audio, USB Audio #1
IEC958 (S/PDIF) Digital Audio Output
dmix:CARD=Audio,DEV=0
USB Audio, USB Audio
Direct sample mixing device
dmix:CARD=Audio,DEV=1
USB Audio, USB Audio #1
Direct sample mixing device
dmix:CARD=Audio,DEV=2
USB Audio, USB Audio #2
Direct sample mixing device
dmix:CARD=Audio,DEV=3
USB Audio, USB Audio #3
Direct sample mixing device
usbstream:CARD=Audio
USB Audio
USB Stream Output
|
Alsamixer also showed me two HDMI sound device but I have only one GPU. The other one could an onboard graphics on my motherboard but I have a (MPG-X670E-CARBON-WIFI) which do support it but through APUs but mine (AMD Ryzen 9 7950X) doesn't have one so I don't know where that second one came from. Even stranger, with my Zoom H5 unplugged I don't know where that USB one came from. I'm starting to believe that MSI wired that sound card on a USB bus and that's why I'm so confused.
This is where it's staring to get funny because scrolling the internet it looks like my sound card (an ALC4080) is getting consistently reported as a ALC1220 (e.g. https://www.reddit.com/r/linuxquestions/comments/p7xbna/no_headphone_sound_alc4080/)
Still scrolling the internet deeper I'm finding stuff like: https://github.com/alsa-project/alsa-ucm-conf/blob/master/ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf which is leading me to believe my sound card is wired on the USB bus in the motherboard for some reason.
This finding lead me to investigate if that's actually a thing for me and it looks like, indeed it is wired as a usb device in the motherboard. I have to admit, that's something I have never seen before. Here is the piece of lsusb to show what I'm talking about:
Code: |
/: Bus 005.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/12p, 480M
ID 1d6b:0002 Linux Foundation 2.0 root hub
|__ Port 002: Dev 002, If 0, Class=Human Interface Device, Driver=usbhid, 12M
ID 056a:033b Wacom Co., Ltd CTL-490 [Intuos Draw (S)]
|__ Port 002: Dev 002, If 1, Class=Human Interface Device, Driver=usbhid, 12M
ID 056a:033b Wacom Co., Ltd CTL-490 [Intuos Draw (S)]
|__ Port 002: Dev 002, If 2, Class=Human Interface Device, Driver=usbhid, 12M
ID 056a:033b Wacom Co., Ltd CTL-490 [Intuos Draw (S)]
|__ Port 003: Dev 003, If 0, Class=Human Interface Device, Driver=usbhid, 12M
ID fffe:0005
|__ Port 003: Dev 003, If 1, Class=Human Interface Device, Driver=usbhid, 12M
ID fffe:0005
|__ Port 008: Dev 004, If 0, Class=Wireless, Driver=[none], 480M
ID 0e8d:0616 MediaTek Inc.
|__ Port 008: Dev 004, If 1, Class=Wireless, Driver=[none], 480M
ID 0e8d:0616 MediaTek Inc.
|__ Port 008: Dev 004, If 2, Class=Wireless, Driver=[none], 480M
ID 0e8d:0616 MediaTek Inc.
|__ Port 009: Dev 005, If 0, Class=Audio, Driver=snd-usb-audio, 480M
ID 0db0:d6e7 Micro Star International
|__ Port 009: Dev 005, If 1, Class=Audio, Driver=snd-usb-audio, 480M
ID 0db0:d6e7 Micro Star International
|__ Port 009: Dev 005, If 2, Class=Audio, Driver=snd-usb-audio, 480M
ID 0db0:d6e7 Micro Star International
|__ Port 009: Dev 005, If 3, Class=Audio, Driver=snd-usb-audio, 480M
ID 0db0:d6e7 Micro Star International
|__ Port 009: Dev 005, If 4, Class=Audio, Driver=snd-usb-audio, 480M
ID 0db0:d6e7 Micro Star International
|__ Port 009: Dev 005, If 5, Class=Audio, Driver=snd-usb-audio, 480M
ID 0db0:d6e7 Micro Star International
|__ Port 009: Dev 005, If 6, Class=Audio, Driver=snd-usb-audio, 480M
ID 0db0:d6e7 Micro Star International
|__ Port 009: Dev 005, If 7, Class=Human Interface Device, Driver=usbhid, 480M
ID 0db0:d6e7 Micro Star International
|
Sadly, even after those discoveries, it looks like the problem remain. alsamixer doesn't give me any control on that sound device.
That being said, after knowing all that I enabled snd_usb_audio so now I get an aplay -L output that makes sense (somewhat):
Code: |
null
Discard all samples (playback) or generate zero samples (capture)
hdmi:CARD=HDMI,DEV=0
HDA ATI HDMI, Generic Digital
HDMI Audio Output
hdmi:CARD=Generic_1,DEV=0
HD-Audio Generic, Generic Digital
HDMI Audio Output
front:CARD=Generic
Front output / input
surround21:CARD=Generic
2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=Generic
4.0 Surround output to Front and Rear speakers
surround41:CARD=Generic
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=Generic
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=Generic
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=Generic
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
|
I also now have mistery on why the HDMI one is getting reported twice (or where the other come from) but it's neither the topic of this thread and I'm okay not knowing why as I don't intend to use HDMI audio at all. I'm going to just remove them through kernel commandline later anyway. On that USB card though, I've never dealt with usb sound card before and the documentation (https://wiki.gentoo.org/wiki/ALSA) doesn't seems to say I should do anything particular about it so I'm not sure why it wouldn't work not that aplay is showing something sensible.
Also, you asked me for my full dmesg: https://pastebin.com/raw/6ygNS1S6
and my .config: https://pastebin.com/raw/sNTP3hCQ _________________ uname -a: Linux vega 6.12.2-gentoo #7 SMP PREEMPT_DYNAMIC Sun Dec 8 18:55:36 EET 2024 x86_64 AMD Ryzen 9 7950X 16-Core Processor AuthenticAMD GNU/Linux
clang : clang version 19.1.5
window manager : i3 version 4.23 (2023-10-29) (with some patches) |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5338 Location: Bavaria
|
Posted: Sun Dec 08, 2024 10:38 pm Post subject: |
|
|
I can see from your kernel .config that you already have a lot of experience with configuring a kernel. You have already done what I always recommend: Boot with a LiveCD and check with “lsmod” which modules have been loaded. That will certainly help here.
It may already help if you enable CONFIG_SND_HDA_CODEC_HDMI ... but I suspect that we need even more. Have a look at this module list:
Code: | i2c_piix4 28672 0
i2c_designware_pci 16384 0
xhci_pci_renesas 20480 1 xhci_pci
i2c_ccgx_ucsi 16384 1 i2c_designware_pci
gpio_amdpt |
... and then at your settings in the .config:
Code: | # DesignWare-based PCIe controllers
#
...
# CONFIG_PCIE_DW_PLAT_HOST is not set
CONFIG_I2C_I801=y (1)
# CONFIG_I2C_PIIX4 is not set (2)
# CONFIG_I2C_DESIGNWARE_CORE is not set
# CONFIG_PINCTRL_AMD is not set (3)
# CONFIG_USB_XHCI_PCI_RENESAS is not set |
I suspect that the CONFIG_USB_XHCI_PCI_RENESAS could be very important BECAUSE your sound is connected via USB. Also, you have enabled the i2c driver for Intel (1) instead of the one for AMD (2). pinctrl (3) is completely missing (i2c requires pinctrl!) _________________ https://wiki.gentoo.org/wiki/User:Pietinger |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5338 Location: Bavaria
|
Posted: Sun Dec 08, 2024 11:03 pm Post subject: |
|
|
P.S.: I forgot something ...
Please do a "cpuid | grep x2APIC". If you get "x2APIC: extended xAPIC support = true" THEN you MUST do:
1. enable CONFIG_IRQ_REMAP
2. enable CONFIG_X86_X2APIC
(you must first enable 1, because 2 depends on 1) _________________ https://wiki.gentoo.org/wiki/User:Pietinger |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5338 Location: Bavaria
|
Posted: Sun Dec 08, 2024 11:12 pm Post subject: |
|
|
P.P.S.:
I have only checked Sound, USB and system ... now I have accidentally seen this (in case you have problems with the graphics):
Code: | [ 3.177743] Loading firmware: amdgpu/psp_13_0_5_toc.bin
[ 3.177760] amdgpu 0000:18:00.0: Direct firmware load for amdgpu/psp_13_0_5_toc.bin failed with error -2
[ 3.177769] [drm:amdgpu_device_init.cold] *ERROR* early_init of IP block <psp> failed -19
[ 3.177779] Loading firmware: amdgpu/dcn_3_1_5_dmcub.bin
[ 3.177790] amdgpu 0000:18:00.0: Direct firmware load for amdgpu/dcn_3_1_5_dmcub.bin failed with error -2
[ 3.177798] [drm:amdgpu_device_init.cold] *ERROR* early_init of IP block <dm> failed -19
[ 3.177806] Loading firmware: amdgpu/gc_10_3_6_pfp.bin
[ 3.177816] amdgpu 0000:18:00.0: Direct firmware load for amdgpu/gc_10_3_6_pfp.bin failed with error -2
[ 3.177823] [drm:amdgpu_device_init.cold] *ERROR* early_init of IP block <gfx_v10_0> failed -19
[ 3.177832] Loading firmware: amdgpu/sdma_5_2_6.bin
[ 3.177842] amdgpu 0000:18:00.0: Direct firmware load for amdgpu/sdma_5_2_6.bin failed with error -2
[ 3.177849] [drm:amdgpu_device_init.cold] *ERROR* early_init of IP block <sdma_v5_2> failed -19
[ 3.177858] Loading firmware: amdgpu/vcn_3_1_2.bin
[ 3.177868] amdgpu 0000:18:00.0: Direct firmware load for amdgpu/vcn_3_1_2.bin failed with error -2 |
(I assume you know what to do ) _________________ https://wiki.gentoo.org/wiki/User:Pietinger |
|
Back to top |
|
|
newin n00b
Joined: 27 Oct 2012 Posts: 31
|
Posted: Mon Dec 09, 2024 12:01 am Post subject: |
|
|
That's some very nice catch you got ! I didn't know about CONFIG_IRQ_REMAP and x2APIC thanks !
I also saw those a while ago then forgot about them, surprisingly I don't have any issue with my graphics. Which is very surprising seeing the type of error and what I do with my GPU (I'm a graphics programmer). I'll probably fix that when I/we are done with that sound issue.
I also came across a snd_hda_intel 0000:18:00.6: no codecs found! that I missed in my dmesg before which would point into the CONFIG_SND_HDA_CODEC_HDMI you mentioned. I tried, didn't fix the issue, so I tried to go ballistic and just enable all codec. Which still didn't help.
Then I got the very nice idea to actually try my audio on the livecd, here is what I found:
It looks like alsa is reporting one sound device per screen despite being plugged on the same GPU. That's one mystery down.
Now alsamixer on the live do have the right controls but (and that's the interesting part) I the sound doesn't work. It does no problem on HDMI but it doesn't on the jack.
That lead me to check why it wouldn't work on the live... and a dmesg later I came across that line same line:
Code: |
snd_hda_intel 0000:18:00.6: no codecs found!
|
At this point I would start to believe my sound card is just not supported but I'm seeing people on the internet talking like it is.
That's where I started to dig deeper into the world wide web. Then I found this: https://bugzilla.kernel.org/show_bug.cgi?id=211273
Am I rock bottom and that's a driver bug ? _________________ uname -a: Linux vega 6.12.2-gentoo #7 SMP PREEMPT_DYNAMIC Sun Dec 8 18:55:36 EET 2024 x86_64 AMD Ryzen 9 7950X 16-Core Processor AuthenticAMD GNU/Linux
clang : clang version 19.1.5
window manager : i3 version 4.23 (2023-10-29) (with some patches) |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5338 Location: Bavaria
|
|
Back to top |
|
|
newin n00b
Joined: 27 Oct 2012 Posts: 31
|
Posted: Mon Dec 09, 2024 6:53 pm Post subject: |
|
|
I just realised what I said earlier was looking a bit confused. I couldn't get sound on the ubuntu live I have of that sound card. Both my gentoo and my ubuntu live are giving me the same "no codecs found!" error. I couldn't get sound with that card on both.
Also, the two example you linked are laptop and the kernel SND_SOC_AMD_ACP* are described as SOC, that also include the link I posted at the very beginning.
That lead me to believe the card doesn't work outside of an SOC configuration.
The only instance of that card mentioned on linux is this HW probe: https://linux-hardware.org/?probe=f57c7238f4 (which is exactly my motherboard surprisingly). It only mention a "detected" not "works".
In doubt I tried the SOC_AMD_ACP in version 3x like you linked or with the v6 that is mentioned in the ROG setup but none of them worked.
At this point, I kind of lost hope to see it getting it to work at all. This lead me to change my setup and use my HDMI output instead. I could get it working in a couple minutes. I just have one strange bug where the meters in alsamixer I've configured in my /etc/asound.conf don't appear until I start speaker-test for some reason, but I guess that's another story.
If you don't have any ideas anymore I think I will close this on a Jean Luc Picard quote “It is possible to commit no mistakes and still lose.” _________________ uname -a: Linux vega 6.12.2-gentoo #7 SMP PREEMPT_DYNAMIC Sun Dec 8 18:55:36 EET 2024 x86_64 AMD Ryzen 9 7950X 16-Core Processor AuthenticAMD GNU/Linux
clang : clang version 19.1.5
window manager : i3 version 4.23 (2023-10-29) (with some patches) |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5338 Location: Bavaria
|
Posted: Mon Dec 09, 2024 10:29 pm Post subject: |
|
|
If a hardware does not work under Ubuntu it usually means that:
a) it is too new and no kernel drivers exist for it yet (because Ubuntu patches the kernel extensively), or
b) an old Ubuntu version is still being used.
So if you have used the latest Ubuntu ... I see black ...and we probably have to wait for new kernel versions.
P.S.: I am (also) a big fan of Jean Luc Picard. _________________ https://wiki.gentoo.org/wiki/User:Pietinger |
|
Back to top |
|
|
jrittenh Tux's lil' helper
Joined: 10 Feb 2005 Posts: 94
|
Posted: Fri Jan 10, 2025 8:29 pm Post subject: |
|
|
Just wanted to come in and say that this thread may not have solved OP's issue, but it solved mine! Who would've thunk onboard audio might be wired as a USB device?! Why isn't CONFIG_IRQ_REMAP required for CONFIG_X86_X2APIC to be enabled? Regardless, I now have sound, so thank you! |
|
Back to top |
|
|
pietinger Moderator
Joined: 17 Oct 2006 Posts: 5338 Location: Bavaria
|
Posted: Sat Jan 11, 2025 2:52 am Post subject: |
|
|
jrittenh wrote: | [...] Why isn't CONFIG_IRQ_REMAP required for CONFIG_X86_X2APIC to be enabled? |
If you look into the <Help> of CONFIG_X86_X2APIC you will see this dependency:
Code: | Depends on: X86_LOCAL_APIC [=y] && X86_64 [=y] && (IRQ_REMAP [=y] || HYPERVISOR_GUEST [=n]) |
The || is a logicol OR - one of them must be enabled to get this option ... and because PO had no CONFIG_HYPERVISOR_GUEST enabled (just like me), I therefore have recommended to enable CONFIG_IRQ_REMAP (I have also) to get this option.
jrittenh wrote: | [...] Regardless, I now have sound, so thank you! |
Happy to hear that. You are very Welcome! _________________ https://wiki.gentoo.org/wiki/User:Pietinger |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|