From: Roland Dreier <rdreier@cisco.com>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Linux Kernel list <linux-kernel@vger.kernel.org>,
linux-pci <linux-pci@atrey.karlin.mff.cuni.cz>
Subject: Re: MSI and driver APIs
Date: Thu, 15 Dec 2005 13:07:09 -0800 [thread overview]
Message-ID: <adamzj2nk76.fsf@cisco.com> (raw)
In-Reply-To: 1134617893.16880.17.camel@gaston
Benjamin> I've been looking at MSI/MSI-X support on POWER
Benjamin> platforms, both under hypervisor or directly on machines
Benjamin> like the new G5s and I found out that the current code
Benjamin> in drivers/pci isn't nearly as generic as it claims to
Benjamin> be and cannot really be re-used as is.
Excellent! I've always wanted to find time to make the code generic
and add MSI support for some new platform like PPC 440SPe, but it's
never made it very far up my list.
Benjamin> Thus I would very much like to change the semantics so
Benjamin> that a driver can be entered with MSIs already assigned
Benjamin> and enabled, though it has the capability to request
Benjamin> more MSIs and/or to disable them if the chipset is
Benjamin> buggy. That could be done either by adding a callback to
Benjamin> check if MSIs are enabled for a given device for
Benjamin> example...
It seems OK to me to say that a driver's probe routine could be called
with MSI enabled. A naive driver would just use the irq number from
the PCI device struct and never care whether interrupts were INTx or
MSI. This does fall down for hardware like tg3, where something
beyond the simple PCI header manipulation is required to turn on MSI use.
Full MSI-X would be much harder to handle transparently, since
handling multiple different interrupts typically requires a lot more
logic in the driver.
- R.
next prev parent reply other threads:[~2005-12-15 21:07 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-12-15 3:38 MSI and driver APIs Benjamin Herrenschmidt
2005-12-15 21:07 ` Roland Dreier [this message]
2005-12-15 21:08 ` Benjamin Herrenschmidt
2005-12-15 21:18 ` Roland Dreier
2005-12-15 21:18 ` Benjamin Herrenschmidt
2005-12-15 21:36 ` Roland Dreier
2005-12-15 21:42 ` David S. Miller
2005-12-15 21:56 ` Benjamin Herrenschmidt
2005-12-16 0:51 ` Greg KH
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=adamzj2nk76.fsf@cisco.com \
--to=rdreier@cisco.com \
--cc=benh@kernel.crashing.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@atrey.karlin.mff.cuni.cz \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox