[lkml]   [2004]   [Sep]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: The new PCI fixup code ate my IDE controller
On Wed, 2004-09-22 at 18:49 +0100, Matthew Wilcox wrote:
> The new DECLARE_PCI_FIXUP_HEADER() now makes the order of fixups depend
> on link order. This is a bad thing because it's now one more thing that
> link order is used to determine. Eventually, we're going to have a knot
> where you can't move link order to make everything work.
> The specific problem here is that quirk_ide_bases() is called before
> superio_fixup_pci(). This is only a problem on PA-RISC. I can see
> a few solutions to this. First, we can move the whole suckyio driver
> to arch/parisc, ensuring it gets linked before drivers/pci. Second,
> just move the DECLARE_PCI_FIXUP_HEADER to arch/parisc. Third, link
> drivers/parisc ahead of drivers/pci (what other fun ordering problems
> might we have?) Fourth, move the IDE quirk from drivers/pci/quirks.c
> to drivers/ide somewhere (which is linked after drivers/parisc so would
> happen to fix our problem). Fifth, back out the quirk changes. Sixth,
> change the pci fixup stuff to sort the quirks by vendor ID (PCI_ANY_ID
> sorts after any other ID).
> Suggestions?

Hmm. We already have two passes through the fixup stuff. Add a third?

But sorting PCI_ANY_ID to go last seems like a reasonable first stab at
an answer, if that's sufficient for your purposes.


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-03-22 14:06    [W:0.041 / U:9.452 seconds]
©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site