Review your favorite Linux distribution.
Go Back > Forums > Linux Forums > Linux - Software > Linux - Kernel
User Name
Linux - Kernel This forum is for all discussion relating to the Linux kernel.


  Search this Thread
Old 02-07-2012, 11:56 PM   #1
LQ Newbie
Registered: Aug 2011
Posts: 10

Rep: Reputation: Disabled
Can CPU write the vector address of MSI-X to generate interrupt to a PCI device


I have a PCIe device and it supports MSI-X. I have enabled the MSI-X function in the driver.

I try to generate a fake interrupt of this device by write the vector address/data written in MSI-X entry. I write it sucessfully but the interrupt does not happen?!

May I generate a device interrupt by writing MSI-X vector address/data?

Any comment is appreciated!!
Old 02-08-2012, 02:37 PM   #2
Senior Member
Registered: Feb 2011
Location: Massachusetts, USA
Distribution: CentOS 6 (pre-systemd)
Posts: 2,799

Rep: Reputation: 749Reputation: 749Reputation: 749Reputation: 749Reputation: 749Reputation: 749Reputation: 749
An MSI-X interrupt is triggered by the card writing the data+vector to a register in the interrupt chip (usually your PCIe bridge chip). To do that from the CPU you would have to be able to write to that physical address from your process. How are you doing that?
Old 04-15-2012, 05:06 AM   #3
Registered: Nov 2009
Posts: 129

Rep: Reputation: 9
[quote=leechaotang]I have a PCIe device and it supports MSI-X[/qoute]
Obviously it does, otherwise it won't be PCI-e device. PCI-e devices are REQUIRED to support MSI-X - it is up to kernel to turn on MSI mapping. So basically you did write that you have butter and it tastes like butter.

I don't know, if I am right, but to trigger interrupt you have to write to APIC from side of device, which is kinda hard to achieve.

P.S. PCI-e do support many thing by standard, as it is required (like hotplug, MSI, dynamic reconfiguration of bus etc)


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
spport multiple MSI for pci device on Nehalem architecture robvoo Linux - Kernel 4 08-21-2013 05:26 AM
How can I write a pci device driver??? hrmb Linux - Kernel 1 01-01-2010 04:47 PM
no load balancing for MSI-PCI interrupt controller on SMP linux jhwilliams Linux - General 0 09-10-2007 02:22 PM
To generate Software Interrupt to ARM920T processor topworld Programming 0 04-11-2006 02:17 AM
"usb device not accepting address" caused by IFP-driver (IRiver) interrupt? Mitchua Linux - Hardware 0 09-24-2004 09:14 PM > Forums > Linux Forums > Linux - Software > Linux - Kernel

All times are GMT -5. The time now is 05:47 AM.

Main Menu
Write for LQ is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration