Project Home
Project Home
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
BroadcastCommunity.qnx.com will be offline from May 31 6:00pm until June 2 12:00AM for upcoming system upgrades. For more information please go to https://community.qnx.com/sf/discussion/do/listPosts/projects.bazaar/discussion.bazaar.topc28418
Forum Topic - No routing of interrupts to PCI devices on PCIe system with startup-apic?: (12 Items)
   
No routing of interrupts to PCI devices on PCIe system with startup-apic?  
Hello experts,

I have the problem that we want to switch over to startup-apic from out startup-bios based system to avoid interrupt 
sharing because a device creates a huge amount of interrupts periodically.

For this, we started up the system with startup-apic and pci-bios-v2. But now our drivers are not able to attach to the 
device with pci_attach_device anymore, sloginfo states:

Bus X device Y - No routing found
last_chance on AA:BB:CC irq 11

Does anybody have an hint on what to do to enable the platform to complete the routing for the interrupts?

Thanks in advance,
Sven
Re: No routing of interrupts to PCI devices on PCIe system with startup-apic?  
Hi Sven,

I don't know for sure if this is your problem, but I ran in to something similar a while back.  Unfortunately the 
current release of the QNX x86 BSP cannot route interrupts through PCI bridges that aren't documented in the routing 
table by the BIOS.   This includes all external PCI-to-PCI bridges, as well as any onboard PCI-to-PCI bridges that the 
BIOS authors just didn't bother to explicitly document (usually because they follow the standard routing practice, and 
additional information isn't necessary for other OSes).

If you know your device is behind a PCI-to-PCI bridge somewhere, I can send you a patch to the x86 BSP to work around 
that particular issue.  I've already sent it on to the folks at QNX some time back, but it is a bit of a hack and 
they're busy people, so it's hard to know if or when this might make in to an official update.  

Let me know,
-Will
Re: No routing of interrupts to PCI devices on PCIe system with startup-apic?  
Hi Will,

am Mittwoch, 14. Januar 2015, 17:08:39 schrieben Sie:

> I don't know for sure if this is your problem, but I ran in to something
> similar a while back.  Unfortunately the current release of the QNX x86 BSP
> cannot route interrupts through PCI bridges that aren't documented in the
> routing table by the BIOS.   This includes all external PCI-to-PCI bridges,
> as well as any onboard PCI-to-PCI bridges that the BIOS authors just didn't
> bother to explicitly document (usually because they follow the standard
> routing practice, and additional information isn't necessary for other
> OSes).

Thanks for the info!

> If you know your device is behind a PCI-to-PCI bridge somewhere, I can send
> you a patch to the x86 BSP to work around that particular issue.  I've
> already sent it on to the folks at QNX some time back, but it is a bit of a
> hack and they're busy people, so it's hard to know if or when this might
> make in to an official update.

That's exactly the case: We have a CompactPCI system which is coupled to the 
CPU board via a PCI-to-PCI bridge. So your patch would be very welcome and I 
will try it out if it helps in our system!

Thanks in advance, 
Sven

-- 
Sven Fischer (Dipl.-Phys.) - EDV- und SAP-Beratung
                Platzer Höhenweg 34, 51429 Bergisch Gladbach, Germany
                Tel.: +49-(0)2204-9670010, Fax: +49-(0)2204-9670019
                Mobil: +49-(0)172-2012493, Web: http://www.effeffcee.de

Re: No routing of interrupts to PCI devices on PCIe system with startup-apic?  
Hi Sven,

Here it is.  Good luck!

-Will
Attachment: Text bsp-pci-routing.patch 4.81 KB
Re: No routing of interrupts to PCI devices on PCIe system with startup-apic?  
Hello Will,

am Donnerstag, 15. Januar 2015, 14:52:51 schrieben Sie:
Thx a lot!

Regards, Sven

-- 
Sven Fischer (Dipl.-Phys.) - EDV- und SAP-Beratung
                Platzer Höhenweg 34, 51429 Bergisch Gladbach, Germany
                Tel.: +49-(0)2204-9670010, Fax: +49-(0)2204-9670019
                Mobil: +49-(0)172-2012493, Web: http://www.effeffcee.de

Re: No routing of interrupts to PCI devices on PCIe system with startup-apic?  
Hi Sven,

No problem.   Please let me know if it works for you!   We actually wrote it for the very same reason, to support a CPCI
 host computer that used a bridge to connect the CPCI bus.

Thanks,
-Will
Re: No routing of interrupts to PCI devices on PCIe system with startup-apic?  
Hi Will,

Am 16.1.2015 21:20, schrieb Will Miles:

> No problem.   Please let me know if it works for you!   We actually
> wrote it for the very same reason, to support a CPCI host computer
> that used a bridge to connect the CPCI bus.

Works like a charm, you saved my day!

Cheers, Sven
Re: No routing of interrupts to PCI devices on PCIe system with startup-apic?  
Hi Sven,

Awesome, glad to hear it!   Thanks. :)

-Will

> Hi Will,
> 
> Am 16.1.2015 21:20, schrieb Will Miles:
> 
> > No problem.   Please let me know if it works for you!   We actually
> > wrote it for the very same reason, to support a CPCI host computer
> > that used a bridge to connect the CPCI bus.
> 
> Works like a charm, you saved my day!
> 
> Cheers, Sven


Re: No routing of interrupts to PCI devices on PCIe system with startup-apic?  
Hi Sven,

could you post your patched version ?

Armin Steinhoff


Fischer, Sven schrieb:
> Hi Will,
>
> Am 16.1.2015 21:20, schrieb Will Miles:
>
>> No problem.   Please let me know if it works for you!   We actually
>> wrote it for the very same reason, to support a CPCI host computer
>> that used a bridge to connect the CPCI bus.
> Works like a charm, you saved my day!
>
> Cheers, Sven
>
>
>
>
> _______________________________________________
>
> OSTech
> http://community.qnx.com/sf/go/post113007
> To cancel your subscription to this discussion, please e-mail ostech-core_os-unsubscribe@community.qnx.com
>

Re: No routing of interrupts to PCI devices on PCIe system with startup-apic?  
Hallo Armin,

am Donnerstag, 22. Januar 2015, 09:39:44 schrieben Sie:

> could you post your patched version ?

it is a little bit difficult due to the fact that we are not allowed to 
transfer files out of the company for security reasons. Getting the patch INTO 
the company was difficult enough. 

But it is fairly easy to compile: Get the BSP from 
http://community.qnx.com/sf/frs/do/viewRelease/projects.bsp/frs.x86_bios.bsp_nto650_x86_bios_trunk
unpack it, go to the folder with the pci-bios-v2 source code and apply the 
patch, type make and you are done.

Regards, Sven

-- 
Sven Fischer (Dipl.-Phys.) - EDV- und SAP-Beratung
                Platzer Höhenweg 34, 51429 Bergisch Gladbach, Germany
                Tel.: +49-(0)2204-9670010, Fax: +49-(0)2204-9670019
                Mobil: +49-(0)172-2012493, Web: http://www.effeffcee.de

Re: No routing of interrupts to PCI devices on PCIe system with startup-apic?  
Is someone able to explain why QSSL isn't able to realize a similar fix ??

It's hard to understand ...

--Armin



Will Miles schrieb:
> Hi Sven,
>
> Here it is.  Good luck!
>
> -Will
>
>
>
> _______________________________________________
>
> OSTech
> http://community.qnx.com/sf/go/post112956
> To cancel your subscription to this discussion, please e-mail ostech-core_os-unsubscribe@community.qnx.com

Re: No routing of interrupts to PCI devices on PCIe system with startup-apic?  
Hi Armin,

Far be it for me to speak for QNX, but my workaround is a bit of a hack - it replicates some data structures - the bus 
topology - from elsewhere in the PCI server; "doing it right" would essentially require changing some parts of the 
encapsulation model in the current PCI server software architecture.   Someone at QNX is actually working on a 
completely new PCIe server - there's a beta up at http://community.qnx.com/sf/go/pkg2665.   I haven't tested it yet, but
 it might already fix this.    Given both of these conditions, I can at least understand not moving quickly on it.

-Will