1. 23 7月, 2020 1 次提交
    • A
      usb: dwc2: override PHY input signals with usb role switch support · bc0f0d4a
      Amelie Delaunay 提交于
      This patch adds support for usb role switch to dwc2, by using overriding
      control of the PHY voltage valid and ID input signals.
      
      iddig signal (ID) can be overridden:
      - when setting GUSBCFG_FORCEHOSTMODE, iddig input pin is overridden with 1;
      - when setting GUSBCFG_FORCEDEVMODE, iddig input pin is overridden with 0.
      
      avalid/bvalid/vbusvalid signals can be overridden respectively with:
      - GOTGCTL_AVALOEN + GOTGCTL_AVALOVAL
      - GOTGCTL_BVALOEN + GOTGCTL_BVALOVAL
      - GOTGCTL_VBVALEN + GOTGCTL_VBVALOVAL
      
      It is possible to determine valid sessions thanks to usb role switch:
      - if USB_ROLE_NONE then !avalid && !bvalid && !vbusvalid
      - if USB_ROLE_DEVICE then !avalid && bvalid && vbusvalid
      - if USB_ROLE_HOST then avalid && !bvalid && vbusvalid
      Acked-by: NMinas Harutyunyan <hminas@synopsys.com>
      Signed-off-by: NAmelie Delaunay <amelie.delaunay@st.com>
      Signed-off-by: NFelipe Balbi <balbi@kernel.org>
      bc0f0d4a
  2. 15 7月, 2020 2 次提交
  3. 09 7月, 2020 1 次提交
  4. 03 7月, 2020 1 次提交
  5. 01 7月, 2020 1 次提交
  6. 24 6月, 2020 1 次提交
  7. 18 6月, 2020 2 次提交
  8. 25 5月, 2020 2 次提交
  9. 05 5月, 2020 1 次提交
  10. 16 4月, 2020 1 次提交
  11. 24 3月, 2020 1 次提交
  12. 15 3月, 2020 3 次提交
  13. 24 2月, 2020 1 次提交
  14. 11 2月, 2020 2 次提交
  15. 15 1月, 2020 5 次提交
  16. 14 11月, 2019 1 次提交
  17. 04 11月, 2019 1 次提交
  18. 22 10月, 2019 1 次提交
    • M
      usb: dwc2: use a longer core rest timeout in dwc2_core_reset() · 6689f0f4
      Mathias Kresin 提交于
      Testing on different generations of Lantiq MIPS SoC based boards, showed
      that it takes up to 1500 us until the core reset bit is cleared.
      
      The driver from the vendor SDK (ifxhcd) uses a 1 second timeout. Use the
      same timeout to fix wrong hang detections and make the driver work for
      Lantiq MIPS SoCs.
      
      At least till kernel 4.14 the hanging reset only caused a warning but
      the driver was probed successful. With kernel 4.19 errors out with
      EBUSY.
      
      Cc: linux-stable <stable@vger.kernel.org> # 4.19+
      Signed-off-by: NMathias Kresin <dev@kresin.me>
      Signed-off-by: NFelipe Balbi <felipe.balbi@linux.intel.com>
      6689f0f4
  19. 22 8月, 2019 1 次提交
  20. 15 8月, 2019 1 次提交
  21. 09 8月, 2019 2 次提交
  22. 31 7月, 2019 1 次提交
  23. 25 7月, 2019 1 次提交
  24. 03 7月, 2019 1 次提交
  25. 18 6月, 2019 4 次提交
  26. 06 6月, 2019 1 次提交
    • A
      usb: gadget: dwc2: fix zlp handling · 066cfd07
      Andrzej Pietrasiewicz 提交于
      The patch 10209abe
      usb: dwc2: gadget: Add scatter-gather mode
      
      avoided a NULL pointer dereference (hs_ep->req == NULL) by
      calling dwc2_gadget_fill_nonisoc_xfer_dma_one() directly instead of through
      the dwc2_gadget_config_nonisoc_xfer_ddma() wrapper, which unconditionally
      dereferenced the said pointer.
      
      However, this was based on an incorrect assumption that in the context of
      dwc2_hsotg_program_zlp() the pointer is always NULL, which is not the case.
      The result were SB CV MSC tests failing starting from Test Case 6.
      
      Instead, this patch reverts to calling the wrapper and adds a check for
      the pointer being NULL inside the wrapper.
      
      Fixes: 10209abe (usb: dwc2: gadget: Add scatter-gather mode)
      Acked-by: NMinas Harutyunyan <hminas@synopsys.com>
      Signed-off-by: NAndrzej Pietrasiewicz <andrzej.p@collabora.com>
      Signed-off-by: NFelipe Balbi <felipe.balbi@linux.intel.com>
      066cfd07