Programmatically initiate WPxxxx HSIC enumeration process

Does anyone have a method to programmatically initiate the WPxxxx HSIC enumeration process without doing a WPxxxx reset?

My application puts the attached hub IC USB3503 into low power standby mode when not required. This causes the WPxxxx HSIC to go into an idle state which only seems to be recoverable by a WPxxxx reset.

Thank you for any solutions or hints.

does this help?

jyijyi,

Thank you for the information. Another good link is https://www.kernel.org/doc/Documentation/usb/authorization.txt

I tested the authorization commands without success.

Unfortunately, if the USB3503 Hub is not powered up or in standby mode during WPxxxx reboot process then the USB3503 hub is not recognized and the usb1 directory is not created in /sys/devices/platform/msm_hsic_host/. See below

root@swi-mdm9x15:~# dmesg | grep hsic
[ 2.398290] msm_hsic_host msm_hsic_host: Qualcomm EHCI Host Controller using HSIC
[ 2.404974] msm_hsic_host msm_hsic_host: new USB bus registered, assigned bus number 1
[ 2.433328] msm_hsic_host msm_hsic_host: ehci_hsic_reset:No device is present on any HSIC port
[ 2.440927] msm_hsic_host msm_hsic_host: can’t setup: -6
[ 2.446268] msm_hsic_host msm_hsic_host: USB bus 1 deregistered
[ 2.452128] msm_hsic_host msm_hsic_host: unable to register HCD

root@swi-mdm9x15:~# ls /sys/devices/platform/msm_hsic_host/
modalias pools power subsystem uevent

Is there a WPxxxx HSIC host startup script that can be programatically run that will cause the WPxxxx HSIC to be restarted and enumerate the hub?

Thank you for your assistance it is greatly appreciated.

you mean you have tried the followings?

echo 0 > /sys/devices/7c00000.hsic_host/usb1/authorized
power up the USB3503
echo 1 > /sys/devices/7c00000.hsic_host/usb1/authorized