http://bugzilla.suse.com/show_bug.cgi?id=1159962 http://bugzilla.suse.com/show_bug.cgi?id=1159962#c4 --- Comment #4 from Hans-Peter Jansen <hpj@urpla.net> ---
You machine has two individual HD-audio controllers, one for HDMI and one for onboard audio, and the secondary probe fails.
Correct.
The message "snd_hda_intel 0000:00:14.2: no codecs found!" indicates that the HD-audio codec wasn't reported back to the controller while probing. Usually this indicates either the disabled setup by BIOS, some buggy interrupt handling or some communication error between codec and controller.
Okay.
You may try to enforce probing the codec by passing probe_mask option. In your case, though, you'll need to pass like:
options snd_hda_intel probe_mask=,0x10f
Note the comma (',') before 0x10f. It means to pass it to the secondary device, and 0x10f means to enforce the codec probes for slot 0 to 3.
Unfortunately, that didn't work as expected, as it resulted in: [ 29.809817] snd_hda_intel: `' invalid for parameter `probe_mask' [ 29.853556] snd_hda_intel: `' invalid for parameter `probe_mask' [ 29.916854] snd_hda_intel: `' invalid for parameter `probe_mask' Obviously, it doesn't cope with an omitted mask well. (I've tried several variants). This one worked: options snd_hda_intel probe_mask=0xff,0x10f [ 30.586463] snd_hda_intel 0000:00:14.2: codec_mask forced to 0xf [ 30.590604] snd_hda_intel 0000:00:14.2: no codecs found! but still no sound.
In addition, you may try to pass snoop=0 option to snd-hda-intel module. This option has no array, so just pass snoop=0.
Resulted in: [ 30.462138] snd_hda_intel 0000:00:01.1: Force to non-snoop mode by module option [ 30.493508] snd_hda_intel 0000:00:14.2: codec_mask forced to 0xf [ 30.493516] snd_hda_intel 0000:00:14.2: Force to non-snoop mode by module option but still no sound. Then I examined the related PCI/IRQ. $ dmesg | grep 00:14.2 [ 0.647371] pci 0000:00:14.2: [1002:4383] type 00 class 0x040300 [ 0.647409] pci 0000:00:14.2: reg 0x10: [mem 0xfeb40000-0xfeb43fff 64bit] [ 0.647514] pci 0000:00:14.2: PME# supported from D0 D3hot D3cold [ 30.257019] snd_hda_intel 0000:00:14.2: codec_mask forced to 0xf [ 30.257027] snd_hda_intel 0000:00:14.2: Force to non-snoop mode by module option [ 30.262651] snd_hda_intel 0000:00:14.2: no codecs found! Since interrupts are routed with ACPI, I disabled ACPI (acpi=off), which resulted in a boot hang. After removing acpi=off again, azalia sound is up: [ 0.647265] pci 0000:00:14.2: [1002:4383] type 00 class 0x040300 [ 0.647304] pci 0000:00:14.2: reg 0x10: [mem 0xfeb40000-0xfeb43fff 64bit] [ 0.647430] pci 0000:00:14.2: PME# supported from D0 D3hot D3cold [ 30.478191] snd_hda_intel 0000:00:14.2: codec_mask forced to 0xf [ 30.478196] snd_hda_intel 0000:00:14.2: Force to non-snoop mode by module option [ 31.606751] input: HDA Digital PCBeep as /devices/pci0000:00/0000:00:14.2/sound/card1/input10 [ 31.606940] input: HDA ATI SB Mic as /devices/pci0000:00/0000:00:14.2/sound/card1/input11 [ 31.607118] input: HDA ATI SB Headphone as /devices/pci0000:00/0000:00:14.2/sound/card1/input12 I've no idea, why this is working now, but not before, but it seemed related to some interrupt routing issue. Update: after a cold start of the notebook, this procedure has to be repeated (acpi=off, boot, wait for hang (2-3 secs), switch device off and on) in order to get azalia up, so is definitely acpi related. :-( Update: on a further reboot, azalia sound was dysfunctional again, but the above sequence restored it again.. Related to IRQs, IRQ 16 is missing, if azalia is broken: CPU0 0: 35 IO-APIC 2-edge timer 1: 15 IO-APIC 1-edge i8042 8: 1 IO-APIC 8-edge rtc0 9: 163 IO-APIC 9-fasteoi acpi 12: 176 IO-APIC 12-edge i8042 14: 0 IO-APIC 14-edge pata_atiixp 15: 0 IO-APIC 15-edge pata_atiixp 16: 684 IO-APIC 16-fasteoi snd_hda_intel:card1 17: 130 IO-APIC 17-fasteoi ehci_hcd:usb1, ehci_hcd:usb2 18: 97 IO-APIC 18-fasteoi ohci_hcd:usb3, ohci_hcd:usb4, rtl_pci 19: 9014 IO-APIC 19-fasteoi ahci[0000:00:11.0] 26: 1095 PCI-MSI 16384-edge radeon 27: 312 PCI-MSI 1048576-edge eth0 28: 38 PCI-MSI 18432-edge snd_hda_intel:card0 NMI: 3 Non-maskable interrupts LOC: 20266 Local timer interrupts SPU: 0 Spurious interrupts PMI: 3 Performance monitoring interrupts IWI: 5871 IRQ work interrupts RTR: 0 APIC ICR read retries RES: 0 Rescheduling interrupts CAL: 0 Function call interrupts TLB: 0 TLB shootdowns TRM: 0 Thermal event interrupts THR: 0 Threshold APIC interrupts DFR: 0 Deferred Error APIC interrupts MCE: 0 Machine check exceptions MCP: 1 Machine check polls HYP: 0 Hypervisor callback interrupts HRE: 0 Hyper-V reenlightenment interrupts HVS: 0 Hyper-V stimer0 interrupts ERR: 1 MIS: 0 PIN: 0 Posted-interrupt notification event NPI: 0 Nested posted-interrupt event PIW: 0 Posted-interrupt wakeup event How can I force the driver to use IRQ 16, and how can I specify the second card as primary sound device (given, that yast sound fails on this..)? -- You are receiving this mail because: You are on the CC list for the bug.