On Mon, Jun 27, 2005 at 03:19:11PM -0700, Linus Torvalds wrote:
On Mon, 27 Jun 2005, Neil Horman wrote:
Patch to clean up the implementation of the GET_INDEX macro in the i386 pci
fixup code so that it uses the PCI_DEVFN macro, rather than re-implements it.
This looks wrong:
-#define GET_INDEX(a, b) ((((a) - PCI_DEVICE_ID_INTEL_MCH_PA) << 3) + ((b) & 7))
+#define GET_INDEX(a, b) PCI_DEVFN((a - PCI_DEVICE_ID_INTEL_MCH_PA),b)
that first argument looks like it has parentheses at the wrong place, it should be
(a) - PCI_DEVICE_ID_INTEL_MCH_PA
rather than
(a - PCI_DEVICE_ID_INTEL_MCH_PA)
methinks.
Other than that... Greg?
I'd like to say yes, but I'll get an ack by the pci express people from
Intel first (PCI_DEVFN masks off bits that might be needed here, don't
really know...) Also, this is only used for an array index, not a
pci devfn memory access (look at how it is used in the code...)
I'll put it in my tree for now, and let it get testing, I would not
recommend it for yours just yet.