Can multiple device drivers *share* a PCI bridge?

Friedrich Steven E CONT CNIN
2001-04-26T17:28:27Z

I have 5 IP modules (Industry Pak I/O) that plug onto an IP carrier. The
carrier has a bridge that gets found via vendor ID/device ID, but the *sub*
devices don't show up as distinct pci devices. I'm using the *new*
approach, i.e., defining a pci_device_id struct that has been initialized
with vendirID/deviceID pairs I'm supporting.

When my module loads, the kernel calls my probe routine. If my probe
routine returns 0, then this pci device is essentially locked to my device
driver. How can I share that pci device with multiple drivers? My current
thoughts are to simply make a *unified* driver that supports the various IP
modules. That unified driver is not a general solution, but it would be ok
for this project. I'm curious about how to develop a general solution to
this problem. I believe any user of these IP modules would want to be able
to mix-n-match IP modules at will, merely adding device drivers, not having
a unified driver.

Steven Friedrich