All of lore.kernel.org
 help / color / mirror / Atom feed
* [Xenomai] RTDM PCI drivers IRQ line conflict
@ 2015-07-01 15:56 Antoine Durand
  2015-07-01 16:02 ` Gilles Chanteperdrix
  0 siblings, 1 reply; 3+ messages in thread
From: Antoine Durand @ 2015-07-01 15:56 UTC (permalink / raw)
  To: xenomai

Hi,

I've two PCI devices for which I'm making RTDM drivers.

I can load the first without any problem.

but when the second driver call rtdm_irq_request (passing the struct
pci_dev->irq field and flag RTDM_IRQTYPE_SHARED), it failed with EBUSY :
The IRQ line is already in use.

lspci before the insmod give that result :
I can see that IRQ for thoses devices are 11 and 11

04:08.0 Class 0680: Device 10b5:9080 (rev 03)
    Subsystem: Device 10b5:2402
    Flags: bus master, medium devsel, latency 64, IRQ 11
    Memory at e0801000 (32-bit, non-prefetchable) [size=256]
    I/O ports at d000 [size=256]
    Memory at e0800000 (32-bit, non-prefetchable) [size=256]

06:00.0 Class 0680: Device 10e3:0148 (rev 01)
    Subsystem: Device 1775:7866
    Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 11
    Memory at c0000000 (64-bit, non-prefetchable) [size=4K]
    Capabilities: [40] PCI-X non-bridge device

when I insmod the modules, the call to pci_enable_device print this for the
first device

pci 0000:05:00.0: using bridge 0000:00:1c.0 INT A to get IRQ 16
rtdm_tsi148 0000:06:00.0: PCI->APIC IRQ transform: INT A -> IRQ 16

and this for the second

rtdm_16aio 0000:02:08.0: using bridge 0000:01:00.0 INT A to get IRQ 16
rtdm_16aio 0000:02:08.0: PCI->APIC IRQ transform: INT A -> IRQ 16

If I understand, IRQ are remapped by APIC but sadly on the same IRQ again.

Is there any way to change affected IRQ lines ?
is it a hardware specific problem ?

The devices seem to not support MSI.
They seem to be unable to share interrupt too.

I run linux 3.16.7 with Xenomai 3 rc5

I'm not sure if it's a linux problem or xenomai specific ?

Thank You for your help.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Xenomai] RTDM PCI drivers IRQ line conflict
  2015-07-01 15:56 [Xenomai] RTDM PCI drivers IRQ line conflict Antoine Durand
@ 2015-07-01 16:02 ` Gilles Chanteperdrix
  2015-07-02  9:11   ` Antoine Durand
  0 siblings, 1 reply; 3+ messages in thread
From: Gilles Chanteperdrix @ 2015-07-01 16:02 UTC (permalink / raw)
  To: Antoine Durand; +Cc: xenomai

On Wed, Jul 01, 2015 at 05:56:25PM +0200, Antoine Durand wrote:
> Hi,
> 
> I've two PCI devices for which I'm making RTDM drivers.
> 
> I can load the first without any problem.
> 
> but when the second driver call rtdm_irq_request (passing the struct
> pci_dev->irq field and flag RTDM_IRQTYPE_SHARED), it failed with
> EBUSY :

That is a Xenomai configuration issue, you need to enable
CONFIG_XENO_OPT_SHIRQ if you want your RTDM drivers to share IRQs.

-- 
					    Gilles.
https://click-hack.org


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Xenomai] RTDM PCI drivers IRQ line conflict
  2015-07-01 16:02 ` Gilles Chanteperdrix
@ 2015-07-02  9:11   ` Antoine Durand
  0 siblings, 0 replies; 3+ messages in thread
From: Antoine Durand @ 2015-07-02  9:11 UTC (permalink / raw)
  To: Gilles Chanteperdrix; +Cc: xenomai

It's OK, thak you !

2015-07-01 18:02 GMT+02:00 Gilles Chanteperdrix <
gilles.chanteperdrix@xenomai.org>:

> On Wed, Jul 01, 2015 at 05:56:25PM +0200, Antoine Durand wrote:
> > Hi,
> >
> > I've two PCI devices for which I'm making RTDM drivers.
> >
> > I can load the first without any problem.
> >
> > but when the second driver call rtdm_irq_request (passing the struct
> > pci_dev->irq field and flag RTDM_IRQTYPE_SHARED), it failed with
> > EBUSY :
>
> That is a Xenomai configuration issue, you need to enable
> CONFIG_XENO_OPT_SHIRQ if you want your RTDM drivers to share IRQs.
>
> --
>                                             Gilles.
> https://click-hack.org
>

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-07-02  9:11 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-07-01 15:56 [Xenomai] RTDM PCI drivers IRQ line conflict Antoine Durand
2015-07-01 16:02 ` Gilles Chanteperdrix
2015-07-02  9:11   ` Antoine Durand

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.