i.MX6Q PCIe error

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.MX6Q PCIe error

Jump to solution
709 Views
jimmyli
Contributor IV

Hi,

      Our customer is debugging PCIe communitcation with other device, it is a problem happened that we can't solve the problem.

      Hope you can help us to solve it !!!

      Thanks very much.

 

      --Platform: MCIMX6Q-SDB

     --Linux ver:      L4.1.15    dtb: imx6q-sabresd.dtb

     --Question:

        PCIe device can be recognized, and probes our PCIe driver. But the problem happens when PCIe driver request MSI interrupt from pci_msi_setup_msi_irqs, return -28.  Our PCIe device needs 15 interrupts.

 

0 Kudos
1 Solution
699 Views
weidong_sun
NXP TechSupport
NXP TechSupport

Hi Jimmy,

 you need to select MSI in kernel.

See drivers/pci/Kconfig

.......

config PCI_MSI
bool "Message Signaled Interrupts (MSI and MSI-X)"
depends on PCI
select GENERIC_MSI_IRQ
help
This allows device drivers to enable MSI (Message Signaled
Interrupts). Message Signaled Interrupts enable a device to
generate an interrupt using an inbound Memory Write on its
PCI bus instead of asserting a device IRQ pin.

Use of PCI MSI interrupts can be disabled at kernel boot time
by using the 'pci=nomsi' option. This disables MSI for the
entire system.

If you don't know what to do here, say Y.

config PCI_MSI_IRQ_DOMAIN
bool
depends on PCI_MSI
select GENERIC_MSI_IRQ_DOMAIN

......

Have a nice day!

Weidong

View solution in original post

0 Kudos
2 Replies
700 Views
weidong_sun
NXP TechSupport
NXP TechSupport

Hi Jimmy,

 you need to select MSI in kernel.

See drivers/pci/Kconfig

.......

config PCI_MSI
bool "Message Signaled Interrupts (MSI and MSI-X)"
depends on PCI
select GENERIC_MSI_IRQ
help
This allows device drivers to enable MSI (Message Signaled
Interrupts). Message Signaled Interrupts enable a device to
generate an interrupt using an inbound Memory Write on its
PCI bus instead of asserting a device IRQ pin.

Use of PCI MSI interrupts can be disabled at kernel boot time
by using the 'pci=nomsi' option. This disables MSI for the
entire system.

If you don't know what to do here, say Y.

config PCI_MSI_IRQ_DOMAIN
bool
depends on PCI_MSI
select GENERIC_MSI_IRQ_DOMAIN

......

Have a nice day!

Weidong

0 Kudos
695 Views
jimmyli
Contributor IV

Hi Weidong,

      Y.

      I don't know how to fix the problem. Hope you can show me how to fix it.

      Thanks very much.

0 Kudos