All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/8] usb: dwc2: Refactor and update USB DWC2 driver
@ 2025-01-10 13:55 Junhui Liu
  2025-01-10 13:55 ` [PATCH v4 1/8] usb: dwc2: Extract register definitions to common header file Junhui Liu
                   ` (8 more replies)
  0 siblings, 9 replies; 14+ messages in thread
From: Junhui Liu @ 2025-01-10 13:55 UTC (permalink / raw)
  To: Tom Rini, Marek Vasut, Lukasz Majewski, Mattijs Korpershoek
  Cc: u-boot, seashell11234455, pbrobinson, junhui.liu

This series improves the USB DWC2 driver by extracting register
definitions into a common file for better readability and updating the
reset method to reflect changes in version 4.20a, including the new
GRSTCTL_CSFTRST_DONE bit for reset completion indication.

This series has been tested on two platforms:
- MK808 with RK3066 SoC and dwc2 v2.91a, tested with USB flash drive and
  connected the board to the PC through the rockusb command. Test log [1].
- K230-CanMV with K230 SoC [2] and dwc2 v4.30a, tested with the onboard
  rtl8152 USB to net chip and an external rtl8152 adapter connected to
  the onboard USB-C interface via USB hub. Test log [3].

[1] https://gist.github.com/Judehahh/878ace2607d201dc49211f2c655f0fe0#file-mk808-md
[2] https://developer.canaan-creative.com/k230/en/dev/CanMV_K230_Tutorial.html
[3] https://gist.github.com/Judehahh/878ace2607d201dc49211f2c655f0fe0#file-k230-canmv-md

---
Changes in v4:
- Fixed typo from dwc2_core_reg to dwc2_core_regs in patch 1&5.
- Restored `struct dwc2_usbotg_phy` definition that was incorrectly
  removed in patch 6.
- Updated copyright headers to include 2025 in patch 7.
- Expanded comments to clarify PHY clock delay in patch 7.
- Link to v3: https://lore.kernel.org/r/20250104-dwc2-dev-v3-0-d4b2bc1996e4@pigmoral.tech

Changes in v3:
- Handled warnings from checkpatch.pl (add spaces around '<<' and
  replace 'x' with '(x)' for macro argument).
- Add return ret; when timeout happens.
- Link to v2: https://lore.kernel.org/r/20241230-dwc2-dev-v2-3-12cd9b8a2358@outlook.com

Changes in v2:
- Reorganized structures, renamed macros, and moved code for better
  clarity and maintainability.
- Added a fix for the incorrect ULPI_UTMI_SEL bit setting.
- Added a fix for incorrectly calculating HBstLen for external DMA mode.
- Extend the changes that replace uint32 with u32 to also include u8 and
  u16.
- Link to v1: https://lore.kernel.org/r/20240522142311.17351-1-seashell11234455@gmail.com

---
Junhui Liu (1):
      usb: dwc2: Fix incorrect ULPI_UTMI_SEL bit setting

Kongyang Liu (7):
      usb: dwc2: Extract register definitions to common header file
      usb: dwc2: Fix HBstLen setting for external DMA mode
      usb: dwc2: Clean up with bitfield macros
      usb: dwc2: Align macros with Linux kernel definitions
      usb: dwc2: Extract macro definitions to common header
      usb: dwc2: Unify flush and reset logic with v4.20a support
      usb: dwc2: Replace uint<x>_t types with u<x>

 drivers/usb/common/Makefile                |   2 +
 drivers/usb/common/dwc2_core.c             | 131 +++++
 drivers/usb/common/dwc2_core.h             | 560 +++++++++++++++++++++
 drivers/usb/gadget/dwc2_udc_otg.c          | 125 ++---
 drivers/usb/gadget/dwc2_udc_otg_regs.h     | 289 ++---------
 drivers/usb/gadget/dwc2_udc_otg_xfer_dma.c | 306 ++++++------
 drivers/usb/host/dwc2.c                    | 494 ++++++++-----------
 drivers/usb/host/dwc2.h                    | 750 +----------------------------
 8 files changed, 1154 insertions(+), 1503 deletions(-)
---
base-commit: 38a371110308ebeb277e20531a7b698b7981bbfa
change-id: 20241218-dwc2-dev-955c21a81118

Best regards,
-- 
Junhui Liu <junhui.liu@pigmoral.tech>


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2025-06-02  7:58 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-10 13:55 [PATCH v4 0/8] usb: dwc2: Refactor and update USB DWC2 driver Junhui Liu
2025-01-10 13:55 ` [PATCH v4 1/8] usb: dwc2: Extract register definitions to common header file Junhui Liu
2025-01-10 13:55 ` [PATCH v4 2/8] usb: dwc2: Fix incorrect ULPI_UTMI_SEL bit setting Junhui Liu
2025-01-10 13:55 ` [PATCH v4 3/8] usb: dwc2: Fix HBstLen setting for external DMA mode Junhui Liu
2025-01-10 13:55 ` [PATCH v4 4/8] usb: dwc2: Clean up with bitfield macros Junhui Liu
2025-01-10 13:55 ` [PATCH v4 5/8] usb: dwc2: Align macros with Linux kernel definitions Junhui Liu
2025-01-10 13:55 ` [PATCH v4 6/8] usb: dwc2: Extract macro definitions to common header Junhui Liu
2025-01-16  9:03   ` Mattijs Korpershoek
2025-01-10 13:55 ` [PATCH v4 7/8] usb: dwc2: Unify flush and reset logic with v4.20a support Junhui Liu
2025-01-11 21:25   ` Marek Vasut
2025-01-16  9:22   ` Mattijs Korpershoek
2025-01-10 13:55 ` [PATCH v4 8/8] usb: dwc2: Replace uint<x>_t types with u<x> Junhui Liu
2025-01-16  9:24   ` Mattijs Korpershoek
2025-06-02  7:58 ` [PATCH v4 0/8] usb: dwc2: Refactor and update USB DWC2 driver Mattijs Korpershoek

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.