All of lore.kernel.org
 help / color / mirror / Atom feed
* aardvark pci controller ath9k request_irq fail
@ 2017-09-22 11:24 Marek Behún
  2017-09-22 13:35 ` Bjorn Helgaas
  0 siblings, 1 reply; 4+ messages in thread
From: Marek Behún @ 2017-09-22 11:24 UTC (permalink / raw)
  To: linux-pci

Hello,
we are developing a new board based on Marvell Armada 3720.
While testing the PCI-e slot, I have enountered this problem:

- lspci always correctly prints information about the PCIe card in the
  slot
- when a ath9k card is in the slot, ath9k fails to initialize with
     ath9k 0000:00:00.0: request_irq failed

  The irq number passed to the request_irq function is from the irq
  member of struct pci_dev:
     request_irq(pdev->irq, ath_isr, IRQF_SHARED, "ath9k", sc);

  this number (pdev->irq) is 255

  The request_irq function fails in request_threaded_irq on line:
     desc = irq_to_desc(irq);
  (desc is NULL and thus -EINVAL is returned.)

- what is strange is that another card, Intel Centrino Ultimate-N 6300
  with iwlwifi works.

- another card (ath10k driver) also does not work.

Is this a problem with the pci-aardvark driver for the Aardvark
controller?

Thank you.

Marek

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

* Re: aardvark pci controller ath9k request_irq fail
  2017-09-22 11:24 aardvark pci controller ath9k request_irq fail Marek Behún
@ 2017-09-22 13:35 ` Bjorn Helgaas
  2017-09-22 13:44   ` Lorenzo Pieralisi
  0 siblings, 1 reply; 4+ messages in thread
From: Bjorn Helgaas @ 2017-09-22 13:35 UTC (permalink / raw)
  To: Marek Behún; +Cc: linux-pci, Thomas Petazzoni, Lorenzo Pieralisi

[+cc Thomas (aardvark maintainer), Lorenzo]

On Fri, Sep 22, 2017 at 01:24:44PM +0200, Marek Behún wrote:
> Hello,
> we are developing a new board based on Marvell Armada 3720.
> While testing the PCI-e slot, I have enountered this problem:
> 
> - lspci always correctly prints information about the PCIe card in the
>   slot
> - when a ath9k card is in the slot, ath9k fails to initialize with
>      ath9k 0000:00:00.0: request_irq failed
> 
>   The irq number passed to the request_irq function is from the irq
>   member of struct pci_dev:
>      request_irq(pdev->irq, ath_isr, IRQF_SHARED, "ath9k", sc);
> 
>   this number (pdev->irq) is 255
> 
>   The request_irq function fails in request_threaded_irq on line:
>      desc = irq_to_desc(irq);
>   (desc is NULL and thus -EINVAL is returned.)
> 
> - what is strange is that another card, Intel Centrino Ultimate-N 6300
>   with iwlwifi works.
> 
> - another card (ath10k driver) also does not work.
> 
> Is this a problem with the pci-aardvark driver for the Aardvark
> controller?

What kernel version are you using?  Has any kernel version worked
correctly?  There have been significant IRQ mapping changes in the
last couple releases.

dev->irq should be assigned in pci_assign_irq().  Can you turn on the
debug there (and maybe add more) and collect the complete dmesg log?

Bjorn

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

* Re: aardvark pci controller ath9k request_irq fail
  2017-09-22 13:35 ` Bjorn Helgaas
@ 2017-09-22 13:44   ` Lorenzo Pieralisi
  2017-09-25  8:47     ` Marek Behún
  0 siblings, 1 reply; 4+ messages in thread
From: Lorenzo Pieralisi @ 2017-09-22 13:44 UTC (permalink / raw)
  To: Bjorn Helgaas; +Cc: Marek Behún, linux-pci, Thomas Petazzoni

On Fri, Sep 22, 2017 at 08:35:15AM -0500, Bjorn Helgaas wrote:
> [+cc Thomas (aardvark maintainer), Lorenzo]
> 
> On Fri, Sep 22, 2017 at 01:24:44PM +0200, Marek Behún wrote:
> > Hello,
> > we are developing a new board based on Marvell Armada 3720.
> > While testing the PCI-e slot, I have enountered this problem:
> > 
> > - lspci always correctly prints information about the PCIe card in the
> >   slot
> > - when a ath9k card is in the slot, ath9k fails to initialize with
> >      ath9k 0000:00:00.0: request_irq failed
> > 
> >   The irq number passed to the request_irq function is from the irq
> >   member of struct pci_dev:
> >      request_irq(pdev->irq, ath_isr, IRQF_SHARED, "ath9k", sc);
> > 
> >   this number (pdev->irq) is 255
> > 
> >   The request_irq function fails in request_threaded_irq on line:
> >      desc = irq_to_desc(irq);
> >   (desc is NULL and thus -EINVAL is returned.)
> > 
> > - what is strange is that another card, Intel Centrino Ultimate-N 6300
> >   with iwlwifi works.
> > 
> > - another card (ath10k driver) also does not work.
> > 
> > Is this a problem with the pci-aardvark driver for the Aardvark
> > controller?
> 
> What kernel version are you using?  Has any kernel version worked
> correctly?  There have been significant IRQ mapping changes in the
> last couple releases.
> 
> dev->irq should be assigned in pci_assign_irq().  Can you turn on the
> debug there (and maybe add more) and collect the complete dmesg log?

It is very likely this will fix it:

https://patchwork.ozlabs.org/patch/811432/

Apologies to you and Thomas again - I went through a number of changes
and mechanically missed pci-aardvark.

Thanks,
Lorenzo

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

* Re: aardvark pci controller ath9k request_irq fail
  2017-09-22 13:44   ` Lorenzo Pieralisi
@ 2017-09-25  8:47     ` Marek Behún
  0 siblings, 0 replies; 4+ messages in thread
From: Marek Behún @ 2017-09-25  8:47 UTC (permalink / raw)
  To: Lorenzo Pieralisi; +Cc: Bjorn Helgaas, linux-pci, Thomas Petazzoni

Hello guys, the patch helped. Thanks :)

Marek

On Fri, 22 Sep 2017 14:44:01 +0100
Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> wrote:

> On Fri, Sep 22, 2017 at 08:35:15AM -0500, Bjorn Helgaas wrote:
> > [+cc Thomas (aardvark maintainer), Lorenzo]
> >=20
> > On Fri, Sep 22, 2017 at 01:24:44PM +0200, Marek Beh=FAn wrote: =20
> > > Hello,
> > > we are developing a new board based on Marvell Armada 3720.
> > > While testing the PCI-e slot, I have enountered this problem:
> > >=20
> > > - lspci always correctly prints information about the PCIe card
> > > in the slot
> > > - when a ath9k card is in the slot, ath9k fails to initialize with
> > >      ath9k 0000:00:00.0: request_irq failed
> > >=20
> > >   The irq number passed to the request_irq function is from the
> > > irq member of struct pci_dev:
> > >      request_irq(pdev->irq, ath_isr, IRQF_SHARED, "ath9k", sc);
> > >=20
> > >   this number (pdev->irq) is 255
> > >=20
> > >   The request_irq function fails in request_threaded_irq on line:
> > >      desc =3D irq_to_desc(irq);
> > >   (desc is NULL and thus -EINVAL is returned.)
> > >=20
> > > - what is strange is that another card, Intel Centrino Ultimate-N
> > > 6300 with iwlwifi works.
> > >=20
> > > - another card (ath10k driver) also does not work.
> > >=20
> > > Is this a problem with the pci-aardvark driver for the Aardvark
> > > controller? =20
> >=20
> > What kernel version are you using?  Has any kernel version worked
> > correctly?  There have been significant IRQ mapping changes in the
> > last couple releases.
> >=20
> > dev->irq should be assigned in pci_assign_irq().  Can you turn on
> > the debug there (and maybe add more) and collect the complete dmesg
> > log? =20
>=20
> It is very likely this will fix it:
>=20
> https://patchwork.ozlabs.org/patch/811432/
>=20
> Apologies to you and Thomas again - I went through a number of changes
> and mechanically missed pci-aardvark.
>=20
> Thanks,
> Lorenzo

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

end of thread, other threads:[~2017-09-25  8:47 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-22 11:24 aardvark pci controller ath9k request_irq fail Marek Behún
2017-09-22 13:35 ` Bjorn Helgaas
2017-09-22 13:44   ` Lorenzo Pieralisi
2017-09-25  8:47     ` Marek Behún

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.