Hello,
I am working on IMX6 solo based platform. In the OTG driver provided as a part of 3.10.17 kernel, spurious interrupt issue observed.
The steps to reproduce this issue is as follows:
1. Connect a pen drive to the OTG port.
2. Change the role to host by using the following command: echo host > /sys/kernel/debug/ci_hdrc.0/role,
a spurious interrupt is observed.
The Log is as follows:
irq 75: nobody cared (try booting with the "irqpoll" option)
CPU: 0 PID: 476 Comm: sh Tainted: G W O 3.10.17-1.0.0_ga+g33597e3 #2
[<80013800>] (unwind_backtrace+0x0/0x134) from [<80011e80>] (show_stack+0x10/0x14)
[<80011e80>] (show_stack+0x10/0x14) from [<8007151c>] (__report_bad_irq.isra.6+0x24/0xf4)
[<8007151c>] (__report_bad_irq.isra.6+0x24/0xf4) from [<800717cc>] (note_interrupt+0x178/0x230)
[<800717cc>] (note_interrupt+0x178/0x230) from [<8006fa38>] (handle_irq_event_percpu+0x10c/0x190)
[<8006fa38>] (handle_irq_event_percpu+0x10c/0x190) from [<8006fb20>] (handle_irq_event+0x64/0x94)
[<8006fb20>] (handle_irq_event+0x64/0x94) from [<80072550>] (handle_fasteoi_irq+0x88/0x174)
[<80072550>] (handle_fasteoi_irq+0x88/0x174) from [<8006f170>] (generic_handle_irq+0x2c/0x3c)
[<8006f170>] (generic_handle_irq+0x2c/0x3c) from [<8000f4a4>] (handle_IRQ+0x38/0x84)
[<8000f4a4>] (handle_IRQ+0x38/0x84) from [<8000852c>] (gic_handle_irq+0x2c/0x54)
[<8000852c>] (gic_handle_irq+0x2c/0x54) from [<8000e800>] (__irq_svc+0x40/0x70)
Exception stack(0xa82cbd40 to 0xa82cbd88)
bd40: 00000001 00007bcb 00000100 a82ca000 00000040 00000036 00000000 80e4e3c0
bd60: a82ca000 00000002 00000000 00000000 80e4e380 a82cbd88 00000000 8002b8f0
bd80: 20000113 ffffffff
[<8000e800>] (__irq_svc+0x40/0x70) from [<8002b8f0>] (__do_softirq+0xbc/0x1ec)
[<8002b8f0>] (__do_softirq+0xbc/0x1ec) from [<8002bab8>] (do_softirq+0x4c/0x54)
[<8002bab8>] (do_softirq+0x4c/0x54) from [<8002bd10>] (irq_exit+0x58/0x90)
[<8002bd10>] (irq_exit+0x58/0x90) from [<8000f4a8>] (handle_IRQ+0x3c/0x84)
[<8000f4a8>] (handle_IRQ+0x3c/0x84) from [<8000852c>] (gic_handle_irq+0x2c/0x54)
[<8000852c>] (gic_handle_irq+0x2c/0x54) from [<8000e800>] (__irq_svc+0x40/0x70)
Exception stack(0xa82cbe10 to 0xa82cbe58)
be00: a8a7ce10 80dedd50 a82cbe68 000001a4
be20: 80dedd50 a8a7ce10 c097a140 00000198 00010005 00000002 00000000 00000000
be40: 00000000 a82cbe58 80331b14 8026d5b0 20000113 ffffffff
[<8000e800>] (__irq_svc+0x40/0x70) from [<8026d5b0>] (device_create_file+0x18/0x90)
[<8026d5b0>] (device_create_file+0x18/0x90) from [<80331b14>] (ehci_run+0x1e0/0x22c)
[<80331b14>] (ehci_run+0x1e0/0x22c) from [<80321718>] (usb_add_hcd+0x234/0x7b4)
[<80321718>] (usb_add_hcd+0x234/0x7b4) from [<803408f4>] (host_start+0xd0/0x1a8)
[<803408f4>] (host_start+0xd0/0x1a8) from [<80340e10>] (ci_role_write+0xbc/0x138)
[<80340e10>] (ci_role_write+0xbc/0x138) from [<800c2be4>] (vfs_write+0xb4/0x194)
[<800c2be4>] (vfs_write+0xb4/0x194) from [<800c315c>] (SyS_write+0x3c/0x78)
[<800c315c>] (SyS_write+0x3c/0x78) from [<8000ec00>] (ret_fast_syscall+0x0/0x30)
handlers:
[<8033ba38>] ci_irq
Disabling IRQ #75
What is the possible solution for this issue ? Is there any fix ?
Thanks,
Chaitanya
We are discusing internally your case, once we have an update your FAE will provide the update.
Hello Jamesbone,
Facing similar issue as above:
Details:
IMX6DL
kernel version: 3.10.53
On USB OTG role switch IRQ75 crash issue.
Could you please suggest possible solution for this issue.
With Regards,
Amit
Hey Dear amit,
i am facing the same crash,
did u solve this problem?and how? could u tell me please?