From: "H. Peter Anvin" <hpa@zytor.com>
To: linux-kernel@vger.kernel.org
Subject: Re: Can multiple device drivers *share* a PCI bridge?
Date: 26 Apr 2001 14:10:14 -0700 [thread overview]
Message-ID: <9ca2rm$2sc$1@cesium.transmeta.com> (raw)
In-Reply-To: <AF6E1CA59D6AD1119C3A00A0C9893C9A04F57136@cninexchsrv01.crane.navy.mil>
Followup to: <AF6E1CA59D6AD1119C3A00A0C9893C9A04F57136@cninexchsrv01.crane.navy.mil>
By author: Friedrich Steven E CONT CNIN <friedrich_s@crane.navy.mil>
In newsgroup: linux.dev.kernel
>
> 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.
>
A properly designed device should have a separate PCI function (with
its own VID/DID) for each of the subdevices. That's what the PCI
functions are all about. Your device is doing something nonstandard,
so you need a shim device to handle its nonstandard decoding.
-hpa
--
<hpa@transmeta.com> at work, <hpa@zytor.com> in private!
"Unix gives you enough rope to shoot yourself in the foot."
http://www.zytor.com/~hpa/puzzle.txt
prev parent reply other threads:[~2001-04-26 21:11 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-04-26 17:27 Can multiple device drivers *share* a PCI bridge? Friedrich Steven E CONT CNIN
2001-04-26 21:10 ` H. Peter Anvin [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='9ca2rm$2sc$1@cesium.transmeta.com' \
--to=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.