[PATCH 2/2] nouveau: Acknowledge HPD irq in handler, not bottom half

Andrew Lutomirski luto at mit.edu
Wed Nov 10 15:01:36 PST 2010


On Wed, Nov 10, 2010 at 5:55 PM, Maarten Maathuis <madman2003 at gmail.com> wrote:
> On Wed, Nov 10, 2010 at 11:51 PM, Andrew Lutomirski <luto at mit.edu> wrote:
>> On Wed, Nov 10, 2010 at 5:35 PM, Ben Skeggs <bskeggs at redhat.com> wrote:
>>> On Wed, 2010-11-10 at 17:25 -0500, Andrew Lutomirski wrote:
>>>> On Wed, Nov 10, 2010 at 5:10 PM, Ben Skeggs <bskeggs at redhat.com> wrote:
>>>> > On Wed, 2010-11-10 at 16:32 -0500, Andy Lutomirski wrote:
>>>> >> The old code generated an interrupt storm bad enough to completely
>>>> >> take down my system.
>>>> >>
>>>> >> This only fixes the bits that are defined nouveau_regs.h.  Newer hardware
>>>> >> uses another register that isn't described, and I don't have that hardware
>>>> >> to test.
>>>> > Thanks for looking at this.  I'll take a closer look at the problem
>>>> > today and see what I can come up with too, that'll work with the newer
>>>> > hardware too.
>>>>
>>>> It should be as simple as adding an hpd1 field to the hpd_state and
>>>> making exactly the same change.  (It would be nice to put the register
>>>> definitions into nouveau_regs.h as well -- I didn't really want to
>>>> muck around with a bunch of magic numbers that I can't test.)
>>> Yes, it is.  I can confirm the problem on another card, but it doesn't
>>> actually cause any crashes here.  If you can rework the patch to support
>>> the newer chips too, that'd be great.
>>>
>>> As for magic numbers, the register names for those regs are wrong
>>> anyway.  The joy of reverse-engineering the support.  It doesn't really
>>> matter if you want to stick to them or go back to "magic" numbers.
>>
>> That explains why INTR and CTRL seemed backwards :)  I'll leave the
>> magic numbers for the 0xe07? stuff.
>
> Perhaps remove the bad definitions from the reg file, or rename them
> to UNKsomething?

Well, they're known.  One is hotplug detect enable (unless the code is
wrong) and the other is hotplug interrupt status.



--Andy


More information about the dri-devel mailing list