This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

mux: Failed to setup hwmod io irq -22

Other Parts Discussed in Thread: AM3352

Hello,

i got the "mux: Failed to setup hwmod io irq -22" error when booting my custom board based on ARM AM3352.

As any one any idea how i can know witch IO it is ?

thanks

regards

  • This is generated from inside omap_mux_late_init() function in <linux_dir>/arch/arm/mach-omap2/mux.c:

    	ret = request_irq(omap_prcm_event_to_irq("io"),
    		omap_hwmod_mux_handle_irq, IRQF_SHARED | IRQF_NO_SUSPEND,
    			"hwmod_io", omap_mux_late_init);
    
    	if (ret)
    		pr_warning("mux: Failed to setup hwmod io irq %d\n", ret);

    You can print the IRQ number returned from omap_prcm_event_to_irq("io").

    Error -22 is "Invalid argument". My suggestion to debug this issue is to put prints inside request_threaded_irq() function to see why the -EINVAL error is returned. Of course you should put the condition to only print these messages if the IRQ number is the same as what is returned from omap_prcm_event_to_irq("io").

    Best regards,
    Miroslav

  • Hello

    thanks for reply

    omap_prcm_event_to_irq returns -2   ; where can i find the request_threaded_irq function ?

    Best regards

  • Trichet,

    Please use a source code editor with an indexer for viewing/editing the kernel source code. It would be much easier for you to trace where a certain function resides.

    The request_threaded_irq() function is inside <linux_dir>/kernel/irq/manage.c.

    Best regards,
    Miroslav