Received: from sun.com (localhost [127.0.0.1])
	by datsun.SFBay.Sun.COM (8.12.10+Sun/8.12.2) with ESMTP id i9S0kuWT023913;
	Wed, 27 Oct 2004 17:46:56 -0700 (PDT)
Message-ID: <41804180.6070602@sun.com>
Date: Wed, 27 Oct 2004 17:46:56 -0700
From: Bill Shannon <bill.shannon@sun.com>
User-Agent: Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.5) Gecko/20031016
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: keith@tungstengraphics.com, anholt@FreeBSD.org
Subject: r128 driver problems
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Hi guys.  I got your names from r128_irq.c.  I'm hoping you can help
me or point me in the right direction.

I upgraded my Dell 4550 from Fedora Core 1 to Fedora Core 2 and I'm
having problems that I reported here:

https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=132930

I've been trying to debug this myself and so far it looks like
as soon as the r128 driver is closed, I get a flood of interrupts
that aren't handled, eventually causing the kernel to disable
IRQ 11.  My theory is that these are VBLANK interrupts from the
video card that are no longer handled because the r128 interrupt
handler has been removed from the IRQ handler list.  It's pretty
clear that the driver is attempting to disable such interrupts
before removing the driver from the list.  I don't know anything
about how this device works so I can't say whether or not it's
doing that correctly.

I've tried hacking the IRQ handler to call back into the r128 driver
when it finds that the IRQ hasn't been handled by any of the drivers
on the list, so that the r128 driver can determine if it was the
cause of the interrupt after all.  Unfortunately, I don't understand
enough about how devices work in Linux (or on x86 hardware) and I
can't seem to get this to work.  As soon as I try to touch the device
the kernel hangs.

I noticed that in FC1 the r128 driver didn't appear to use interrupts.
That seems to be a capability added in the 2.6 kernel, in the r128_irq.c
file that has your names in it!  :-)  So that would explain why FC1 works
fine on the same hardware.

Oh, and I've tried all the frequently recommended tips like booting with
pci=noacpi and acpi=off.  They don't make any difference.

Anyway, I was hoping that one of you might have some idea of what the
problem might be or what I could do to further debug the problem.

Oh yes, the video card is an "ATI Rage 128 Pro Ultra".

Thanks for any help you might offer!

	Bill Shannon

