[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20071022.171318.104036671.davem@davemloft.net>
Date: Mon, 22 Oct 2007 17:13:18 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: barkalow@...ervon.org
Cc: jeff@...zik.org, linas@...tin.ibm.com, chunhao.huang@...mail.com,
gregkh@...e.de, htejun@...il.com, brice.goglin@...il.com,
david.gaarenstroom@...il.com, linux-kernel@...r.kernel.org,
linux-pci@...ey.karlin.mff.cuni.cz, shane.huang@....com,
linux-ide@...r.kernel.org, brice@...i.com
Subject: Re: [patch] PCI: disable MSI on more ATI NorthBridges
From: Daniel Barkalow <barkalow@...ervon.org>
Date: Mon, 22 Oct 2007 17:31:04 -0400 (EDT)
> It's likewise documented (although maybe arguable in wording) that the
> device shouldn't send legacy interrupts if MSI is in use, regardless of
> INTX_DISABLE, but this also happens in the field.
>
> I think that the current Linux behavior with respect to INTX_DISABLE is
> simply due to which hardware bug was present in the device whose driver
> first got Linux support, but one or the other or both needs a quirk, since
> there's no behavior that works with everything. And it's still impossible
> to tell which bug is more common, since MSI isn't used most of the time,
> even if the hardware supports it, so it's pretty arbitrary which way Linux
> goes in the non-quirk case.
I think this pretty much sums up the situation accurately.
My suggestion is:
1) Leave the pci_intx() twiddling code in drivers/pci/msi.c
2) Add quirks for "INTX_DISABLE turns off MSI too", this sets
a flag in the pci_dev.
3) The pci_intx() calls in drivers/pci/msi.c are skipped if this
flag from #2 is set.
4) Add quirk entries for drivers/net/tg3.c chips and these SATA
devices we are learning about here, as well as any others we
are aware of right now.
5) Remove the pci_intx() workaround code from drivers/net/tg3.c
and elsewhere.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists