OS abnormal after usb role switch(from gadget to host) on imx8qxp

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

OS abnormal after usb role switch(from gadget to host) on imx8qxp

1,649 Views
mashaofeng
Contributor III

dear expert :

   on imx8qxp platform ,we configure usbotg1 to OTG mode,we found that if we  switch usb role from gadget to host , the os will be abnormal ;

in most cases , it will show follow log repeatedly:

[ 1140.418947] Task dump for CPU 2:

[ 1140.422180] swapper/2       R  running task        0     0      1 0x0000002a

[ 1140.429233] Call trace:

[ 1140.431695]  __switch_to+0xf8/0x160

[ 1140.435192]  __cpu_online_mask+0x0/0x20

[ 1203.403893] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:

[ 1203.410014] rcu:    2-...0: (1 GPs behind) idle=6aa/0/0x1 softirq=172961/172962 fqs=20045

[ 1203.418110]     (detected by 3, t=84016 jiffies, g=499141, q=41071)

[ 1203.424120] Task dump for CPU 2:

[ 1203.427353] swapper/2       R  running task        0     0      1 0x0000002a

 

and the OS may be hung up and serial port can not input;

 

in other cases , different driver communication error will be printed :

root@imx8qxpc0mek:~# [   63.230102] imx-scu scu: RPC send msg timeout

[   63.234503] sdhc0_clk: clk unprepare failed -110

[   65.278105] fsl_lpspi 5a020000.spi: I/O Error in DMA TX

[   65.284636] spidev spi2.0: SPI transfer failed: -110

[   65.289759] spi_master spi2: failed to transfer one message from queue

 

and  the error : rcu_preempt detected stalls on CPUs/tasks  still be printed

 

 

0 Kudos
Reply
6 Replies

1,613 Views
mashaofeng
Contributor III

i trace the problem, it seems after cmd_reset send, the error will be occurred;

mashaofeng_0-1665213341092.png

 

0 Kudos
Reply

1,595 Views
AldoG
NXP TechSupport
NXP TechSupport

Hello,

Thank you for sharing more information, could you share the name of the dts that you're using?
Since the package you shared have many files in it.

Is there any steps you could provide to reproduce this on MEK?

Best regards,
Aldo.

0 Kudos
Reply

1,563 Views
mashaofeng
Contributor III

we use imx8x_mek.dtsi  ;

reproduce way : plug usb in to pc to enumerate RNDIS , later , plug out usb and usb will switch to gadget mode by hardware , then the issue will produce.

Tags (1)
0 Kudos
Reply

1,508 Views
AldoG
NXP TechSupport
NXP TechSupport

Hi,

Please do accept my delayed response, I had some problems with my setup.
I tried with MEK board on my side, unfortunately I have only B0 version so this may be tied to C0 version.

I do not see such issue when trying as you mentioned with default device tree, even trying latest BSP version.

Would it be possible to try with latest one (L5.15.52_2.1.0​) on your side and check if the issue persist?

Best regards,
Aldo.

0 Kudos
Reply

1,613 Views
mashaofeng
Contributor III

software is imx8qxpc0mek and hardware is custom design;

we use linux imx8qxp_L5.4.24 branch;

and i upload the device tree in attachment freescale-5.4.24.7z ,please check it;

thanks

0 Kudos
Reply

1,622 Views
AldoG
NXP TechSupport
NXP TechSupport

Hello,

Could you  share if you're using a custom design or a MEK board?
Which BSP version are you working with?
Also, if possible could you share your device tree bindings?

Best regards,
Aldo.

0 Kudos
Reply