Takashi,
I finally got the hardware set up again to test the patch. I noticed that it was already applied to hg, so I just used the latest hg code to test. With the new code the 2nd device was always failing with an -EBUSY error. I poked around adding some printk's and noticed that the device count wasn't being incremented for subsequent cards. I fixed it and submitted the patch. With that modification it appears to be working now:
$ modprobe snd_hda_intel ACPI: PCI Interrupt 0000:00:14.2[A] -> GSI 16 (level, low) -> IRQ 16 hda_codec: Unknown model for ALC883, trying auto-probe from BIOS... ACPI: PCI Interrupt 0000:01:05.2[B] -> GSI 19 (level, low) -> IRQ 18
$ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: SB [HDA ATI SB], device 0: ALC883 Analog [ALC883 Analog] Subdevices: 1/1 Subdevice #0: subdevice #0 card 0: SB [HDA ATI SB], device 1: ALC883 Digital [ALC883 Digital] Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: HDMI [HDA ATI HDMI], device 0: ATI HDMI [ATI HDMI] Subdevices: 1/1 Subdevice #0: subdevice #0
$ cat /proc/asound/card1/codec#0 Codec: Generic 1002 ATI RS690/780 HDMI Address: 0 Vendor Id: 0x1002791a Subsystem Id: 0x791a00 Revision Id: 0x100000 No Modem Function Group found Default PCM: rates [0x70]: 32000 44100 48000 bits [0x2]: 16 formats [0x1]: PCM Default Amp-In caps: N/A Default Amp-Out caps: N/A Node 0x02 [Audio Output] wcaps 0x201: Stereo Digital Node 0x03 [Pin Complex] wcaps 0x400381: Stereo Digital Pincap 0x0814: OUT Detect Pin Default 0x18560010: [Jack] Digital Out at Int HDMI Conn = Digital, Color = Unknown Pin-ctls: 0x40: OUT Connection: 1 0x02
Thanks, -Andrew
On Dec 18, 2007 7:34 AM, Takashi Iwai tiwai@suse.de wrote:
Right now, snd-hda-intel driver is designed for a single device. I wrote it so because I thought the device is only for on-board. But now, ATI ships the graphic card with the extra sound controller, and this conflicts.
So, we need a major change in the driver code to allow multiple devices. OK, I'll hack it so that it can go to 2.6.25 kernel...
The below is a quick hack to support multiple cards.
Could you give it a try?
Takashi