Re: Removal of pci_find_* in 2.5

Eric W. Biederman (ebiederm@xmission.com)
14 Jul 2002 14:07:01 -0600


Greg KH <greg@kroah.com> writes:

> Hi all,
>
> Well, I've been trying to figure out a way to remove the existing
> pci_find_device(), and other pci_find_* functions from the 2.5 kernel
> without hurting to many things (well, things that people care about.)
>
> Turns out these are very useful functions, outside of the "old" pci
> framework, and I can't really justify removing them, so they are staying
> for now (or until someone else can think of a replacement...)
>
> The main reason for wanting to do this, is that any PCI driver that
> relies on using pci_find_* to locate a device to control, will not work
> with the existing PCI hotplug code. Moving forward, those drivers will
> also not work with the driverfs, struct driver, or the device naming
> code.
>
> So if you own a PCI driver that does not conform to the "new" PCI api
> (using pci_register_driver() and friends) consider yourself warned.
> Your driver will NOT inherit any of the upcoming changes to the drivers
> tree, which might cause them to break. Also remember, all of the people
> that are buying hotplug PCI systems for their datacenters will not buy
> your cards :)

I do but it only doesn't use pci_register_driver because that doesn't
work.

The driver is a mtd map driver. It knows there is a rom chip behind
a pci->isa bridge. And it needs to find the pci->isa bridge to
properly set it up to access the rom chip (enable writes and the
like).

It isn't a driver for the pci->isa bridge, (I'm not even certain we
have a good model for that). So it does not use pci_register_driver.

If you can give me a good proposal for how to accomplish that kind of
functionality I would be happy to use the appropriate
xxx_register_driver.

Eric
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/