DT problem - interrupts?
Tony Prisk
sentientnz at yahoo.co.nz
Wed Jul 25 11:19:29 EDT 2012
Hopefully someone can think of something simple that I'm missing here because
it's got me a little baffled.
Trying to port the arch-vt8500 over to device tree, but I've run into a hiccup with the
first device that requires interrupts (EHCI + UHCI drivers).
Both these drivers work perfectly when passed as old-style platform_devices that are
setup in the board init. When they are initialised from a devicetree file, they both
initialize fine, but fail with error -32 trying to detect devices.
I'm sure the problem is with the irq initialization code, and to keep it simple i used
the old working irq code, and simply added an irqdomain with irq_domain_add_legacy.
Any ideas?
(Let me know if there is any more info that might clarify things).
Regards
Tony Prisk
----------
wm8650.dts <relevant parts>
intc0: interrupt-controller at d8140000 {
compatible="wm,intc";
interrupt-controller;
reg = <0xd8140000 0x10000>;
#interrupt-cells = <1>;
}
ehci at d8007900 {
compatible="wm,prizm-ehci";
reg = <0xd8007900 0x200>;
interrupt-parent = <&intc0>;
interrupts = <43>;
}
irq.c
/* interrupt controller has 64 irqs starting at 0 */
irq_domain_add_legacy(node, 64, 0, 0, &irq_simple_domain_ops, priv);
----------
More information about the linux-arm-kernel
mailing list