Forum Topic - PCI Express: Page 3 of 5 (102 Items)
   
Re: PCI Express  
Hi,

I have to add that the PCIe bus interface also doesn't have an interrupt 
line to signal an interrupt to the CPU.
It sends a message (MSI) to the chip set and at the end to the CPU to 
"signal" an interrupt.

There is no way that the CPU could send an interrupt to a PCI device :)

--Armin


Mario Charest wrote:
>> Through attachment I am sending output of pci -vvv command.
>> Would you please help me how to generate interrupts from Intel to
>> master FPGA through PCI.
>>
> Are you understanding what is being said over and over. This is a QNX6 forum, most of the questions you asked have 
NOTHING do to with QNX.  Your questions show a total lack of understanding of the PCI bus and of the device you are 
working with.  You need to do some reading or asks on different forum.
>
> To contradict what I just said:  the Intel cannot send an interrupt signal, there is no interrupt line GOING to the 
PCI.  If you want to trigger an interrupt internal to the card  you would have to write into a register or IO on the 
card.  Again THIS HAS NOTHING TO DO WITH PCI OR QNX.
>   
>> Thanks & Regards
>>   Srilakshmi
>>
>> -----Original Message-----
>> From: Hugh Brown [mailto:community-noreply@qnx.com]
>> Sent: Saturday, June 23, 2012 2:10 AM
>> To: general-community@community.qnx.com
>> Subject: Re: PCI Express
>>
>> There is no standard PCIe interface for ARM, so you will have to be
>> more specific as to what platform you are targeting.
>>
>> --
>> Hugh Brown
>> QNX Software Systems Limited
>> 1001 Farrar Rd.,
>> Ottawa. ON. K2K 0B3.
>> Telephone: 613-591-0931
>>
>>
>>
>>
>>
>>
>>
>> On 12-06-22 2:57 PM, "Bratislav Matic" <community-noreply@qnx.com> wrote:
>>
>>> Are there any plans to implement PCIe support for ARM based platforms?
>>>
>>>
>>>
>>> _______________________________________________
>>>
>>> General
>>> http://community.qnx.com/sf/go/post93840
>>> To cancel your subscription to this discussion, please e-mail
>>> general-community-unsubscribe@community.qnx.com
>>
>>
>>
>>
>> _______________________________________________
>>
>> General
>> http://community.qnx.com/sf/go/post93846
>> To cancel your subscription to this discussion, please e-mail
>> general-community-unsubscribe@community.qnx.com
>>
>> -----
>> No virus found in this message.
>> Checked by AVG - www.avg.com
>> Version: 2012.0.2177 / Virus Database: 2437/5097 - Release Date:
>> 06/27/12
>>
>
>
>
>
>
> _______________________________________________
>
> General
> http://community.qnx.com/sf/go/post93960
> To cancel your subscription to this discussion, please e-mail general-community-unsubscribe@community.qnx.com
>
>
>
>
> _______________________________________________
>
> General
> http://community.qnx.com/sf/go/post93961
> To cancel your subscription to this discussion, please e-mail general-community-unsubscribe@community.qnx.com
>


RE: RE: PCI Express  
Thank you for your reply with useful information.
Do you have any documents regarding pci express in QNX?
How to generate message signaled interrupts?

If you had please send to me the respective documents.
I want to improve my knowledge regarding PCIe, QNX to do project

Thanks & Regards
 Srilakshmi



-----Original Message-----
From: Mario Charest [mailto:community-noreply@qnx.com] 
Sent: Sunday, July 01, 2012 10:38 PM
To: general-community@community.qnx.com
Subject: RE: RE: PCI Express


> Through attachment I am sending output of pci -vvv command.
> Would you please help me how to generate interrupts from Intel to 
> master FPGA through PCI.
>

Are you understanding what is being said over and over. This is a QNX6
forum, most of the questions you asked have NOTHING do to with QNX.  Your
questions show a total lack of understanding of the PCI bus and of the
device you are working with.  You need to do some reading or asks on
different forum.

To contradict what I just said:  the Intel cannot send an interrupt signal,
there is no interrupt line GOING to the PCI.  If you want to trigger an
interrupt internal to the card  you would have to write into a register or
IO on the card.  Again THIS HAS NOTHING TO DO WITH PCI OR QNX.
 
> Thanks & Regards
>  Srilakshmi
> 
> -----Original Message-----
> From: Hugh Brown [mailto:community-noreply@qnx.com]
> Sent: Saturday, June 23, 2012 2:10 AM
> To: general-community@community.qnx.com
> Subject: Re: PCI Express
> 
> There is no standard PCIe interface for ARM, so you will have to be 
> more specific as to what platform you are targeting.
> 
> --
> Hugh Brown
> QNX Software Systems Limited
> 1001 Farrar Rd.,
> Ottawa. ON. K2K 0B3.
> Telephone: 613-591-0931
> 
> 
> 
> 
> 
> 
> 
> On 12-06-22 2:57 PM, "Bratislav Matic" <community-noreply@qnx.com> wrote:
> 
> >Are there any plans to implement PCIe support for ARM based platforms?
> >
> >
> >
> >_______________________________________________
> >
> >General
> >http://community.qnx.com/sf/go/post93840
> >To cancel your subscription to this discussion, please e-mail 
> >general-community-unsubscribe@community.qnx.com
> 
> 
> 
> 
> 
> _______________________________________________
> 
> General
> http://community.qnx.com/sf/go/post93846
> To cancel your subscription to this discussion, please e-mail 
> general-community-unsubscribe@community.qnx.com
> 
> -----
> No virus found in this message.
> Checked by AVG - www.avg.com
> Version: 2012.0.2177 / Virus Database: 2437/5097 - Release Date: 
> 06/27/12
> 






_______________________________________________

General
http://community.qnx.com/sf/go/post93960
To cancel your subscription to this discussion, please e-mail
general-community-unsubscribe@community.qnx.com




_______________________________________________

General
http://community.qnx.com/sf/go/post93961
To cancel your subscription to this discussion, please e-mail
general-community-unsubscribe@community.qnx.com

-----
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2012.0.2177 / Virus Database: 2437/5102 - Release Date: 06/30/12

Re: PCI Express  
srilakshmi wrote:
> Thank you for your reply with useful information.
> Do you have any documents regarding pci express in QNX?

In general,  PCI Express has nothing to do with QNX.
It is just a hardware standard ... hopfully cleanly supported  by QNX 
6.5 SP1.


> How to generate message signaled interrupts?

Only PCIe devices can send message signaled interrupts ... and this 
happens ONLY at HARDWARE level!!
QNX is not involved at that low level functions.

>
> If you had please send to me the respective documents.
> I want to improve my knowledge regarding PCIe,
   See the attachment ... and forget QNX in that context.

--Armin


Attachment: PDF Implementing_MSI_and_MSI-X_in_a_Root_Complex.pdf 229.07 KB
RE: PCI Express  
It's a QNX software problem.
After we open and compiled single program.
If we want to try again to open or compile same program or  any other code 
we are getting
                               " too many session files in /tmp"
due to this system getting hanged. Every time we need to restart the system
to do something.
 Its happening frequently.

Would you give me the solution for this?

Thanks & Regards            
 Srilakshmi




-----Original Message-----
From: Armin Steinhoff [mailto:community-noreply@qnx.com] 
Sent: Monday, July 02, 2012 1:23 PM
To: general-community@community.qnx.com
Cc: srilakshmi; srilakshmi
Subject: Re: PCI Express

srilakshmi wrote:
> Thank you for your reply with useful information.
> Do you have any documents regarding pci express in QNX?

In general,  PCI Express has nothing to do with QNX.
It is just a hardware standard ... hopfully cleanly supported  by QNX 
6.5 SP1.


> How to generate message signaled interrupts?

Only PCIe devices can send message signaled interrupts ... and this 
happens ONLY at HARDWARE level!!
QNX is not involved at that low level functions.

>
> If you had please send to me the respective documents.
> I want to improve my knowledge regarding PCIe,
   See the attachment ... and forget QNX in that context.

--Armin






_______________________________________________

General
http://community.qnx.com/sf/go/post93964
To cancel your subscription to this discussion, please e-mail
general-community-unsubscribe@community.qnx.com

-----
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2012.0.2177 / Virus Database: 2437/5105 - Release Date: 07/01/12

Re: PCI Express  
srilakshmi wrote:
> It's a QNX software problem.

IMHO ... it's not a problem with QNX software.
It's a problem of YOUR software which seems to kill the whole system :)

> After we open and compiled single program.

What means "open"  your "compiled single program" ??
Could you post a screen dump of your terminal session and the sources of 
your program ??

> If we want to try again to open or compile same program or  any other code
> we are getting
>                                 " too many session files in /tmp"
> due to this system getting hanged. Every time we need to restart the system
> to do something.
>   Its happening frequently.
>
> Would you give me the solution for this?

Yes, change your code ...

--Armin

>
> Thanks & Regards
>   Srilakshmi
>
>
>
>
> -----Original Message-----
> From: Armin Steinhoff [mailto:community-noreply@qnx.com]
> Sent: Monday, July 02, 2012 1:23 PM
> To: general-community@community.qnx.com
> Cc: srilakshmi; srilakshmi
> Subject: Re: PCI Express
>
> srilakshmi wrote:
>> Thank you for your reply with useful information.
>> Do you have any documents regarding pci express in QNX?
> In general,  PCI Express has nothing to do with QNX.
> It is just a hardware standard ... hopfully cleanly supported  by QNX
> 6.5 SP1.
>
>
>> How to generate message signaled interrupts?
> Only PCIe devices can send message signaled interrupts ... and this
> happens ONLY at HARDWARE level!!
> QNX is not involved at that low level functions.
>
>> If you had please send to me the respective documents.
>> I want to improve my knowledge regarding PCIe,
>     See the attachment ... and forget QNX in that context.
>
> --Armin
>
>
>
>
>
>
> _______________________________________________
>
> General
> http://community.qnx.com/sf/go/post93964
> To cancel your subscription to this discussion, please e-mail
> general-community-unsubscribe@community.qnx.com
>
> -----
> No virus found in this message.
> Checked by AVG - www.avg.com
> Version: 2012.0.2177 / Virus Database: 2437/5105 - Release Date: 07/01/12
>
>
>
>
>
> _______________________________________________
>
> General
> http://community.qnx.com/sf/go/post93965
> To cancel your subscription to this discussion, please e-mail general-community-unsubscribe@community.qnx.com
>


RE: PCI Express  
Armin,

I got the say, I never expected you to show that much patience, lol!  Maybe he is using google translate and some stuff 
is getting lost in the translation?

Cheers,

-----Message d'origine-----
De : Armin Steinhoff [mailto:community-noreply@qnx.com] 
Envoyé : Monday, July 02, 2012 5:39 AM
À : general-community@community.qnx.com
Cc : srilakshmi; srilakshmi
Objet : Re: PCI Express

srilakshmi wrote:
> It's a QNX software problem.

IMHO ... it's not a problem with QNX software.
It's a problem of YOUR software which seems to kill the whole system :)

> After we open and compiled single program.

What means "open"  your "compiled single program" ??
Could you post a screen dump of your terminal session and the sources of your program ??

> If we want to try again to open or compile same program or  any other 
> code we are getting
>                                 " too many session files in /tmp"
> due to this system getting hanged. Every time we need to restart the 
> system to do something.
>   Its happening frequently.
>
> Would you give me the solution for this?

Yes, change your code ...

--Armin

>
> Thanks & Regards
>   Srilakshmi
>
>
>
>
> -----Original Message-----
> From: Armin Steinhoff [mailto:community-noreply@qnx.com]
> Sent: Monday, July 02, 2012 1:23 PM
> To: general-community@community.qnx.com
> Cc: srilakshmi; srilakshmi
> Subject: Re: PCI Express
>
> srilakshmi wrote:
>> Thank you for your reply with useful information.
>> Do you have any documents regarding pci express in QNX?
> In general,  PCI Express has nothing to do with QNX.
> It is just a hardware standard ... hopfully cleanly supported  by QNX
> 6.5 SP1.
>
>
>> How to generate message signaled interrupts?
> Only PCIe devices can send message signaled interrupts ... and this 
> happens ONLY at HARDWARE level!!
> QNX is not involved at that low level functions.
>
>> If you had please send to me the respective documents.
>> I want to improve my knowledge regarding PCIe,
>     See the attachment ... and forget QNX in that context.
>
> --Armin
>
>
>
>
>
>
> _______________________________________________
>
> General
> http://community.qnx.com/sf/go/post93964
> To cancel your subscription to this discussion, please e-mail 
> general-community-unsubscribe@community.qnx.com
>
> -----
> No virus found in this message.
> Checked by AVG - www.avg.com
> Version: 2012.0.2177 / Virus Database: 2437/5105 - Release Date: 
> 07/01/12
>
>
>
>
>
> _______________________________________________
>
> General
> http://community.qnx.com/sf/go/post93965
> To cancel your subscription to this discussion, please e-mail 
> general-community-unsubscribe@community.qnx.com
>






_______________________________________________

General
http://community.qnx.com/sf/go/post93966
To cancel your subscription to this discussion, please e-mail general-community-unsubscribe@community.qnx.com

Re: PCI Express  
Mario Charest wrote:
> Armin,
>
> I got the say, I never expected you to show that much patience, lol!

I have a lot of "PCI customers" for QNX 6.5, so I'm well trained :)
But I hope to get rid of this special fun with QNX 6.5 SPI or SP2 ?? Or 
QNX 8 ???

> Maybe he is using google translate and some stuff is getting lost in the translation?

Good idea!
At next I will respond by a translation from German to Hindi ... 
creative chaos makes fun :)

--Armin



>
> Cheers,
>
> -----Message d'origine-----
> De : Armin Steinhoff [mailto:community-noreply@qnx.com]
> Envoyé : Monday, July 02, 2012 5:39 AM
> À : general-community@community.qnx.com
> Cc : srilakshmi; srilakshmi
> Objet : Re: PCI Express
>
> srilakshmi wrote:
>> It's a QNX software problem.
> IMHO ... it's not a problem with QNX software.
> It's a problem of YOUR software which seems to kill the whole system :)
>
>> After we open and compiled single program.
> What means "open"  your "compiled single program" ??
> Could you post a screen dump of your terminal session and the sources of your program ??
>
>> If we want to try again to open or compile same program or  any other
>> code we are getting
>>                                  " too many session files in /tmp"
>> due to this system getting hanged. Every time we need to restart the
>> system to do something.
>>    Its happening frequently.
>>
>> Would you give me the solution for this?
> Yes, change your code ...
>
> --Armin
>
>> Thanks & Regards
>>    Srilakshmi
>>
>>
>>
>>
>> -----Original Message-----
>> From: Armin Steinhoff [mailto:community-noreply@qnx.com]
>> Sent: Monday, July 02, 2012 1:23 PM
>> To: general-community@community.qnx.com
>> Cc: srilakshmi; srilakshmi
>> Subject: Re: PCI Express
>>
>> srilakshmi wrote:
>>> Thank you for your reply with useful information.
>>> Do you have any documents regarding pci express in QNX?
>> In general,  PCI Express has nothing to do with QNX.
>> It is just a hardware standard ... hopfully cleanly supported  by QNX
>> 6.5 SP1.
>>
>>
>>> How to generate message signaled interrupts?
>> Only PCIe devices can send message signaled interrupts ... and this
>> happens ONLY at HARDWARE level!!
>> QNX is not involved at that low level functions.
>>
>>> If you had please send to me the respective documents.
>>> I want to improve my knowledge regarding PCIe,
>>      See the attachment ... and forget QNX in that context.
>>
>> --Armin
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>>
>> General
>> http://community.qnx.com/sf/go/post93964
>> To cancel your subscription to this discussion, please e-mail
>> general-community-unsubscribe@community.qnx.com
>>
>> -----
>> No virus found in this message.
>> Checked by AVG - www.avg.com
>> Version: 2012.0.2177 / Virus Database: 2437/5105 - Release Date:
>> 07/01/12
>>
>>
>>
>>
>>
>> _______________________________________________
>>
>> General
>> http://community.qnx.com/sf/go/post93965
>> To cancel your subscription to this discussion, please e-mail
>> general-community-unsubscribe@community.qnx.com
>>
>
>
>
>
>
> _______________________________________________
>
> General
> http://community.qnx.com/sf/go/post93966
> To cancel your subscription to this discussion, please e-mail...
RE: PCI Express  

Mario Charest wrote:
>> Armin,
>>
>> I got the say, I never expected you to show that much patience, lol!

>I have a lot of "PCI customers" for QNX 6.5, so I'm well trained :) But I hope to get rid of this special fun with QNX 
6.5 SPI or SP2 ?? Or QNX 8 ???

With BB10 most probably doom maybe QSS will have more time/resources to dedicated to speeding up the release cycle, 
maybe not!

PS this is my personal opinion based on information publicly available, I have no inside information.  Sometimes readers
 take me too seriously ;-)

printing of PCI bus informations / lspci port  
Hi,

here is a corrected version of the port of "lcpci" and an "example" 
program based on the ported "pciutils" of Linux.
The first version had a byte ordering bug ...

Here some outputs.

dump of the bus structure:
lspci -tv
-[0000:00]-+-00.0  Intel Corporation 82945G/GZ/P/PL Memory Controller Hub
            +-02.0  Intel Corporation 82945G/GZ Integrated Graphics 
Controller
            +-1b.0  Intel Corporation N10/ICH 7 Family High Definition 
Audio Controller
            +-1c.0-[01]--
            +-1c.1-[02]----00.0  Realtek Semiconductor Co., Ltd. 
RTL8111/8168B PCI Express Gigabit Ethernet controller
            +-1d.0  Intel Corporation N10/ICH 7 Family USB UHCI 
Controller #1
            +-1d.1  Intel Corporation N10/ICH 7 Family USB UHCI 
Controller #2
            +-1d.2  Intel Corporation N10/ICH 7 Family USB UHCI 
Controller #3
            +-1d.3  Intel Corporation N10/ICH 7 Family USB UHCI 
Controller #4
            +-1d.7  Intel Corporation N10/ICH 7 Family USB2 EHCI Controller
            +-1e.0-[03]--+-00.0  SHF Communication Technologies AG 
Ethernet Powerlink Managing Node 01
            |            \-01.0  Siemens Nixdorf AG Eicon Diva 2.02 
compatible passive ISDN card
            +-1f.0  Intel Corporation 82801GB/GR (ICH7 Family) LPC 
Interface Bridge
            +-1f.1  Intel Corporation 82801G (ICH7 Family) IDE Controller
            +-1f.2  Intel Corporation N10/ICH7 Family SATA Controller 
[IDE mode]
            \-1f.3  Intel Corporation N10/ICH 7 Family SMBus Controller

# output of the example program
0000:00:1f.3 vendor=8086 device=27da class=0c05 irq=11 (pin 2) base0=0 
(N10/ICH 7 Family SMBus Controller)
0000:00:1f.2 vendor=8086 device=27c0 class=0101 irq=11 (pin 2) 
base0=d401 (N10/ICH7 Family SATA Controller [IDE mode])
0000:00:1f.1 vendor=8086 device=27df class=0101 irq=0 (pin 1) base0=1 
(82801G (ICH7 Family) IDE Controller)
0000:00:1f.0 vendor=8086 device=27b8 class=0601 irq=0 (pin 0) base0=0 
(82801GB/GR (ICH7 Family) LPC Interface Bridge)
0000:03:01.0 vendor=110a device=2104 class=0280 irq=11 (pin 1) 
base0=d1200000 (Eicon Diva 2.02 compatible passive ISDN card)
0000:03:00.0 vendor=0eac device=0008 class=0280 irq=5 (pin 1) base0=a001 
(Ethernet Powerlink Managing Node 01)
0000:00:1e.0 vendor=8086 device=244e class=0604 irq=255 (pin 0) base0=0 
(82801 PCI Bridge)
0000:00:1d.7 vendor=8086 device=27cc class=0c03 irq=9 (pin 1) 
base0=d14c4000 (N10/ICH 7 Family USB2 EHCI Controller)
0000:00:1d.3 vendor=8086 device=27cb class=0c03 irq=3 (pin 4) base0=0 
(N10/ICH 7 Family USB UHCI Controller #4)
0000:00:1d.2 vendor=8086 device=27ca class=0c03 irq=6 (pin 3) base0=0 
(N10/ICH 7 Family USB UHCI Controller #3)
0000:00:1d.1 vendor=8086 device=27c9 class=0c03 irq=11 (pin 2) base0=0 
(N10/ICH 7 Family USB UHCI Controller #2)
0000:00:1d.0 vendor=8086 device=27c8 class=0c03 irq=9 (pin 1) base0=0 
(N10/ICH 7 Family USB UHCI Controller #1)
0000:02:00.0 vendor=10ec device=8168 class=0200 irq=10 (pin 1) 
base0=9001 (RTL8111/8168B PCI Express Gigabit Ethernet controller)
0000:00:1c.1 vendor=8086 device=27d2 class=0604 irq=10 (pin 2) base0=0 
(N10/ICH 7 Family PCI Express Port 2)
0000:00:1c.0 vendor=8086 device=27d0 class=0604 irq=3 (pin 1) base0=0 
(N10/ICH 7 Family PCI Express Port 1)
0000:00:1b.0 vendor=8086 device=27d8 class=0403 irq=3 (pin 1) 
base0=d14c0004 (N10/ICH 7 Family High Definition Audio Controller)
0000:00:02.0 vendor=8086 device=2772 class=0300 irq=3 (pin 1) 
base0=d1400000 (82945G/GZ Integrated Graphics Controller)
0000:00:00.0 vendor=8086 device=2770 class=0600 irq=0 (pin 0) base0=0 
(82945G/GZ/P/PL Memory Controller Hub)

Attachment: Text example.gz 11.92 KB Text lspci.gz 35.74 KB
RE: PCI Express  
Mario Charest wrote:
>
> Mario Charest wrote:
>>> Armin,
>>>
>>> I got the say, I never expected you to show that much patience, lol!
>> I have a lot of "PCI customers" for QNX 6.5, so I'm well trained :) But I hope to get rid of this special fun with 
QNX 6.5 SPI or SP2 ?? Or QNX 8 ???
> With BB10 most probably doom maybe QSS will have more time/resources to dedicated to speeding up the release cycle, 
maybe not!

Well ... RIM should build the right hardware compatible to QNX  .... CARS :)

--Armin

>
> PS this is my personal opinion based on information publicly available, I have no inside information.  Sometimes 
readers take me too seriously ;-)
>
>
>
>
>
> _______________________________________________
>
> General
> http://community.qnx.com/sf/go/post93971
> To cancel your subscription to this discussion, please e-mail general-community-unsubscribe@community.qnx.com


RE: PCI Express  
I got some problem...

When I am invoking Xilinx board through Intel Q57 Motherboard's PCIe slot 
I am getting the output of pci -v command is
BAR0,BAR1,BAR2 are disabled, Interrupt connection is no connection

When I am invoking same Xilinx board through Advantech Intel Motherboard's
PCIe slot
I am getting the output of pci -v command is
BAR0,BAR1,BAR2 are enabled,  Interrupt connection = 10.

Is their any problem with Advantech Motherboard or we need to do something
at this Motherboard? 

Thanks & regards
 Srilakshmi 
  

-----Original Message-----
From: Armin Steinhoff [mailto:community-noreply@qnx.com] 
Sent: Monday, July 02, 2012 9:44 PM
To: general-community@community.qnx.com
Cc: Mario Charest; Mario Charest
Subject: RE: PCI Express

Mario Charest wrote:
>
> Mario Charest wrote:
>>> Armin,
>>>
>>> I got the say, I never expected you to show that much patience, lol!
>> I have a lot of "PCI customers" for QNX 6.5, so I'm well trained :) But I
hope to get rid of this special fun with QNX 6.5 SPI or SP2 ?? Or QNX 8 ???
> With BB10 most probably doom maybe QSS will have more time/resources to
dedicated to speeding up the release cycle, maybe not!

Well ... RIM should build the right hardware compatible to QNX  .... CARS :)

--Armin

>
> PS this is my personal opinion based on information publicly available, I
have no inside information.  Sometimes readers take me too seriously ;-)
>
>
>
>
>
> _______________________________________________
>
> General
> http://community.qnx.com/sf/go/post93971
> To cancel your subscription to this discussion, please e-mail
general-community-unsubscribe@community.qnx.com






_______________________________________________

General
http://community.qnx.com/sf/go/post93976
To cancel your subscription to this discussion, please e-mail
general-community-unsubscribe@community.qnx.com

-----
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2012.0.2177 / Virus Database: 2437/5105 - Release Date: 07/01/12

Re: PCI Express  
srilakshmi,

QNX 6.25 seems to have some problems with the PCI bus of the Intel Q57 
Motherboard.
Please don't use the APIC/MSI mode of QNX 6.5 or at best go back to QNX 
6.4.1

--Armin

srilakshmi wrote:
> I got some problem...
>
> When I am invoking Xilinx board through Intel Q57 Motherboard's PCIe slot
> I am getting the output of pci -v command is
> BAR0,BAR1,BAR2 are disabled, Interrupt connection is no connection
>
> When I am invoking same Xilinx board through Advantech Intel Motherboard's
> PCIe slot
> I am getting the output of pci -v command is
> BAR0,BAR1,BAR2 are enabled,  Interrupt connection = 10.
>
> Is their any problem with Advantech Motherboard or we need to do something
> at this Motherboard?
>
> Thanks & regards
>   Srilakshmi
>    
>
> -----Original Message-----
> From: Armin Steinhoff [mailto:community-noreply@qnx.com]
> Sent: Monday, July 02, 2012 9:44 PM
> To: general-community@community.qnx.com
> Cc: Mario Charest; Mario Charest
> Subject: RE: PCI Express
>
> Mario Charest wrote:
>> Mario Charest wrote:
>>>> Armin,
>>>>
>>>> I got the say, I never expected you to show that much patience, lol!
>>> I have a lot of "PCI customers" for QNX 6.5, so I'm well trained :) But I
> hope to get rid of this special fun with QNX 6.5 SPI or SP2 ?? Or QNX 8 ???
>> With BB10 most probably doom maybe QSS will have more time/resources to
> dedicated to speeding up the release cycle, maybe not!
>
> Well ... RIM should build the right hardware compatible to QNX  .... CARS :)
>
> --Armin
>
>> PS this is my personal opinion based on information publicly available, I
> have no inside information.  Sometimes readers take me too seriously ;-)
>>
>>
>>
>>
>> _______________________________________________
>>
>> General
>> http://community.qnx.com/sf/go/post93971
>> To cancel your subscription to this discussion, please e-mail
> general-community-unsubscribe@community.qnx.com
>
>
>
>
>
>
> _______________________________________________
>
> General
> http://community.qnx.com/sf/go/post93976
> To cancel your subscription to this discussion, please e-mail
> general-community-unsubscribe@community.qnx.com
>
> -----
> No virus found in this message.
> Checked by AVG - www.avg.com
> Version: 2012.0.2177 / Virus Database: 2437/5105 - Release Date: 07/01/12
>
>
>
>
>
> _______________________________________________
>
> General
> http://community.qnx.com/sf/go/post94006
> To cancel your subscription to this discussion, please e-mail general-community-unsubscribe@community.qnx.com
>


RE: PCI Express  
Sorry I sent in opposite way
Actually,
When I am invoking Xilinx board through Advantech Motherboard's PCIe slot
 I am getting the output of pci -v command is
 BAR0,BAR1,BAR2 are disabled, Interrupt connection is no connection

 When I am invoking same Xilinx board through Intel Q57 Motherboard's
 PCIe slot
 I am getting the output of pci -v command is
 BAR0,BAR1,BAR2 are enabled,  Interrupt connection = 10.

 Is their any problem with Advantech Motherboard or we need to do something
 at this Motherboard?


Thanks & Regards
 Srilakshmi 

-----Original Message-----
From: Armin Steinhoff [mailto:community-noreply@qnx.com] 
Sent: Wednesday, July 04, 2012 4:50 PM
To: general-community@community.qnx.com
Cc: srilakshmi; srilakshmi
Subject: Re: PCI Express

srilakshmi,

QNX 6.25 seems to have some problems with the PCI bus of the Intel Q57 
Motherboard.
Please don't use the APIC/MSI mode of QNX 6.5 or at best go back to QNX 
6.4.1

--Armin

srilakshmi wrote:
> I got some problem...
>
> When I am invoking Xilinx board through Intel Q57 Motherboard's PCIe slot
> I am getting the output of pci -v command is
> BAR0,BAR1,BAR2 are disabled, Interrupt connection is no connection
>
> When I am invoking same Xilinx board through Advantech Intel Motherboard's
> PCIe slot
> I am getting the output of pci -v command is
> BAR0,BAR1,BAR2 are enabled,  Interrupt connection = 10.
>
> Is their any problem with Advantech Motherboard or we need to do something
> at this Motherboard?
>
> Thanks & regards
>   Srilakshmi
>    
>
> -----Original Message-----
> From: Armin Steinhoff [mailto:community-noreply@qnx.com]
> Sent: Monday, July 02, 2012 9:44 PM
> To: general-community@community.qnx.com
> Cc: Mario Charest; Mario Charest
> Subject: RE: PCI Express
>
> Mario Charest wrote:
>> Mario Charest wrote:
>>>> Armin,
>>>>
>>>> I got the say, I never expected you to show that much patience, lol!
>>> I have a lot of "PCI customers" for QNX 6.5, so I'm well trained :) But
I
> hope to get rid of this special fun with QNX 6.5 SPI or SP2 ?? Or QNX 8
???
>> With BB10 most probably doom maybe QSS will have more time/resources to
> dedicated to speeding up the release cycle, maybe not!
>
> Well ... RIM should build the right hardware compatible to QNX  .... CARS
:)
>
> --Armin
>
>> PS this is my personal opinion based on information publicly available, I
> have no inside information.  Sometimes readers take me too seriously ;-)
>>
>>
>>
>>
>> _______________________________________________
>>
>> General
>> http://community.qnx.com/sf/go/post93971
>> To cancel your subscription to this discussion, please e-mail
> general-community-unsubscribe@community.qnx.com
>
>
>
>
>
>
> _______________________________________________
>
> General
> http://community.qnx.com/sf/go/post93976
> To cancel your subscription to this discussion, please e-mail
> general-community-unsubscribe@community.qnx.com
>
> -----
> No virus found in this message.
> Checked by AVG - www.avg.com
> Version: 2012.0.2177 / Virus Database: 2437/5105 - Release Date: 07/01/12
>
>
>
>
>
> _______________________________________________
>
> General
> http://community.qnx.com/sf/go/post94006
> To cancel your subscription to this discussion, please e-mail
general-community-unsubscribe@community.qnx.com
>






_______________________________________________

General
http://community.qnx.com/sf/go/post94007
To cancel your subscription to this discussion, please e-mail
general-community-unsubscribe@community.qnx.com

-----
No virus found in this message.
Checked by AVG -...
Re: PCI Express  
The BAR registers are only enabled once you run your program and perform a
pci_attach_device(). If you don't use the PCI_PERSIST flag, when your
program terminates, the BAR registers will be reset and disabled.




On 12-07-04 5:57 AM, "srilakshmi" <community-noreply@qnx.com> wrote:

>I got some problem...
>
>When I am invoking Xilinx board through Intel Q57 Motherboard's PCIe slot
>I am getting the output of pci -v command is
>BAR0,BAR1,BAR2 are disabled, Interrupt connection is no connection
>
>When I am invoking same Xilinx board through Advantech Intel Motherboard's
>PCIe slot
>I am getting the output of pci -v command is
>BAR0,BAR1,BAR2 are enabled,  Interrupt connection = 10.
>
>Is their any problem with Advantech Motherboard or we need to do something
>at this Motherboard?
>
>Thanks & regards
> Srilakshmi 
>  
>
>-----Original Message-----
>From: Armin Steinhoff [mailto:community-noreply@qnx.com]
>Sent: Monday, July 02, 2012 9:44 PM
>To: general-community@community.qnx.com
>Cc: Mario Charest; Mario Charest
>Subject: RE: PCI Express
>
>Mario Charest wrote:
>>
>> Mario Charest wrote:
>>>> Armin,
>>>>
>>>> I got the say, I never expected you to show that much patience, lol!
>>> I have a lot of "PCI customers" for QNX 6.5, so I'm well trained :)
>>>But I
>hope to get rid of this special fun with QNX 6.5 SPI or SP2 ?? Or QNX 8
>???
>> With BB10 most probably doom maybe QSS will have more time/resources to
>dedicated to speeding up the release cycle, maybe not!
>
>Well ... RIM should build the right hardware compatible to QNX  .... CARS
>:)
>
>--Armin
>
>>
>> PS this is my personal opinion based on information publicly available,
>>I
>have no inside information.  Sometimes readers take me too seriously ;-)
>>
>>
>>
>>
>>
>> _______________________________________________
>>
>> General
>> http://community.qnx.com/sf/go/post93971
>> To cancel your subscription to this discussion, please e-mail
>general-community-unsubscribe@community.qnx.com
>
>
>
>
>
>
>_______________________________________________
>
>General
>http://community.qnx.com/sf/go/post93976
>To cancel your subscription to this discussion, please e-mail
>general-community-unsubscribe@community.qnx.com
>
>-----
>No virus found in this message.
>Checked by AVG - www.avg.com
>Version: 2012.0.2177 / Virus Database: 2437/5105 - Release Date: 07/01/12
>
>
>
>
>
>_______________________________________________
>
>General
>http://community.qnx.com/sf/go/post94006
>To cancel your subscription to this discussion, please e-mail
>general-community-unsubscribe@community.qnx.com

Re: PCI Express  
Hugh Brown wrote:
> The BAR registers are only enabled once you run your program and perform a
> pci_attach_device(). If you don't use the PCI_PERSIST flag, when your
> program terminates, the BAR registers will be reset and disabled.

... and this is new with QNX 6.5 ??

Regards

--Armin

>
>
>
>
> On 12-07-04 5:57 AM, "srilakshmi" <community-noreply@qnx.com> wrote:
>
>> I got some problem...
>>
>> When I am invoking Xilinx board through Intel Q57 Motherboard's PCIe slot
>> I am getting the output of pci -v command is
>> BAR0,BAR1,BAR2 are disabled, Interrupt connection is no connection
>>
>> When I am invoking same Xilinx board through Advantech Intel Motherboard's
>> PCIe slot
>> I am getting the output of pci -v command is
>> BAR0,BAR1,BAR2 are enabled,  Interrupt connection = 10.
>>
>> Is their any problem with Advantech Motherboard or we need to do something
>> at this Motherboard?
>>
>> Thanks & regards
>> Srilakshmi
>>   
>>
>> -----Original Message-----
>> From: Armin Steinhoff [mailto:community-noreply@qnx.com]
>> Sent: Monday, July 02, 2012 9:44 PM
>> To: general-community@community.qnx.com
>> Cc: Mario Charest; Mario Charest
>> Subject: RE: PCI Express
>>
>> Mario Charest wrote:
>>> Mario Charest wrote:
>>>>> Armin,
>>>>>
>>>>> I got the say, I never expected you to show that much patience, lol!
>>>> I have a lot of "PCI customers" for QNX 6.5, so I'm well trained :)
>>>> But I
>> hope to get rid of this special fun with QNX 6.5 SPI or SP2 ?? Or QNX 8
>> ???
>>> With BB10 most probably doom maybe QSS will have more time/resources to
>> dedicated to speeding up the release cycle, maybe not!
>>
>> Well ... RIM should build the right hardware compatible to QNX  .... CARS
>> :)
>>
>> --Armin
>>
>>> PS this is my personal opinion based on information publicly available,
>>> I
>> have no inside information.  Sometimes readers take me too seriously ;-)
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>>
>>> General
>>> http://community.qnx.com/sf/go/post93971
>>> To cancel your subscription to this discussion, please e-mail
>> general-community-unsubscribe@community.qnx.com
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>>
>> General
>> http://community.qnx.com/sf/go/post93976
>> To cancel your subscription to this discussion, please e-mail
>> general-community-unsubscribe@community.qnx.com
>>
>> -----
>> No virus found in this message.
>> Checked by AVG - www.avg.com
>> Version: 2012.0.2177 / Virus Database: 2437/5105 - Release Date: 07/01/12
>>
>>
>>
>>
>>
>> _______________________________________________
>>
>> General
>> http://community.qnx.com/sf/go/post94006
>> To cancel your subscription to this discussion, please e-mail
>> general-community-unsubscribe@community.qnx.com
>
>
>
>
> _______________________________________________
>
> General
> http://community.qnx.com/sf/go/post94008
> To cancel your subscription to this discussion, please e-mail general-community-unsubscribe@community.qnx.com
>


Re: PCI Express  
No, it has always been like that if a device is not initialized by the
BIOS.




On 12-07-04 7:51 AM, "Armin Steinhoff" <community-noreply@qnx.com> wrote:

>Hugh Brown wrote:
>> The BAR registers are only enabled once you run your program and
>>perform a
>> pci_attach_device(). If you don't use the PCI_PERSIST flag, when your
>> program terminates, the BAR registers will be reset and disabled.
>
>... and this is new with QNX 6.5 ??
>
>Regards
>
>--Armin
>
>>
>>
>>
>>
>> On 12-07-04 5:57 AM, "srilakshmi" <community-noreply@qnx.com> wrote:
>>
>>> I got some problem...
>>>
>>> When I am invoking Xilinx board through Intel Q57 Motherboard's PCIe
>>>slot
>>> I am getting the output of pci -v command is
>>> BAR0,BAR1,BAR2 are disabled, Interrupt connection is no connection
>>>
>>> When I am invoking same Xilinx board through Advantech Intel
>>>Motherboard's
>>> PCIe slot
>>> I am getting the output of pci -v command is
>>> BAR0,BAR1,BAR2 are enabled,  Interrupt connection = 10.
>>>
>>> Is their any problem with Advantech Motherboard or we need to do
>>>something
>>> at this Motherboard?
>>>
>>> Thanks & regards
>>> Srilakshmi
>>>   
>>>
>>> -----Original Message-----
>>> From: Armin Steinhoff [mailto:community-noreply@qnx.com]
>>> Sent: Monday, July 02, 2012 9:44 PM
>>> To: general-community@community.qnx.com
>>> Cc: Mario Charest; Mario Charest
>>> Subject: RE: PCI Express
>>>
>>> Mario Charest wrote:
>>>> Mario Charest wrote:
>>>>>> Armin,
>>>>>>
>>>>>> I got the say, I never expected you to show that much patience, lol!
>>>>> I have a lot of "PCI customers" for QNX 6.5, so I'm well trained :)
>>>>> But I
>>> hope to get rid of this special fun with QNX 6.5 SPI or SP2 ?? Or QNX 8
>>> ???
>>>> With BB10 most probably doom maybe QSS will have more time/resources
>>>>to
>>> dedicated to speeding up the release cycle, maybe not!
>>>
>>> Well ... RIM should build the right hardware compatible to QNX  ....
>>>CARS
>>> :)
>>>
>>> --Armin
>>>
>>>> PS this is my personal opinion based on information publicly
>>>>available,
>>>> I
>>> have no inside information.  Sometimes readers take me too seriously
>>>;-)
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>>
>>>> General
>>>> http://community.qnx.com/sf/go/post93971
>>>> To cancel your subscription to this discussion, please e-mail
>>> general-community-unsubscribe@community.qnx.com
>>>
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>>
>>> General
>>> http://community.qnx.com/sf/go/post93976
>>> To cancel your subscription to this discussion, please e-mail
>>> general-community-unsubscribe@community.qnx.com
>>>
>>> -----
>>> No virus found in this message.
>>> Checked by AVG - www.avg.com
>>> Version: 2012.0.2177 / Virus Database: 2437/5105 - Release Date:
>>>07/01/12
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>>
>>> General
>>>...
Re: PCI Express  
Hugh,

I'm missing PCI related calls like pci_enable_msi or pci_disable_msi a.s.o.

With such calls it would be possible to initialize the PCIe devices for MSI operation.
(Please see the attached HOWTO ...)

Do we have a chance to get such routines in acceptable time frame ??

Regards

--Armin
Attachment: Text MSI-HOWTO.txt 15.34 KB
Re: PCI Express  
Armin,

These functions are part of the pci_attach_device() function call. In the
flags section you either add PCI_USE_MSI or PCI_USE_MSIX depending on
which interrupt type you want to use. If you use these flags and the
device doesn't support MSI or MSIX, the PCI server will default to IRQ
interrupts.

Hugh.

-- 
Hugh Brown
QNX Software Systems Limited
1001 Farrar Rd.,
Ottawa. ON. K2K 0B3.
Telephone: 613-591-0931







On 12-07-04 11:42 AM, "Armin Steinhoff" <community-noreply@qnx.com> wrote:

>Hugh,
>
>I'm missing PCI related calls like pci_enable_msi or pci_disable_msi
>a.s.o.
>
>With such calls it would be possible to initialize the PCIe devices for
>MSI operation.
>(Please see the attached HOWTO ...)
>
>Do we have a chance to get such routines in acceptable time frame ??
>
>Regards
>
>--Armin
>
>
>
>
>_______________________________________________
>
>General
>http://community.qnx.com/sf/go/post94028
>To cancel your subscription to this discussion, please e-mail
>general-community-unsubscribe@community.qnx.com

Re: PCI Express  
Hugh,

OK ... but the OS must set the capabilies and the MSI-IRQ number for the 
PCIe devices.
IMHO ... that's also not done by SP1.

--Armin

Hugh Brown wrote:
> Armin,
>
> These functions are part of the pci_attach_device() function call. In the
> flags section you either add PCI_USE_MSI or PCI_USE_MSIX depending on
> which interrupt type you want to use. If you use these flags and the
> device doesn't support MSI or MSIX, the PCI server will default to IRQ
> interrupts.
>
> Hugh.
>


Re: PCI Express  
The PCI server enables either the MSI or MSIX capability depending on
which is selected and also assigns MSI/X IRQ numbers to the device. Is
this what you are talking about?

-- 
Hugh Brown
QNX Software Systems Limited
1001 Farrar Rd.,
Ottawa. ON. K2K 0B3.
Telephone: 613-591-0931







On 12-07-04 12:00 PM, "Armin Steinhoff" <community-noreply@qnx.com> wrote:

>
>Hugh,
>
>OK ... but the OS must set the capabilies and the MSI-IRQ number for the
>PCIe devices.
>IMHO ... that's also not done by SP1.
>
>--Armin
>
>Hugh Brown wrote:
>> Armin,
>>
>> These functions are part of the pci_attach_device() function call. In
>>the
>> flags section you either add PCI_USE_MSI or PCI_USE_MSIX depending on
>> which interrupt type you want to use. If you use these flags and the
>> device doesn't support MSI or MSIX, the PCI server will default to IRQ
>> interrupts.
>>
>> Hugh.
>>
>
>
>
>
>
>
>_______________________________________________
>
>General
>http://community.qnx.com/sf/go/post94030
>To cancel your subscription to this discussion, please e-mail
>general-community-unsubscribe@community.qnx.com

Re: PCI Express  
Hugh Brown wrote:
> The PCI server enables either the MSI or MSIX capability depending on
> which is selected and also assigns MSI/X IRQ numbers to the device. Is
> this what you are talking about?
>
Yes and No.
 From the example provided by the pci_attach_device documentation:

if (pci_read_config8 (bus, devfn, cap_ptr, 1, &cap)) <<<--- that means 
the OS must set the capabilities before
<<<--- but in the dumps of pci or lspci  I saw
<<<--- never entries of the MSI capabilities of PCIe devices
     return (-1);
if (cap == PCI_CAP_MSI)

The assigned IRQ seems alway connected to an INTx line ... which is the 
default non MSI mapping.

Regards

--Armin

Attachment: HTML sf-attachment-mime2799 2.2 KB
Re: PCI Express  
If you run 'pci -v' you will see all of the capabilities for all of the devices. The MSI or MSIX interrupt is only 
assigned once a pci_attach_device() has been performed, so if there is no driver running against a MSI or MSIX capable 
device, you will see the standard IRQ interrupt. See the attached pci.txt file where the gigabit Ethernet device has 
been assigned MSIX interrupts.

--
Hugh Brown
QNX Software Systems Limited
1001 Farrar Rd.,
Ottawa. ON. K2K 0B3.
Telephone: 613-591-0931



From: Armin Steinhoff <community-noreply@qnx.com<mailto:community-noreply@qnx.com>>;
Reply-To: "general-community@community.qnx.com<mailto:general-community@community.qnx.com>;" <general-community@
community.qnx.com<mailto:general-community@community.qnx.com>>;
Date: Wednesday, 4 July, 2012 2:33 PM
To: "general-community@community.qnx.com<mailto:general-community@community.qnx.com>;" <general-community@community.
qnx.com<mailto:general-community@community.qnx.com>>;
Cc: Info System - IS Notifications <is-notifications@qnx.com<mailto:is-notifications@qnx.com>>, Info System - IS 
Notifications <is-notifications@qnx.com<mailto:is-notifications@qnx.com>>, Info System - IS Notifications <is-
notifications@qnx.com<mailto:is-notifications@qnx.com>>, Info System - IS Notifications <is-notifications@qnx.com<mailto
:is-notifications@qnx.com>>;
Subject: Re: PCI Express

Hugh Brown wrote:

The PCI server enables either the MSI or MSIX capability depending on
which is selected and also assigns MSI/X IRQ numbers to the device. Is
this what you are talking about?



Yes and No.
From the example provided by the pci_attach_device documentation:

if (pci_read_config8 (bus, devfn, cap_ptr, 1, &cap))  <<<--- that means the OS must set the capabilities before
                                                                                 <<<--- but in the dumps of pci or lspci
  I saw
                                                                                 <<<--- never entries of the MSI 
capabilities of PCIe devices
    return (-1);
if (cap == PCI_CAP_MSI)

The assigned IRQ seems alway connected to an INTx line ... which is the default non MSI mapping.

Regards

--Armin

Attachment: Text pci.txt 21.34 KB HTML sf-attachment-mime2803 4.7 KB
Re: PCI Express  
Hugh,

I have hier a PCI Express board and there are not the MSI capability set:

Class          = Unknown (Unknown)
Vendor ID      = 10b5h, PLX Technology, Inc.
Device ID      = 86e1h, Unknown Unknown
PCI index      = 0h
Class Codes    = ff0000h
Revision ID    = ach
Bus number     = 9
Device number  = 4
Function num   = 0
Status Reg     = 2b0h
Command Reg    = 17h
     I/O space access enabled
     Memory space access enabled
     Bus Master enabled
     Special Cycle operations ignored
     Memory Write and Invalidate enabled
     Palette Snooping disabled
     Parity Error Response disabled
     Data/Address stepping disabled
     SERR# driver disabled
     Fast back-to-back transactions to different agents disabled
     PCI INTx enabled
Header type    = 0h Single-function
BIST           = 0h Build-in-self-test not supported
Latency Timer  = 20h
Cache Line Size= 10h un-cacheable
BAR - 0 [Mem]  = 55480000h 32bit length 512 enabled
BAR - 1 [I/O]  = 3000h length 256 enabled
BAR - 2 [Mem]  = 55400000h 32bit length 524288 enabled
Subsystem Vendor ID = 14a0h
Subsystem ID        = 2bh
Max Lat        = 0ns
Min Gnt        = 0ns
PCI Int Pin    = INT A
Interrupt line = 18
CPU Interrupt  = 12h
Capabilities Pointer = 40h
Capability ID        = 1h - Power Management
Capabilities         = 0h - 0h
Capability ID        = 6h - CompactPCI Hot Swap <<<- it isn't a 
CompactPCI board and I'm missing the capability 5h !
Capabilities         = 0h - 3h
Capability ID        = 3h - VPD
Capabilities         = 0h - 0h
Device Dependent Registers:
0x040:  0148 0000 0000 0000   064c 0000 0300 0000
0x050:  0000 0000 0000 0000   0000 0000 0000 0000
...
0x0f0:  0000 0000 0000 0000   0000 0000 0000 0000

pci_attach_device returns also a false default IRQ back !

Regards

--Armin



Hugh Brown wrote:
> If you run 'pci -v' you will see all of the capabilities for all of 
> the devices. The MSI or MSIX interrupt is only assigned once a 
> pci_attach_device() has been performed, so if there is no driver 
> running against a MSI or MSIX capable device, you will see the 
> standard IRQ interrupt. See the attached pci.txt file where the 
> gigabit Ethernet device has been assigned MSIX interrupts.
>
> -- 
> Hugh Brown
> QNX Software Systems Limited
> 1001 Farrar Rd.,
> Ottawa. ON. K2K 0B3.
> Telephone: 613-591-0931
>
>
>
> From: Armin Steinhoff <community-noreply@qnx.com 
> <mailto:community-noreply@qnx.com>>;
> Reply-To: "general-community@community.qnx.com 
> <mailto:general-community@community.qnx.com>;" 
> <general-community@community.qnx.com 
> <mailto:general-community@community.qnx.com>>;
> Date: Wednesday, 4 July, 2012 2:33 PM
> To: "general-community@community.qnx.com 
> <mailto:general-community@community.qnx.com>;" 
> <general-community@community.qnx.com 
> <mailto:general-community@community.qnx.com>>;
> Cc: Info System - IS Notifications <is-notifications@qnx.com 
> <mailto:is-notifications@qnx.com>>, Info System - IS Notifications 
> <is-notifications@qnx.com <mailto:is-notifications@qnx.com>>, Info 
> System - IS Notifications <is-notifications@qnx.com 
> <mailto:is-notifications@qnx.com>>, Info System - IS Notifications 
> <is-notifications@qnx.com <mailto:is-notifications@qnx.com>>;
> Subject: Re: PCI Express
>
> Hugh Brown wrote:
>> The PCI server enables either the MSI or MSIX capability depending on
>> which is selected and also assigns MSI/X IRQ numbers to the device. Is
>> this what you are talking about?
>>
> Yes and No.
> >From the example provided by the pci_attach_device documentation:
>
> if (pci_read_config8 (bus, devfn, cap_ptr, 1, &cap)) <<<--- that means 
> the OS must set the...
View Full Message
Attachment: HTML sf-attachment-mime2808 9.24 KB
Re: PCI Express  
Hugh,

I have hier the same PCI Express board placed in an other slot. There 
are not the MSI capabilitie set,
but a MSI interrupt of 18 has been assigned. The crazy point is: the 
board is working in default mode with that IRQ!

09:04.0 Unassigned class [ff00]: PLX Technology, Inc. Device 86e1 (rev ac)
     Subsystem: SOFTING GmBH Device 002b
     Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- 
Stepping- SERR- FastB2B- DisINTx-
     Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
<TAbort- <MAbort- >SERR- <PERR- INTx-
     Latency: 32, Cache Line Size: 64 bytes
     Interrupt: pin A routed to *IRQ 18*
     Region 0: Memory at 55480000 (32-bit, non-prefetchable)
     Region 1: I/O ports at 3000
     Region 2: Memory at 55400000 (32-bit, non-prefetchable)
     Capabilities: [40] Power Management version 0 *<<<<=== no MSI caps !*
         Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA 
PME(D0-,D1-,D2-,D3hot-,D3cold-)
         Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
     Capabilities: [48] CompactPCI hot-swap <?> *<<<=== wrong!*
     Capabilities: [4c] Vital Product Data
         Not readable
00: b5 10 e1 86 17 00 b0 02 ac 00 00 ff 10 20 00 00 <<< dump of the 
config space
10: 00 00 48 55 01 30 00 00 00 00 40 55 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 a0 14 2b 00
30: 00 00 00 00 40 00 00 00 00 00 00 00 *12* 01 00 00

Regards

--Armin



Hugh Brown wrote:
> If you run 'pci -v' you will see all of the capabilities for all of 
> the devices. The MSI or MSIX interrupt is only assigned once a 
> pci_attach_device() has been performed, so if there is no driver 
> running against a MSI or MSIX capable device, you will see the 
> standard IRQ interrupt. See the attached pci.txt file where the 
> gigabit Ethernet device has been assigned MSIX interrupts.
>
> -- 
> Hugh Brown
> QNX Software Systems Limited
> 1001 Farrar Rd.,
> Ottawa. ON. K2K 0B3.
> Telephone: 613-591-0931
>
>
>
> From: Armin Steinhoff <community-noreply@qnx.com 
> <mailto:community-noreply@qnx.com>>;
> Reply-To: "general-community@community.qnx.com 
> <mailto:general-community@community.qnx.com>;" 
> <general-community@community.qnx.com 
> <mailto:general-community@community.qnx.com>>;
> Date: Wednesday, 4 July, 2012 2:33 PM
> To: "general-community@community.qnx.com 
> <mailto:general-community@community.qnx.com>;" 
> <general-community@community.qnx.com 
> <mailto:general-community@community.qnx.com>>;
> Cc: Info System - IS Notifications <is-notifications@qnx.com 
> <mailto:is-notifications@qnx.com>>, Info System - IS Notifications 
> <is-notifications@qnx.com <mailto:is-notifications@qnx.com>>, Info 
> System - IS Notifications <is-notifications@qnx.com 
> <mailto:is-notifications@qnx.com>>, Info System - IS Notifications 
> <is-notifications@qnx.com <mailto:is-notifications@qnx.com>>;
> Subject: Re: PCI Express
>
> Hugh Brown wrote:
>> The PCI server enables either the MSI or MSIX capability depending on
>> which is selected and also assigns MSI/X IRQ numbers to the device. Is
>> this what you are talking about?
>>
> Yes and No.
> >From the example provided by the pci_attach_device documentation:
>
> if (pci_read_config8 (bus, devfn, cap_ptr, 1, &cap)) <<<--- that means 
> the OS must set the capabilities before
> <<<--- but in the dumps of pci or lspci  I saw
> <<<--- never entries of the MSI capabilities of PCIe devices
>     return (-1);
> if (cap == PCI_CAP_MSI)
>
> The assigned IRQ seems alway connected to an INTx line ... which is 
> the default non MSI mapping.
>
>...
Attachment: HTML sf-attachment-mime2811 8.11 KB
Re: PCI Express  
Armin,

In your previous e-mail, the device doesn't have a capability 5 as it doesn't support MSI. The capabilities structure is
 a linked list, so you cannot miss a capability.

When the local APIC is enabled it gives you 8 more IRQ interrupts and we number these from 16 to 23, so the interrupt 
that you see below is not an MSI interrupt, but a normal IRQ. We number MSI/X interrupts from 0x100 upwards, but the PCI
 interrupt line register only contains 8 bits, so you will see the interrupt line register set to 0x00 for interrupt 
0x100 and to 0x01 for interrupt 0x101 etc. The correct interrupt is sent to the driver in the interrupt attach structure
 as this value is 32-bits.

Hugh.

--
Hugh Brown
QNX Software Systems Limited
1001 Farrar Rd.,
Ottawa. ON. K2K 0B3.
Telephone: 613-591-0931



From: Armin Steinhoff <community-noreply@qnx.com<mailto:community-noreply@qnx.com>>;
Reply-To: "general-community@community.qnx.com<mailto:general-community@community.qnx.com>;" <general-community@
community.qnx.com<mailto:general-community@community.qnx.com>>;
Date: Wednesday, 4 July, 2012 6:56 PM
To: "general-community@community.qnx.com<mailto:general-community@community.qnx.com>;" <general-community@community.
qnx.com<mailto:general-community@community.qnx.com>>;
Cc: Info System - IS Notifications <is-notifications@qnx.com<mailto:is-notifications@qnx.com>>, Info System - IS 
Notifications <is-notifications@qnx.com<mailto:is-notifications@qnx.com>>, Info System - IS Notifications <is-
notifications@qnx.com<mailto:is-notifications@qnx.com>>, Info System - IS Notifications <is-notifications@qnx.com<mailto
:is-notifications@qnx.com>>;
Subject: Re: PCI Express

Hugh,

I have hier the same PCI Express board placed in an other slot. There are not the MSI capabilitie set,
but a MSI interrupt of 18 has been assigned. The crazy point is: the board is working in default mode with that IRQ!

09:04.0 Unassigned class [ff00]: PLX Technology, Inc. Device 86e1 (rev ac)
    Subsystem: SOFTING GmBH Device 002b
    Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
    Latency: 32, Cache Line Size: 64 bytes
    Interrupt: pin A routed to IRQ 18
    Region 0: Memory at 55480000 (32-bit, non-prefetchable)
    Region 1: I/O ports at 3000
    Region 2: Memory at 55400000 (32-bit, non-prefetchable)
    Capabilities: [40] Power Management version 0    <<<<=== no MSI caps !
        Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
        Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
    Capabilities: [48] CompactPCI hot-swap <?> <<<=== wrong!
    Capabilities: [4c] Vital Product Data
        Not readable
00: b5 10 e1 86 17 00 b0 02 ac 00 00 ff 10 20 00 00     <<< dump of the config space
10: 00 00 48 55 01 30 00 00 00 00 40 55 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 a0 14 2b 00
30: 00 00 00 00 40 00 00 00 00 00 00 00 12 01 00 00

Regards

--Armin



Hugh Brown wrote:
If you run 'pci -v' you will see all of the capabilities for all of the devices. The MSI or MSIX interrupt is only 
assigned once a pci_attach_device() has been performed, so if there is no driver running against a MSI or MSIX capable 
device, you will see the standard IRQ interrupt. See the attached pci.txt file where the gigabit Ethernet device has 
been assigned MSIX interrupts.

--
Hugh Brown
QNX Software Systems Limited
1001 Farrar Rd.,
Ottawa. ON. K2K 0B3.
Telephone: 613-591-0931



From: Armin Steinhoff <community-noreply@qnx.com<mailto:community-noreply@qnx.com>>;
Reply-To: "general-community@community.qnx.com<mailto:general-community@community.qnx.com>;"...
View Full Message
Attachment: HTML sf-attachment-mime2832 9.95 KB