[2.4.0-test1-ac8] es1371+bttv mystery.

From: Tigran Aivazian (tigran@veritas.com)
Date: Mon Jun 05 2000 - 15:51:22 EST


Hi guys,

I decided to spend a few minutes this evening on finding out a bit more
what's wrong with es1371+bttv combination in recent kernels.

So, I compiled everything as modules and, sure enough, sound doesn't work
at all. irqs don't get incremented in /proc/interrups so I looked in dmesg
and found that, indeed, irq 10 assigned to es1371 conflicts with same
assigned to VGA (but not really assigned according to BIOS):

PCI: Found IRQ 10 for device 01:00.0
The same IRQ used for device 00:0c.0

$ lspci | tail -2
00:0c.0 Multimedia audio controller: Ensoniq ES1371 [AudioPCI-97] (rev 06)
01:00.0 VGA compatible controller: Matrox Graphics, Inc. MGA G200 AGP (rev
01)

so, the solution became obvious - I went to BIOS and enabled "assign IRQ
to VGA" - this made irq10 "officially" assigned to VGA and therefore
shifted es1371 down to 16:

$ cat /proc/interrupts
           CPU0 CPU1
  0: 26109 22861 IO-APIC-edge timer
  1: 2484 2023 IO-APIC-edge keyboard
  2: 0 0 XT-PIC cascade
  8: 0 1 IO-APIC-edge rtc
 12: 4220 4313 IO-APIC-edge PS/2 Mouse
 13: 1 0 XT-PIC fpu
 14: 10412 12557 IO-APIC-edge ide0
 15: 4 11 IO-APIC-edge ide1
 16: 788 1035 IO-APIC-level es1371
 18: 109 73 IO-APIC-level bttv
 19: 0 0 IO-APIC-level eth0
NMI: 48888 48888
LOC: 48874 48872
ERR: 0

So, now I can play .au and mp3 files. The situation with .midi is much
better also. Running kmidi doesn't hang anymore, it shows the time as
passing by, the only problem nothing comes out of the speakers (some mixer
settings? tried changing to no avail)

So, the sound almost works (i.e. no midi is the only problem).

However, now the new problems are - bttv no longer works. It seems to
initialise ok but xawtv shows/sounds noise. I even manually loaded this
new 'tvmixer' thing - to no avail (maybe I should read the code and find
out what it is for first...)

IRQ18 used by bttv is suspicious because it was fixed-up by ioapic stuff,
even twice:

PCI->APIC IRQ transform: (B0,I7,P3) -> 19
PCI->APIC IRQ transform: (B0,I9,P0) -> 17
PCI->APIC IRQ transform: (B0,I10,P0) -> 18
PCI->APIC IRQ transform: (B0,I10,P0) -> 18
PCI->APIC IRQ transform: (B0,I11,P0) -> 19
PCI->APIC IRQ transform: (B0,I12,P0) -> 16
PCI->APIC IRQ transform: (B1,I0,P0) -> 16

Regards,
Tigran

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Jun 07 2000 - 21:00:22 EST