This series includes patches that were submitted earlier by Douglas Anderson and Yunzhi Li to reduce delays during probe and get the correct reset values of the hardware configuration registers. These are patches 1-6 in this series. I have additionally added patches to clean up the code around that area, and have further reduced the delays by: - Taking into account the correct dr_mode - Skipping force mode when not needed - Removing unnecessary force mode from the gadget side - Reduce the force mode delay from 150 ms to 25 ms v2: - Addressed feedback from Douglas Anderson - Fixed and clarified some comments - Updated all force mode delay to use 'msleep(25)' - Moved dr_mode checking after lowlevel_hw_enable(). Caused hangs because of register access on certain platforms. - Removed duplicate reset in probe - Cleaned up force mode routines further and eliminated more unnecessary delays - Added gadget handling of hw params Tested on: - Synopsys HAPS, IP v3.20 - Altera SOCFPGA, IP v2.93 Regards, John Douglas Anderson (4): usb: dwc2: Restore GUSBCFG in dwc2_get_hwparams() usb: dwc2: Avoid double-reset at boot time usb: dwc2: Speed dwc2_get_hwparams() on some host-only ports usb: dwc2: Avoid more calls to dwc2_core_reset() John Youn (14): usb: dwc2: Reorder AHBIDLE and CSFTRST in dwc2_core_reset() usb: dwc2: Rename dwc2_core_reset() usb: dwc2: Add dwc2_core_reset() usb: dwc2: Add functions to check the HW OTG config usb: dwc2: Fix dr_mode validation usb: dwc2: Move mode querying functions into core.h usb: dwc2: Move reset into dwc2_get_hwparams() usb: dwc2: Add functions to set and clear force mode usb: dwc2: Improve handling of host and device hwparams usb: dwc2: gadget: Use hw params from core usb: dwc2: gadget: Replace dwc2_hsotg_corereset() usb: dwc2: Reduce delay when forcing mode in reset usb: dwc2: Remove redundant reset in probe usb: dwc2: gadget: Remove call to dwc2_hsotg_init() Yunzhi Li (2): usb: dwc2: reset dwc2 core before dwc2_get_hwparams() usb: dwc2: reduce dwc2 driver probe time drivers/usb/dwc2/core.c | 378 +++++++++++++++++++++++++++++++++++--------- drivers/usb/dwc2/core.h | 34 +++- drivers/usb/dwc2/gadget.c | 93 ++--------- drivers/usb/dwc2/hcd.c | 6 +- drivers/usb/dwc2/hcd.h | 12 -- drivers/usb/dwc2/platform.c | 86 ++++++++-- 6 files changed, 427 insertions(+), 182 deletions(-) -- 2.6.3 -- 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