irq_create_fwspec_mapping() in 4.8-rc2
Andras Szemzo
szemzo.andras at gmail.com
Thu Sep 1 23:51:39 PDT 2016
Hi,
I try to use 4.8-rc2 on my armv7m board, and I have a problem with GPIO IRQ.
In my device-tree, I define the ethernet PHY IRQ like this:
pioC: gpio at 0x400e1200 {
compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio";
reg = <0x400e1200 0x200>;
interrupts = <12>;
#gpio-cells = <2>;
gpio-controller;
interrupt-controller;
#interrupt-cells = <2>;
clocks = <&pioC_clk>;
};
...
ethernet-phy at 1 {
reg = <1>;
interrupt-parent = <&pioC>;
interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
reset-gpios = <&pioC 10 GPIO_ACTIVE_HIGH>;
};
with the 4.8-rc2 kernel at boot it fails with error:
irq: type mismatch, failed to map hwirq-11 for /soc/pinctrl at 0x400e0e00/gpio at 0x400e1200!
This error comes from kernel/irq/irq_domain.c, irq_create_fwspec_mapping().
My quick hack was to replace this function from 4.6.0 (where with the same device-tree, same kernel config it works)
and everything works as expected.
Maybe this hack is hiding a problem from somewhere else, but I can’t figure out what I missed.
Thanks,
Andras
More information about the linux-arm-kernel
mailing list