EM05 USB suspend behaviour

Hi there,

We are using the EM05-E USB LTE module on a Linux-based system. We have applied all the required kernel driver changes from the UMTS/LTE/5G Linux USB Driver User Guide, including the power-management settings

When the module is idle, USB autosuspend works, but after ~60–61 seconds the module wakes from suspend, stays active for about 2 seconds, and then suspends again. This cycle repeats continuously, even with no SIM inserted and no activity on the module.

Can anyone help me to understand this behaviour?

Attached are the relevant kernel logs.
(Note: usb 1-1.2 corresponds to the Quectel device.)

[  144.091385] hub 1-1:1.0: hub_suspend
[  144.115341] usb 1-1: usb auto-suspend, wakeup 1
[  144.139314] hub 1-0:1.0: hub_suspend

root@imx8mp-lpddr4-evk:~# [  206.134363] hub 1-0:1.0: hub_resume
[  206.138533] usb usb1-port1: status 0507 change 0000
[  206.144521] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0000
[  206.192195] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0002
[  206.198016] usb 1-1: usb auto-resume
[  206.267697] usb 1-1: Waited 0ms for CONNECT
[  206.272121] usb 1-1: finish resume
[  206.276301] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0000
[  206.282270] hub 1-1:1.0: hub_resume
[  206.286839] usb 1-1-port2: status 0507 change 0000
[  206.292922] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0000
[  206.298763] usb 1-1.2: usb auto-resume
[  206.367912] usb 1-1.2: Waited 0ms for CONNECT
[  206.372622] usb 1-1.2: finish resume
[  208.548584] usb 1-1.2: usb auto-suspend, wakeup 1
[  208.571449] hub 1-1:1.0: hub_suspend
[  208.596021] usb 1-1: usb auto-suspend, wakeup 1
[  208.620018] hub 1-0:1.0: hub_suspend
root@imx8mp-lpddr4-evk:~# [  269.960337] hub 1-0:1.0: hub_resume
[  269.964453] usb usb1-port1: status 0507 change 0000
[  269.970450] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0000
[  270.016292] usb 1-1: usb auto-resume
[  270.020142] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0002
[  270.087923] usb 1-1: Waited 0ms for CONNECT
[  270.092370] usb 1-1: finish resume
[  270.096607] hub 1-1:1.0: hub_resume
[  270.101260] usb 1-1-port2: status 0507 change 0000
[  270.107782] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0000
[  270.113748] usb 1-1.2: usb auto-resume
[  270.147173] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0004
[  270.187155] usb 1-1.2: Waited 0ms for CONNECT
[  270.191754] usb 1-1.2: finish resume
[  272.448724] usb 1-1.2: usb auto-suspend, wakeup 1
[  272.471425] hub 1-1:1.0: hub_suspend
[  272.495981] usb 1-1: usb auto-suspend, wakeup 1
[  272.520122] hub 1-0:1.0: hub_suspend
root@imx8mp-lpddr4-evk:~# 
root@imx8mp-lpddr4-evk:~# [  334.392146] hub 1-0:1.0: hub_resume
[  334.396331] usb usb1-port1: status 0507 change 0000
[  334.402281] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0000
[  334.448166] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0002
[  334.454007] usb 1-1: usb auto-resume
[  334.523701] usb 1-1: Waited 0ms for CONNECT
[  334.528117] usb 1-1: finish resume
[  334.532332] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0000
[  334.538314] hub 1-1:1.0: hub_resume
[  334.542836] usb 1-1-port2: status 0507 change 0000
[  334.549126] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0000
[  334.555599] usb 1-1.2: usb auto-resume
[  334.627701] usb 1-1.2: Waited 0ms for CONNECT
[  334.632305] usb 1-1.2: finish resume
[  337.150399] usb 1-1.2: usb auto-suspend, wakeup 1
[  337.175988] hub 1-1:1.0: hub_suspend
[  337.199991] usb 1-1: usb auto-suspend, wakeup 1
[  337.223525] hub 1-0:1.0: hub_suspend
[  399.240665] hub 1-0:1.0: hub_resume
[  399.244748] usb usb1-port1: status 0507 change 0000
[  399.250809] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0000
[  399.296276] usb 1-1: usb auto-resume
[  399.300120] hub 1-0:1.0: state 7 ports 1 chg 0000 evt 0002
[  399.367708] usb 1-1: Waited 0ms for CONNECT
[  399.372110] usb 1-1: finish resume
[  399.376187] hub 1-1:1.0: hub_resume
[  399.380914] usb 1-1-port2: status 0507 change 0000
[  399.387493] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0000
[  399.393340] usb 1-1.2: usb auto-resume
[  399.427109] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0004
[  399.463743] usb 1-1.2: Waited 0ms for CONNECT
[  399.468294] usb 1-1.2: finish resume
[  401.928533] usb 1-1.2: usb auto-suspend, wakeup 1
[  401.951429] hub 1-1:1.0: hub_suspend
[  401.976282] usb 1-1: usb auto-suspend, wakeup 1
[  402.000404] hub 1-0:1.0: hub_suspend

but we didn’t see the USB disconnected.

This is the USB autosuspend feature. If you do not need it, you can disable the usb autosuspend.

Hi @Bean.Wang-Q ,

This is the USB autosuspend feature. If you do not need it, you can disable the usb autosuspend.
— That I understand, but why its coming out of suspend at every 60 seconds without doing any activity. Is this expected behaviour?

It looks like it’s performing as expected. Any abnormal behavior on your end?