On 2011-03-21 13:48, krishna m wrote:
>  > Date: Thu, 17 Mar 2011 09:30:37 +0100
>  > From: jan.kis...@siemens.com
>  > To: gilles.chanteperd...@xenomai.org; krishnamurth...@hotmail.com
>  > CC: xenomai-core@gna.org
>  > Subject: Re: MSI support in Xenomai
>  >
>  > On 2011-03-16 14:26, Gilles Chanteperdrix wrote:
>  > > krishna m wrote:
>  > >> Hi All, I wanted to know if the latest Xenomai [Version
>  > >> xenomai-2.5.6] supports MSI interrupts. I am using the adeos Patch
>  > >> [version adeos-ipipe-2.6.37-x86-2.9-00] and corresponding Linux
>  > >> kernel [version: linux-2.6.37]. I have read in the Xenomai FAQ that
>  > >> MSI is not supported by the ipipe patch just wanted to know if the
>  > >> latest Xenomai and Ipipe supports MSI.
>  > >
>  > > No.
>  >
>  > Strictly spoken, but it works in practice. See
>  >
>  > http://thread.gmane.org/gmane.linux.real-time.xenomai.users/12135
>  >
>  > Jan
>  >
>  > --
>  > Siemens AG, Corporate Technology, CT T DE IT 1
>  > Corporate Competence Center Embedded Linux
> 
> Hi Jan,
> 
> Thanks for the reply. I got the following info from you post and i had few 
> questions related to this post:
> 
> 
> 
>  >> - MSI[-X] usage for RTDM (ie. RT) drivers is basically fine as long as 
> you 
> avoid enabling/disabling from RT context (also used for quite a while here, 
> no 
> known issues under this restriction)
> 
> my question is are you mentioninig here that i must not be doing 
> pci_enable_msi() and pci_disable_msi() inside the RTDM driver ? if not then 
> where should these calls be done ?

pci_enable/disable_msi are initialization services that only need to be
executed over Linux context - also in RTDM drivers.

> 
> Right now i have ported my standerd linux driver for the PCIe card to RTDM 
> drvier. This driver uses MSI. I am not enabeling or disabling MSI or IRQ any 
> where in the driver while processing [i.e. in ISR or read/write]. I am 
> enabeling 
> MSI in the PCI Probe and disabeling it in the PCI remove functions. The 
> problem 
> i am facing is as soon as i get the First MSI interrupt the kernel oops and i 
> get the following dump:
> 
> |Mar 21 21:08:34 barch kernel: BUG: unable to handle kernel paging request at 
> 7f45402d
> Mar 21 21:08:34 barch kernel: Oops: 0000 [#1] PREEMPT SMP
> |
> 

We would need the full backtrace to have at least a chance to help.

> 
> [note: The normal linux driver works with out any problem].
> 
> Please let me know your thoughts. Also is there an example PCIe RTDM driver 
> using MSI that i can refer to understand more about this topic ?

Check RTnet's IGB driver. It works with MSI-X interrupts on x86.

Jan

-- 
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux

_______________________________________________
Xenomai-core mailing list
Xenomai-core@gna.org
https://mail.gna.org/listinfo/xenomai-core

Reply via email to