Hi Marc, I get the following warning on our Vybrid based Colibri VF50 module: [ 0.147674] irq: no irq domain found for /soc/aips-bus@40000000/gpio@4004a000 !
The device tree arch/arm/boot/dts/vf500-colibri.dtsi uses the following interrupt specification in a touchscreen node which seems to trigger the issue: interrupt-parent = <&gpio0>; interrupts = <8 IRQ_TYPE_LEVEL_LOW>; We use other GPIO interrupts, but I guess it is a matter of initialization order, and the above specification seems to be parsed before the GPIO interrupt-controller gets created...? It seems that Rob Herring addressed a similar issue a while ago in 9ec36ca ("of/irq: do irq resolution in platform_get_irq") Is this problem known? Currently, the device does not get any interrupts. The interrupt seems to be requested successfully at probe time later, so I am not sure if the not working device is really related to the message above.... This is a stack trace when I add a WARN_ON(1) in irq_create_fwspec_mapping: [ 0.147674] irq: no irq domain found for /soc/aips-bus@40000000/gpio@4004a000 ! [ 0.147823] ------------[ cut here ]------------ [ 0.147941] WARNING: CPU: 0 PID: 1 at kernel/irq/irqdomain.c:584 irq_create_fwspec_mapping+0xf0/0x1e4() [ 0.148056] Modules linked in: [ 0.148142] CPU: 0 PID: 1 Comm: swapper Not tainted 4.4.0-00070-g3690255-dirty #764 [ 0.148246] Hardware name: Freescale Vybrid VF5xx/VF6xx (Device Tree) [ 0.148311] Backtrace: [ 0.148416] [<80013498>] (dump_backtrace) from [<80013690>] (show_stack+0x18/0x1c) [ 0.148521] r7:800539f4 r6:00000248 r5:00000009 r4:00000000 [ 0.148646] [<80013678>] (show_stack) from [<8029d070>] (dump_stack+0x24/0x28) [ 0.148782] [<8029d04c>] (dump_stack) from [<800219a4>] (warn_slowpath_common+0x88/0xb4) [ 0.148916] [<8002191c>] (warn_slowpath_common) from [<80021a74>] (warn_slowpath_null+0x24/0x2c) [ 0.149021] r8:00000000 r7:87cf0f88 r6:87cf0f88 r5:00000000 r4:87843ca8 [ 0.149158] [<80021a50>] (warn_slowpath_null) from [<800539f4>] (irq_create_fwspec_mapping+0xf0/0x1e4) [ 0.149294] [<80053904>] (irq_create_fwspec_mapping) from [<80053b44>] (irq_create_of_mapping+0x5c/0x64) [ 0.149400] r6:87cf0f88 r5:878bb7c0 r4:00000000 [ 0.149508] [<80053ae8>] (irq_create_of_mapping) from [<8045e934>] (irq_of_parse_and_map+0x2c/0x34) [ 0.149633] [<8045e908>] (irq_of_parse_and_map) from [<8045e95c>] (of_irq_to_resource+0x20/0xc4) [ 0.149755] [<8045e93c>] (of_irq_to_resource) from [<8045ea44>] (of_irq_to_resource_table+0x44/0x54) [ 0.149859] r8:00000001 r7:00000001 r6:87cf0f88 r5:878bb7dc r4:00000000 [ 0.149990] [<8045ea00>] (of_irq_to_resource_table) from [<8045c5b0>] (of_device_alloc+0x114/0x184) [ 0.150097] r7:00000000 r6:878be800 r5:87cf0f88 r4:00000000 [ 0.150339] [<8045c49c>] (of_device_alloc) from [<8045c678>] (of_platform_device_create_pdata+0x58/0xd4) [ 0.150457] r10:00000000 r9:00000000 r8:80650628 r7:00000000 r6:00000000 r5:87cf0f88 [ 0.150600] r4:00000000 [ 0.150688] [<8045c620>] (of_platform_device_create_pdata) from [<8045c800>] (of_platform_bus_create+0xf0/0x194) [ 0.150796] r7:00000001 r6:00000000 r5:87cf0f88 r4:00000000 [ 0.150912] [<8045c710>] (of_platform_bus_create) from [<8045c9e0>] (of_platform_populate+0x64/0xc0) [ 0.151016] r10:00000000 r9:00000001 r8:00000000 r7:00000000 r6:80650628 r5:87ce34f4 [ 0.151152] r4:87cf0f88 [ 0.151244] [<8045c97c>] (of_platform_populate) from [<80806fa8>] (vf610_init_machine+0x24/0x2c) [ 0.151352] r9:807ff5ec r8:000000b0 r7:87896600 r6:80840420 r5:80801a48 r4:80840420 [ 0.151515] [<80806f84>] (vf610_init_machine) from [<80801a70>] (customize_machine+0x28/0x48) [ 0.151640] [<80801a48>] (customize_machine) from [<800095fc>] (do_one_initcall+0x98/0x1e0) [ 0.151763] [<80009564>] (do_one_initcall) from [<807ffe34>] (kernel_init_freeable+0x13c/0x1e0) [ 0.151867] r10:8082b824 r9:807ff5ec r8:000000b0 r7:8086e440 r6:8086e440 r5:00000003 [ 0.152004] r4:80838704 [ 0.152091] [<807ffcf8>] (kernel_init_freeable) from [<805ee93c>] (kernel_init+0x18/0xf0) [ 0.152197] r10:00000000 r9:00000000 r8:00000000 r7:00000000 r6:00000000 r5:805ee924 [ 0.152333] r4:8086e440 [ 0.152424] [<805ee924>] (kernel_init) from [<8000f878>] (ret_from_fork+0x14/0x3c) [ 0.152526] r5:805ee924 r4:00000000 [ 0.152670] ---[ end trace c2d84d5af0139987 ]--- -- Stefan