So setzen Sie das USB-Gerät nach der selektiven Suspend-Konfiguration im Ubuntu-Host fort

So setzen Sie das USB-Gerät nach der selektiven Suspend-Konfiguration im Ubuntu-Host fort

Ich habe ein Linux-basiertes Entwicklungsboard, auf dem der DWC3-USB-Controller-Treiber vorhanden ist. Ich habe Link Power Management (L2-Status) im USB-Treiber implementiert. Ubuntu ist der Host, an den mein Entwicklungsboard über USB angeschlossen ist.

Ich muss einen Regressionstest des USB-Suspend-Resume mithilfe eines Shell-Skripts durchführen. Ich habe es geschafft, einen Teil davon zu schreiben,

**usb suspend-resume.sh**

path=1-10
echo auto > /sys/bus/usb/drivers/usb/$path/power/control 
echo 10 > /sys/bus/usb/drivers/usb/$path/power/autosuspend

sleep 10

iteration="10"
count="0"

while [ $count -lt $iteration ]
do
    rs=$(cat /sys/bus/usb/drivers/usb/$path/power/runtime_status)

    if [ "$rs" = "suspended" ]  
    then    
        echo usb is suspended
        sleep 5     
        count=$((count+1))
    fi
done

Geräte unter Ubuntu 14.04: /dev/ttyACM0 /dev/ttyACM1 /dev/ttyACM2 /dev/ttyACM3

Das obige Skript konnte nur einen Suspend-Vorgang (alle 10 Sekunden) durchführen, aber ich kann nicht weitermachen und das Gerät wieder aktivieren.

Antwort1

So setzen Sie das angehaltene Gerät fort

echo on > /sys/bus/usb/devices/$path/power/control

Dadurch sollte das angehaltene Gerät aktiviert werden. Sie können den Status des Geräts überprüfen mit

cat /sys/bus/usb/devices/$path/power/runtime_status

verwandte Informationen