From: Manu Abraham <abraham.manu@gmail.com>
To: michael@ellerman.id.au
Cc: Grant Grundler <grundler@parisc-linux.org>,
linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org
Subject: Re: MSI messages
Date: Mon, 22 Dec 2008 03:05:41 +0400 [thread overview]
Message-ID: <494ECBC5.1040703@gmail.com> (raw)
In-Reply-To: <1229897516.8269.8.camel@localhost>
Michael Ellerman wrote:
> On Sun, 2008-12-21 at 01:13 +0400, Manu Abraham wrote:
>> Grant Grundler wrote:
>>> On Sun, Dec 14, 2008 at 03:15:15PM +0400, Manu Abraham wrote:
>>> ...
>>>>> A "GSI" (Generic Sys Interrupt?) is associated with each entry in
>>>>> the MSI-X table. Driver then calls request_irq() to bind an interrupt
>>>>> handler to each GSI. So the driver never directly sees the "message".
>>>> Oh, you mean the array of irq_handlers in the MSI-X table should
>>>> correspond to a particular message ?
>>> No. I mean each MSI-X entry has an address+message pair and each MSI-X entry
>>> is associated with the parameters passed to each call of request_irq().
>>> Pass in unique private data to each call of request_irq() and the driver
>>> can determine which message was delivered when the ISR gets called.
>>> (ISR == Interrupt Service Routine, aka driver IRQ handler)
>>
>> Is it possible that even when the config space says that multiple messages
>> are supported, you cannot enable MSI-X ?
>
> Yes, absolutely. Have a look at pci_msi_check_device() for starters. MSI
> can be disabled globally, or per-device by a quirk, the bridges above
> your device might not support MSI and the arch code may prevent
> MSI/MSI-X for some reason (ie. platform doesn't support it).
It seems that the bridge does support MSI. It looks like my video device is
using MSI.
Regards,
Manu
pci 0000:01:00.0: Boot video device
PCI: Setting latency timer of device 0000:00:01.0 to 64
assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:01.0:pcie00]
PCI: Setting latency timer of device 0000:00:1c.0 to 64
assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:1c.0:pcie00]
Allocate Port Service[0000:00:1c.0:pcie02]
PCI: Setting latency timer of device 0000:00:1c.1 to 64
assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:1c.1:pcie00]
Allocate Port Service[0000:00:1c.1:pcie02]
PCI: Setting latency timer of device 0000:00:1c.2 to 64
assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:1c.2:pcie00]
Allocate Port Service[0000:00:1c.2:pcie02]
PCI: Setting latency timer of device 0000:00:1c.3 to 64
assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:1c.3:pcie00]
Allocate Port Service[0000:00:1c.3:pcie02]
PCI: Setting latency timer of device 0000:00:1c.4 to 64
assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:1c.4:pcie00]
Allocate Port Service[0000:00:1c.4:pcie02]
vesafb: framebuffer at 0x91000000, mapped to 0xf8880000, using 10240k, total 14336k
vesafb: mode is 1280x1024x16, linelength=2560, pages=1
04:00.0 Multimedia controller: Philips Semiconductors Device 7160 (rev 02)
Subsystem: Technotrend Systemtechnik GmbH Device 3009
Flags: bus master, fast devsel, latency 0, IRQ 11
Memory at 93b00000 (64-bit, non-prefetchable) [size=1M]
Capabilities: <access denied>
05:00.0 Multimedia controller: Philips Semiconductors Device 7160 (rev 01)
Subsystem: Philips Semiconductors Device 0000
Flags: bus master, fast devsel, latency 0, IRQ 19
Memory at 93a00000 (64-bit, non-prefetchable) [size=1M]
Capabilities: <access denied>
Kernel driver in use: SAA716x Hybrid
next prev parent reply other threads:[~2008-12-21 23:06 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-12-13 9:38 MSI messages Manu Abraham
2008-12-14 8:12 ` Grant Grundler
2008-12-14 11:15 ` Manu Abraham
2008-12-14 18:52 ` Grant Grundler
2008-12-20 21:13 ` Manu Abraham
2008-12-21 22:11 ` Michael Ellerman
2008-12-21 22:56 ` Manu Abraham
2008-12-21 23:22 ` Michael Ellerman
2008-12-22 15:31 ` Manu Abraham
2008-12-22 22:29 ` Michael Ellerman
2008-12-21 23:05 ` Manu Abraham [this message]
2008-12-15 5:08 ` Jike Song
2008-12-15 7:07 ` Kenji Kaneshige
2008-12-18 5:47 ` Grant Grundler
-- strict thread matches above, loose matches on Subject: below --
2008-12-13 9:34 Manu Abraham
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=494ECBC5.1040703@gmail.com \
--to=abraham.manu@gmail.com \
--cc=grundler@parisc-linux.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=michael@ellerman.id.au \
/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.