# USB DWC3 driver

Source: [https://docs.qualcomm.com/doc/80-88500-4/topic/119_USB_DWC3_driver.html](https://docs.qualcomm.com/doc/80-88500-4/topic/119_USB_DWC3_driver.html)

The DWC3 driver is open source and supports the subsystem high speed (HS), full speed
    (FS), and low speed (LS) modes.

The DWC3 driver is the interface to USB 2.0 PHY (UTMI) and USB 3.0 PHY (PIPE). The DWC3 Linux
      driver design relies on the separate hardware interfaces.

Figure : USB DWC3 driver
      
      ![](data:image/png;base64,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)

The DWC3 driver is located at kernel/drivers/usb/dwc3. In the following
      figure, the dashed lines represent kernel modules; there are three different modules, each
      with its own probe function. Each host, OTG, and gadget have their own interrupt handler, but
      all of them respond to the same interrupt request (IRQ) number.

Figure : USB DWC3 driver design
      
      ![](data:image/png;base64,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)

Figure : USB DWC3 driver flow
      
      ![](data:image/png;base64,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)

Note: For more information, see <cite class="cite">Linux USB Implementation Guide</cite>
      (80-NF283-1).

The DWC3 MSM driver is located at &lt;apps
        root&gt;/kernel/drivers/usb/dwc3/dwc3-MSM.c:

- Platform specifics – dwc3\_MSM\_probe
    - Clocks initializations
    - Power rail initializations
    - Interrupts setup
- LPM suspend/resume
- DBM driver
- Initializes the DWC3 core driver

Figure : DWC3 MSM driver
      
      ![](data:image/png;base64,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QRWMWxbh61uC6ufnu7/Vf//IRbpiznLXOLrIV+3AQ96z3y3mjM7lcstVhoKHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29BFQyKgAady4VVNpuHzBgLb0EVDIqABp3LhVU2m4fMGAtvQRUMioAGncuFVTabh8wYC29B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)

The DWC3 core driver is located at &lt;apps
        root&gt;/kernel/drivers/usb/dwc3/core.c:

- DWC3 driver module entry – dwc3\_probe
- Global registers initializations/handling:
    - Global Core Control (GCTL) (Device/Host mode, LPM, and so on)
    - Global hardware parameters, eight registers (number of EPs and so on)
    - Global PHY registers (configuration of USB 2.0 and USB 3.0 PHYs) – Software reset
    - Global event buffer registers (pointer, size, and so on) – Event buffers initializations
- Reads hardware configuration DWC3\_MODE and initializes the OTG/device/host accordingly
- Initializes the DWC3 gadget, XHCI, and OTG drivers
- Populates the needed UDC, XHCI, and OTG structures for the Linux USB stack

The USB PHY drivers have separated the HS-PHY and SS-PHY-specific operations from the DWC MSM
      driver.

- phy-MSM-ssusb-qmp.c – Handles SS-USB PHY-specific sequences, for example, suspend and resume
- phy-MSM-qusb.c – Handles HS-USB PHY-specific sequences

Each PHY has its own device entry in the device tree for any PHY-specific configurations.

**Parent Topic:** [USB](https://docs.qualcomm.com/doc/80-88500-4/topic/106_USB.html)

Last Published: Aug 18, 2023

[Previous Topic
USB KPIs](https://docs.qualcomm.com/bundle/publicresource/80-88500-4/topics/118_USB_KPIs.md) [Next Topic
PCIe](https://docs.qualcomm.com/bundle/publicresource/80-88500-4/topics/120_PCIe.md)