I'm trying to get PCI interrupts to work. I've looked at this web page:
http://processors.wiki.ti.com/index.php/PCI_Interrupt_Handling_on_DM6467/DM6467T_PCI_Host
There is a bug in this line:
set_irq_type(gpio_to_irq(48), IRQ_TYPE_EDGE_RISING);
I think it should be gpio_to_irq(0), or just the plain literal 48
(which I'm using).
Also, one apparently needs to configure the GPIO register SET_FAL_TRIG01 so that an interrupt will be generated; this is not mentioned anywhere on the web page. After doing this I can see the interrupt count increase to a value greater than zero in /proc/interrupts if I manually short-circuit the pulled-up GPIO0 to ground; the PCI bridge is not yet generating interrupts by itself, but this could be a separate problem.
My question: is this appropriate for PCI interrupts, which are level-based? There's apparently no support for level-based interrupts in the GPIO peripheral, so I'm worried that there will be lost
interrupts or other problems.