2001-12-14 22:27:09

by Jeff Garzik

[permalink] [raw]
Subject: modules.pcimap and 8139's

Various tools need to pick "8139cp.c" instead of "8139too.c" based on
PCI revision, which is not in modules.pcimap nor struct pci-device-id.
grep for 'pci_rev' in both those files to see the PCI revision checks
hand-coded currently in the drivers.

What is the preferred -2.4- solution?

a) append pci rev and mask to the end of each modules.pcimap line, and
update struct pci_device_id?
b) create new file modules.pci_rev?
c) other?

Distros at least need to solve this for 2.4...

--
Jeff Garzik | Only so many songs can be sung
Building 1024 | with two lips, two lungs, and one tongue.
MandrakeSoft | - nomeansno


2001-12-14 23:13:21

by Greg KH

[permalink] [raw]
Subject: Re: modules.pcimap and 8139's

On Fri, Dec 14, 2001 at 05:26:41PM -0500, Jeff Garzik wrote:
> Various tools need to pick "8139cp.c" instead of "8139too.c" based on
> PCI revision, which is not in modules.pcimap nor struct pci-device-id.
> grep for 'pci_rev' in both those files to see the PCI revision checks
> hand-coded currently in the drivers.
>
> What is the preferred -2.4- solution?
>
> a) append pci rev and mask to the end of each modules.pcimap line, and
> update struct pci_device_id?
> b) create new file modules.pci_rev?
> c) other?

d) ignore it :)

linux-hotplug should try to run modprobe on every module that matches in
the modules.pcimap table. That way the modules can fight it out for who
really wants to control the device (I am assuming that the different
modules know about the pci revision, right?)

modules.pcimap is used to narrow the choices, not necessarily pick the
"only" choice.

thanks,

greg k-h

2001-12-14 23:19:41

by Jeff Garzik

[permalink] [raw]
Subject: Re: modules.pcimap and 8139's

Greg KH wrote:
>
> On Fri, Dec 14, 2001 at 05:26:41PM -0500, Jeff Garzik wrote:
> > Various tools need to pick "8139cp.c" instead of "8139too.c" based on
> > PCI revision, which is not in modules.pcimap nor struct pci-device-id.
> > grep for 'pci_rev' in both those files to see the PCI revision checks
> > hand-coded currently in the drivers.
> >
> > What is the preferred -2.4- solution?
> >
> > a) append pci rev and mask to the end of each modules.pcimap line, and
> > update struct pci_device_id?
> > b) create new file modules.pci_rev?
> > c) other?
>
> d) ignore it :)
>
> linux-hotplug should try to run modprobe on every module that matches in
> the modules.pcimap table. That way the modules can fight it out for who
> really wants to control the device (I am assuming that the different
> modules know about the pci revision, right?)
>
> modules.pcimap is used to narrow the choices, not necessarily pick the
> "only" choice.

that's ok with me... 8139cp should come first and then error out. Then
(I hope!) 8139too is tried. If that works, all is cool.

But quintela was having a problem with this very thing not working for
him...

Jeff


--
Jeff Garzik | Only so many songs can be sung
Building 1024 | with two lips, two lungs, and one tongue.
MandrakeSoft | - nomeansno