RE: dwc2: Regression on 96Boards Hikey due to enabling power down

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Mani,

We need some detailed information to perform debugging.

1. Could you please share the documentation of "96Boards HiKey" board, at least dwc core configuration parameters. Or dump of GHWCFG1-4.
2. Could you  please share with us full debug log of dwc2 loading and plug the USB device.
3. From short debug log seen that Host exited from hibernation after USB device plugged to the port. Do you mean that enumeration process didn't start? If not, could you please dump registers after "dwc2 f72c0000.usb: Host hibernation restore complete"
4. In which mode had the dwc2 been built. In host only mode or DRD mode?
5. And you mention that USB controller's DP/DM out is connected to a switch which switches between a USB type C port and a HUB (USB2513B). Is the device connected to USB type C port or to HUB (USB2513B) ? Switching connection done before dwc2 load or after?

Looking forward to your reply.

Regards,
Artur


-----Original Message-----
From: Manivannan Sadhasivam [mailto:manivannan.sadhasivam@xxxxxxxxxx] 
Sent: Wednesday, May 16, 2018 17:23
To: linux-usb@xxxxxxxxxxxxxxx
Cc: John.Youn@xxxxxxxxxxxx; mvardan@xxxxxxxxxxxx; Arthur.Petrosyan@xxxxxxxxxxxx; Grigor.Tovmasyan@xxxxxxxxxxxx; felipe.balbi@xxxxxxxxxxxxxxx
Subject: usb: dwc2: Regression on 96Boards Hikey due to enabling power down

Hello,

Commit 03ea6d6e9e1ff1b0222eb723eee5990d3511cc4d introduced the powerdown feature in USB DWC2 driver which stops USB from working on 96Boards HiKey board.

During bootup, USB host controller goes into hibernation state and when any USB device is plugged onto the port, the host finishes executing the GPWRDN interrupt handler but still it didn't wake up.

Below is the dmesg log after plugging a device onto USB port:

[   30.763414] dwc2 f72c0000.usb: dwc2_handle_gpwrdn_intr: dwc2_handle_gpwrdwn_intr called gpwrdn= 081411bb
[   30.763458] dwc2 f72c0000.usb: dwc2_handle_gpwrdn_intr: GPWRDN_LNSTSCHG
[   30.763492] dwc2 f72c0000.usb: dwc2_host_exit_hibernation: called with rem_wakeup = 1 reset = 0
[   30.763623] dwc2 f72c0000.usb: dwc2_restore_essential_regs: restoring essential regs
[   30.763671] dwc2 f72c0000.usb: restore done  generated here
[   30.976707] dwc2 f72c0000.usb: dwc2_restore_global_registers
[   30.976723] dwc2 f72c0000.usb: dwc2_restore_host_registers
[   30.976741] dwc2 f72c0000.usb: Host hibernation restore complete

I tried to manually reset the HUB and PHY after plugging in the device but that didn't help.

This issue has been detected in kernel 4.17-rc1.

Can anyone shed some light here? Any help would be greatly appreciated!

Note: On this board, the USB controller's DP/DM out is connected to a switch which switches between a USB type C port and a HUB (USB2513B).

Thanks,
Mani
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux