1. 19 Mar, 2015 1 commit
    • Vincent Palatin's avatar
      usb: dwc2: avoid leaking DMA channels on disconnection · 7252f1bf
      Vincent Palatin authored
      When the HCD is disconnected, the DMA transfers still in-flight were cleaned-up
      but the count of available DMA channels (e.g. available_host_channels) was not
      reset.
      The pool of DMA channels can be depleted when doing unclean
      disconnection of USB peripherals, and reaches the point where no
      transfer was possible until the next reboot/reload of the driver.
      
      Tested by putting a programmable USB mux on the port and randomly
      plugging/unpluging a USB HUB with USB mass-storage key, USB-audio and
      USB-ethernet dongle connected to its downstream ports, and also doing the
      disconnection early while the devices are still enumerating to get more URBs
      in-flight.
      After the patch, the devices are still enumerating after thousands of cycles,
      while the port was totally dead before.
      Signed-off-by: default avatarVincent Palatin <vpalatin@chromium.org>
      Acked-by: default avatarJohn Youn <johnyoun@synopsys.com>
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      7252f1bf
  2. 13 Mar, 2015 9 commits
  3. 12 Mar, 2015 1 commit
  4. 11 Mar, 2015 16 commits
  5. 10 Mar, 2015 13 commits