All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jens Wiklander <jens.wiklander@linaro.org>
To: u-boot@lists.denx.de, Marek Vasut <marex@denx.de>
Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org>,
	Andre Przywara <andre.przywara@arm.com>,
	Andrew Goodbody <andrew.goodbody@linaro.org>,
	Anshul Dalal <anshuld@ti.com>, Bin Meng <bmeng.cn@gmail.com>,
	Casey Connolly <casey.connolly@linaro.org>,
	Chunfeng Yun <chunfeng.yun@mediatek.com>,
	Eddie Cai <eddie.cai.linux@gmail.com>,
	GSS_MTK_Uboot_upstream <GSS_MTK_Uboot_upstream@mediatek.com>,
	Ion Agorria <ion@agorria.com>,
	Junhui Liu <junhui.liu@pigmoral.tech>,
	Kongyang Liu <seashell11234455@gmail.com>,
	Lukasz Majewski <lukma@denx.de>,
	Mattijs Korpershoek <mkorpershoek@kernel.org>,
	Neil Armstrong <neil.armstrong@linaro.org>,
	Patrice Chotard <patrice.chotard@foss.st.com>,
	Quentin Schulz <quentin.schulz@cherry.de>,
	Rasmus Villemoes <ravi@prevas.dk>,
	Ryder Lee <ryder.lee@mediatek.com>,
	Simon Glass <sjg@chromium.org>,
	Stephan Gerhold <stephan.gerhold@linaro.org>,
	Svyatoslav Ryhel <clamor95@gmail.com>,
	Tom Rini <trini@konsulko.com>,
	Varadarajan Narayanan <quic_varada@quicinc.com>,
	Weijie Gao <weijie.gao@mediatek.com>,
	Zixun LI <admin@hifiphile.com>,
	Jerome Forissier <jerome.forissier@arm.com>,
	Chintan Vankar <c-vankar@ti.com>,
	Siddharth Vadapalli <s-vadapalli@ti.com>
Subject: [PATCH v3] drivers: usb: dwc3: sync code with Linux v6.16
Date: Wed, 24 Jun 2026 14:30:25 +0200	[thread overview]
Message-ID: <20260624123025.GA3245275@rayden> (raw)

Hi,

This is a follow up on my last patchset [1]. I'm addressing feedback on
the previous post. Since there's quite a few patches I've published a
branch instead as requestsed. Last in this mail follows a summary of the
branch (it looks like a pull request, but I'm only reusing a well-known
format, it's not intended as a pull request at this stage).

The DWC3 USB driver was forked from the Linux kernel v3.19-rc1 eleven years
ago by commit 85d5e7075f33 ("usb: dwc3: add dwc3 folder from linux kernel
to u-boot"). Since then, not many kernel changes have been ported back into
U-Boot.

This series synchronizes the DWC3 core with Linux v6.16. To provide 
a clear audit trail and maintain bisectability, I have structured the 
series as follows:

1. Restore to Baseline: The first commit reverts U-Boot-specific changes 
   to drivers/usb/dwc3 to return the directory to a clean v3.19-rc1 state.
2. Milestone Imports: A sequence of 50+ commits follows, each performing 
   a "snapshot" import of the drivers/usb/dwc3 directory for every major 
   kernel version (v3.19 through v6.16). 
3. U-Boot Adaptation: The final commits (based on Jerome's original work [2]) 
   re-introduce the necessary glue code, XHCI/UDC updates, and build fixes 
   required for U-Boot integration.

Note that this is compile-tested only. The CI pipeline on source.denx.de
was used as an OK/NOK indicator [3]. 

Thanks,
Jens

[1] https://lore.kernel.org/u-boot/20260507092843.358908-1-jens.wiklander@linaro.org/
[2] https://lore.kernel.org/all/20251121153812.2076440-1-jerome.forissier@linaro.org/
[3] https://source.denx.de/u-boot/custodians/u-boot-tpm/-/pipelines/30524

RFC v2 -> v3:
- Rebased on v2026.07-rc3
- Configured out a few prints in drivers/usb/gadget/udc/udc-core.c
  to make it build for am335x_evm_defconfig
- Applied provided tags in [1]
- Published as a branch

RFC v1 -> RFC v2:
- Split the v1 ("usb: dwc3: re-import from kernel v6.16-rc7") into ("usb:
  dwc3: restore to original v3.19-rc1 kernel import"),  ("usb: dwc3: import
  from kernel v3.19)..("usb: dwc3: import from kernel v6.16-rc7")


The following changes since commit 76d62273bc8a5dc126ed79ed0fb65e5a97359577:

  Prepare v2026.07-rc3 (2026-05-25 11:05:37 -0600)

are available in the Git repository at:

  https://github.com/jenswikl/u-boot tags/usb-dwc3-sync-v3

for you to fetch changes up to 2e3b14270a8e9dc5e6836f0f011fd97d491a89f7:

  usb: fix build after resync of DWC3 with kernel v6.16 (2026-06-24 09:48:03 +0200)

----------------------------------------------------------------
drivers: usb: dwc3: sync code with Linux v6.16

----------------------------------------------------------------
Jens Wiklander (60):
      usb: dwc3: restore to original v3.19-rc1 kernel import
      usb: dwc3: import from kernel v3.19
      usb: dwc3: import from kernel v4.0
      usb: dwc3: import from kernel v4.1
      usb: dwc3: import from kernel v4.2
      usb: dwc3: import from kernel v4.3
      usb: dwc3: import from kernel v4.4
      usb: dwc3: import from kernel v4.5
      usb: dwc3: import from kernel v4.6
      usb: dwc3: import from kernel v4.7
      usb: dwc3: import from kernel v4.8
      usb: dwc3: import from kernel v4.9
      usb: dwc3: import from kernel v4.10
      usb: dwc3: import from kernel v4.11
      usb: dwc3: import from kernel v4.12
      usb: dwc3: import from kernel v4.13
      usb: dwc3: import from kernel v4.14
      usb: dwc3: import from kernel v4.15
      usb: dwc3: import from kernel v4.16
      usb: dwc3: import from kernel v4.17
      usb: dwc3: import from kernel v4.18
      usb: dwc3: import from kernel v4.19
      usb: dwc3: import from kernel v4.20
      usb: dwc3: import from kernel v5.0
      usb: dwc3: import from kernel v5.1
      usb: dwc3: import from kernel v5.2
      usb: dwc3: import from kernel v5.3
      usb: dwc3: import from kernel v5.4
      usb: dwc3: import from kernel v5.5
      usb: dwc3: import from kernel v5.6
      usb: dwc3: import from kernel v5.7
      usb: dwc3: import from kernel v5.8
      usb: dwc3: import from kernel v5.9
      usb: dwc3: import from kernel v5.10
      usb: dwc3: import from kernel v5.11
      usb: dwc3: import from kernel v5.12
      usb: dwc3: import from kernel v5.13
      usb: dwc3: import from kernel v5.14
      usb: dwc3: import from kernel v5.15
      usb: dwc3: import from kernel v5.16
      usb: dwc3: import from kernel v5.17
      usb: dwc3: import from kernel v5.18
      usb: dwc3: import from kernel v5.19
      usb: dwc3: import from kernel v6.0
      usb: dwc3: import from kernel v6.1
      usb: dwc3: import from kernel v6.2
      usb: dwc3: import from kernel v6.3
      usb: dwc3: import from kernel v6.4
      usb: dwc3: import from kernel v6.5
      usb: dwc3: import from kernel v6.6
      usb: dwc3: import from kernel v6.7
      usb: dwc3: import from kernel v6.8
      usb: dwc3: import from kernel v6.9
      usb: dwc3: import from kernel v6.10
      usb: dwc3: import from kernel v6.11
      usb: dwc3: import from kernel v6.12
      usb: dwc3: import from kernel v6.13
      usb: dwc3: import from kernel v6.14
      usb: dwc3: import from kernel v6.15
      usb: dwc3: import from kernel v6.16

Jerome Forissier (4):
      usb: host: re-import xhci-ext-caps.h from kernel v6.16
      usb: gadget: re-import epautoconf.c from kernel v6.16
      usb: udc: re-import udc-core.c from kernel v6.16
      usb: fix build after resync of DWC3 with kernel v6.16

 drivers/usb/cdns3/ep0.c                |    8 +-
 drivers/usb/common/common.c            |   23 +
 drivers/usb/dwc3/Makefile              |   57 +-
 drivers/usb/dwc3/core.c                | 1710 ++++++++-----
 drivers/usb/dwc3/core.h                | 1060 ++++++--
 drivers/usb/dwc3/debug.h               |  432 ++++
 drivers/usb/dwc3/dwc3-omap.c           |    2 -
 drivers/usb/dwc3/ep0.c                 |  737 +++---
 drivers/usb/dwc3/gadget.c              | 4256 ++++++++++++++++++++++----------
 drivers/usb/dwc3/gadget.h              |  112 +-
 drivers/usb/dwc3/glue.h                |   36 +
 drivers/usb/dwc3/io.h                  |   29 +-
 drivers/usb/dwc3/linux-compat.h        |   16 -
 drivers/usb/dwc3/samsung_usb_phy.c     |   77 -
 drivers/usb/dwc3/ti_usb_phy.c          |    2 -
 drivers/usb/gadget/at91_udc.c          |   46 -
 drivers/usb/gadget/atmel_usba_udc.c    |  102 +-
 drivers/usb/gadget/ci_udc.c            |  470 ----
 drivers/usb/gadget/composite.c         |    2 +-
 drivers/usb/gadget/dwc2_udc_otg.c      |  174 +-
 drivers/usb/gadget/epautoconf.c        |  289 +--
 drivers/usb/gadget/ether.c             |   21 +-
 drivers/usb/gadget/f_acm.c             |   20 +-
 drivers/usb/gadget/f_fastboot.c        |   10 +-
 drivers/usb/gadget/f_mass_storage.c    |    5 +-
 drivers/usb/gadget/f_rockusb.c         |   11 +-
 drivers/usb/gadget/f_sdp.c             |   12 +-
 drivers/usb/gadget/f_thor.c            |   19 +-
 drivers/usb/gadget/udc/Makefile        |    1 +
 drivers/usb/gadget/udc/udc-core.c      | 1099 ++++++++-
 drivers/usb/host/xhci-dwc3.c           |    4 +-
 drivers/usb/host/xhci-ext-caps.h       |  158 ++
 drivers/usb/host/xhci-exynos5.c        |    2 +-
 drivers/usb/mtu3/mtu3_gadget_ep0.c     |   16 +-
 drivers/usb/musb-new/musb_gadget_ep0.c |   24 +-
 drivers/usb/musb-new/musb_uboot.c      |   39 -
 include/dm/device_compat.h             |   13 +
 include/dm/read.h                      |   46 +
 include/linux/compat.h                 |   15 +
 include/linux/usb/ch9.h                |   25 +-
 include/linux/usb/gadget.h             |  520 +---
 include/linux/usb/otg.h                |   10 +
 include/linux/usb/phy.h                |   56 +
 43 files changed, 7591 insertions(+), 4175 deletions(-)
 create mode 100644 drivers/usb/dwc3/debug.h
 create mode 100644 drivers/usb/dwc3/glue.h
 delete mode 100644 drivers/usb/dwc3/linux-compat.h
 delete mode 100644 drivers/usb/dwc3/samsung_usb_phy.c
 create mode 100644 drivers/usb/host/xhci-ext-caps.h

                 reply	other threads:[~2026-06-24 12:30 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260624123025.GA3245275@rayden \
    --to=jens.wiklander@linaro.org \
    --cc=GSS_MTK_Uboot_upstream@mediatek.com \
    --cc=admin@hifiphile.com \
    --cc=andre.przywara@arm.com \
    --cc=andrew.goodbody@linaro.org \
    --cc=anshuld@ti.com \
    --cc=bmeng.cn@gmail.com \
    --cc=c-vankar@ti.com \
    --cc=casey.connolly@linaro.org \
    --cc=chunfeng.yun@mediatek.com \
    --cc=clamor95@gmail.com \
    --cc=eddie.cai.linux@gmail.com \
    --cc=ilias.apalodimas@linaro.org \
    --cc=ion@agorria.com \
    --cc=jerome.forissier@arm.com \
    --cc=junhui.liu@pigmoral.tech \
    --cc=lukma@denx.de \
    --cc=marex@denx.de \
    --cc=mkorpershoek@kernel.org \
    --cc=neil.armstrong@linaro.org \
    --cc=patrice.chotard@foss.st.com \
    --cc=quentin.schulz@cherry.de \
    --cc=quic_varada@quicinc.com \
    --cc=ravi@prevas.dk \
    --cc=ryder.lee@mediatek.com \
    --cc=s-vadapalli@ti.com \
    --cc=seashell11234455@gmail.com \
    --cc=sjg@chromium.org \
    --cc=stephan.gerhold@linaro.org \
    --cc=trini@konsulko.com \
    --cc=u-boot@lists.denx.de \
    --cc=weijie.gao@mediatek.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.