diff options
author | Oleksandr Suvorov <oleksandr.suvorov@toradex.com> | 2019-11-11 15:05:15 +0100 |
---|---|---|
committer | Oleksandr Suvorov <oleksandr.suvorov@toradex.com> | 2019-11-21 12:38:08 +0200 |
commit | 43c5dd2e251a348db7b2ee13ccb7574a03aeffe8 (patch) | |
tree | 8642a2b8764b7b5c1eab80f3d49709eb65eafb48 /arch/arm64/boot | |
parent | 55aa1f9f7925410d8affc13df4ba8ee350cfc063 (diff) |
ARM64: dts: apalis-imx8x: enable reset-on-resume for WiFi USB
USB WiFi soldered into Apalis iMX8X module and permamently connect to
usbotg3 via usb 3.0 hub. After system resuming from suspend, WiFi module
fails to communicate via USB interface:
-----------------------------------------------------------
[ 1550.425744] usb usb2: root hub lost power or was reset
[ 1551.756995] usb 2-1: reset SuperSpeed USB device number 2 using cdns-usb3
[ 1552.145771] usb 2-1.1: reset SuperSpeed USB device number 4 using cdns-usb3
[ 1552.196843] usb 2-1.1: PREP_CMD: device in suspended state
[ 1552.202412] usb 2-1.1: mwifiex_usb_disconnect: removing card
[ 1552.208209] usb 2-1.1: info: shutdown mwifiex...
[ 1552.213071] usb 2-1.1: PREP_CMD: device in suspended state
[ 1552.236771] usb 2-1.1: PREP_CMD: device in suspended state
[ 1552.661125] usb 2-1.1:1.0: rebind failed: -517
[ 1552.665648] usb 2-1.1:1.1: rebind failed: -517
[ 1552.670118] usb 2-1.1:1.2: rebind failed: -517
[ 1552.676051] PM: resume devices took 2.276 seconds
[ 1552.681128] OOM killer enabled.
[ 1552.684296] Restarting tasks ...
[ 1552.692860] usb 2-1.1: WLAN FW is active
[ 1552.693897] done.
[ 1552.702695] PM: suspend exit
...
[ 1562.764794] usb 2-1.1: mwifiex_cmd_timeout_func: Timeout cmd id = 0xa9, act = 0x0
[ 1562.772300] usb 2-1.1: num_data_h2c_failure = 0
[ 1562.776865] usb 2-1.1: num_cmd_h2c_failure = 0
[ 1562.781340] usb 2-1.1: is_cmd_timedout = 1
[ 1562.785462] usb 2-1.1: num_tx_timeout = 0
[ 1562.789492] usb 2-1.1: last_cmd_index = 1
[ 1562.793524] usb 2-1.1: last_cmd_id: 00 00 a9 00 00 00 00 00 00 00
[ 1562.799639] usb 2-1.1: last_cmd_act: 00 00 00 00 00 00 00 00 00 00
[ 1562.805842] usb 2-1.1: last_cmd_resp_index = 0
[ 1562.810308] usb 2-1.1: last_cmd_resp_id: 00 00 00 00 00 00 00 00 00 00
[ 1562.816857] usb 2-1.1: last_event_index = 0
[ 1562.821060] usb 2-1.1: last_event: 00 00 00 00 00 00 00 00 00 00
[ 1562.827091] usb 2-1.1: data_sent=0 cmd_sent=1
[ 1562.831470] usb 2-1.1: ps_mode=0 ps_state=0
[ 1562.835700] usb 2-1.1: info: _mwifiex_fw_dpc: unregister device
-----------------------------------------------------------
Enable reset-on-resume feature of usb phy-generic driver fixes this
issue.
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
Diffstat (limited to 'arch/arm64/boot')
-rw-r--r-- | arch/arm64/boot/dts/freescale/fsl-imx8qxp-apalis.dtsi | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/freescale/fsl-imx8qxp-apalis.dtsi b/arch/arm64/boot/dts/freescale/fsl-imx8qxp-apalis.dtsi index 3e932d9462c2..178ae5f017f5 100644 --- a/arch/arm64/boot/dts/freescale/fsl-imx8qxp-apalis.dtsi +++ b/arch/arm64/boot/dts/freescale/fsl-imx8qxp-apalis.dtsi @@ -1014,6 +1014,13 @@ }; }; +/* Manage on-module USB WiFi */ +&usbphynop1 { + status = "okay"; + reset-gpios = <&pcal6416_1 12 GPIO_ACTIVE_LOW>; + reset-on-resume; +}; + /* * Apalis USB 3.0 Host. Serves USB 3.0 4-port hub on module and * USB 3.0 ports on-board |