EXT_IRQ0 @ MPC834x

Andre Schwarz andre.schwarz at matrix-vision.de
Wed Apr 30 02:44:09 EST 2008


All,

actually I'm having trouble getting the IRQ0 work on a MPC8343 with
2.6.25-rc8.
There's an external PCI device connected to it ....


Regarding to the manual IRQ0 is somewhat special and has Vector 48 assigned.

Therefore my dts entry for this device looks like :

interrupt-map = <0x5800 0 0 1 &ipic 0x30 0x8
                                 ... >;

Having a look on virq mapping gives :

mvBL-M7> cat /sys/kernel/debug/powerpc/virq_mapping
virq   hwirq    chip name        host name
   16  0x0000e   IPIC            /soc at e0000000/pic at 700
   17  0x0000f   IPIC            /soc at e0000000/pic at 700
   18  0x00009   IPIC            /soc at e0000000/pic at 700
   20  0x00010   IPIC            /soc at e0000000/pic at 700
   32  0x00020   IPIC            /soc at e0000000/pic at 700
   33  0x00021   IPIC            /soc at e0000000/pic at 700
   34  0x00022   IPIC            /soc at e0000000/pic at 700
   38  0x00026   IPIC            /soc at e0000000/pic at 700
   48  0x00030   IPIC            /soc at e0000000/pic at 700


After loading the device driver (=mvbcdma) the irq shows up correctly.

mvBL-M7> cat /proc/interrupts
           CPU0
 16:        603   IPIC   Level     i2c-mpc
 17:          8   IPIC   Level     i2c-mpc
 18:        295   IPIC   Level     serial
 20:        341   IPIC   Level     mpc83xx_spi
 32:          2   IPIC   Level     enet_tx
 33:          3   IPIC   Level     enet_rx
 34:          0   IPIC   Level     enet_error
 38:          0   IPIC   Level     ehci_hcd:usb1
 48:          0   IPIC   Level     mvbcdma0
BAD:          0


As soon as the device generates an interrupt I get :

irq 48: nobody cared (try booting with the "irqpoll" option)
handlers:
[<d18d66e8>] (mvbcdma_irq+0x0/0x180 [mvbcdma])
Disabling IRQ #48


The handler _would_ have returned IRQ_RETVAL(1).
Obviously the handler isn't called at all - but why ?


Using "nm" on the kernel module gives :

000006e8 t mvbcdma_irq

->offset 0x6e8 inside module matches with output regarding handler.


Any help is welcome !


regards,
Andre Schwarz












MATRIX VISION GmbH, Talstraße 16, DE-71570 Oppenweiler  - Registergericht: Amtsgericht Stuttgart, HRB 271090
Geschäftsführer: Gerhard Thullner, Werner Armingeon, Uwe Furtner



More information about the Linuxppc-dev mailing list