Re: [PATCH] 2.5.5-pre1 IDE cleanup 9

Vojtech Pavlik
2002-02-22T14:39:32Z

On Fri, Feb 22, 2002 at 03:16:22PM +0100, Martin Dalecki wrote:

> Will do soon. But now I don't have it at hand, it's on my home system
> unfortunately and I would like to finish some other minor things there
> as well. I mean basically the macro games showing that somebody didn't
> understand C pointer semantics found at places like:
>
> #ifdef CONFIG_BLK_DEV_ALI15X3
> extern unsigned int pci_init_ali15x3(struct pci_dev *, const char *);
> ...
> #define PCI_ALI15X3 &pci_init_ali15x3
> #else
> ...
> #define PCI_ALI15X3 NULL
> #endif
>
> This should rather look like:
>
> #ifdef CONFIG_BLK_DEV_ALI15X3
> extern unsigned int pci_init_ali15x3(struct pci_dev *);
> #else
> #define pci_init_ali15x3 NULL
> #endif
>
> And be replaces entierly by register_chipset(...) blah blah or
> therlike ;-) as well as module initialization lists.
>
> >>The chipset drivers will register lists of PCI-id's they can handle
> >>instead of the single only global list found in ide-pci.c.
> >>
> >
> > I think it'd be even better if the chipset drivers did the probing
> > themselves, and once they find the IDE device, they can register it with
> > the IDE core. Same as all the other subsystem do this.
>
> Well the lists are needed for quirk handling in the ide-pci.c code.
> But if it turns out to be possible - I'm all for it.

I don't think so. If needed we can make some generic IDE_QUIRK_XXX
defines which then the chipset drivers can use where applicable, passing
them to the generic code.

--
Vojtech Pavlik
SuSE Labs