From: Sebastian Reichel <sebastian.reichel@collabora.com>
To: Peter Chen <peter.chen@oss.qualcomm.com>
Cc: Vinod Koul <vkoul@kernel.org>,
Thinh Nguyen <Thinh.Nguyen@synopsys.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Heiko Stuebner <heiko@sntech.de>,
Neil Armstrong <neil.armstrong@linaro.org>,
Manivannan Sadhasivam <mani@kernel.org>,
Igor Paunovic <royalnet026@gmail.com>,
linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-rockchip@lists.infradead.org,
linux-phy@lists.infradead.org, kernel@collabora.com,
Krishna Kurapati <krishna.kurapati@oss.qualcomm.com>
Subject: Re: [PATCH v18 0/7] usb: dwc3: introduce Rockchip glue driver
Date: Sat, 14 Nov 2026 00:19:46 +0100 [thread overview]
Message-ID: <aveY4hjCgstjkmy7@venus> (raw)
In-Reply-To: <avZvYlYyL3Doc8qt@hu-petche-lv.qualcomm.com>
[-- Attachment #1.1: Type: text/plain, Size: 5186 bytes --]
Hi,
On Thu, Nov 12, 2026 at 06:01:06PM -0800, Peter Chen wrote:
> On 26-10-21 20:05:25, Sebastian Reichel wrote:
> > - drop generic PHY reset notifier API; I discussed this series at Linux
> > Plumbers Conference with Vinod Koul and he prefers a local driver
> > hack/quirk instead
>
> Hi Sebastian and Vinod,
>
> Sorry to jump out late, do we really decide to use private callback between
> USB controller and USB Combo PHY, and notify PHY's reset events for
> controller? Many platforms which support USB/DP altmode feature need this
> requirement, besides Rockchip, Qualcomm and the platforms use Cadence USB
> controller and PHY also need this.
>
> For this scenario, USB controller works at USB3 mode (also configures PHY for
> USB3) first. Later, Type-C/DP event tells PHY that it needs to work for DP(4lane),
> since this event doesn't go to controller now, sudden switch PHY from USB3
> to DP (4lane) will turn off PIPE clock, and cause all controller's event which
> needs PHY (PIPE) clock abnormal, that's the reason why controller needs
> this PHY switch (reset) notification and let the controller know it needs
> to work at USB2 mode from now on.
This is similar to the Rockchip requirements. But the issue is
partially covered within the PHY by muxing the clock differently
(which is also somewhat of a hack, as common clock framework is not
aware of this). FWIW I expected more platforms to run into this over
time. Having combined PHYs for USB-C handling makes a lot of sense.
But I think it makes sense to proceed with this considering it is a
Fix. It has been going on for a very long time already and meanwhile
the problem is already there right now. Moving this from the
internal custom API to an official API is always possible as a
follow-up - it's all within the kernel, neither DT nor userspace ABI
is involved. Also having some users makes it easy to figure out how
the common API should look like.
Greetings,
-- Sebastian
>
> So, it is more like a general requirement, but not quirk for special platform.
>
> Peter
>
> > - rework USBDP and DWC3 rockchip glue for the local driver quirk
> > using direct function calls
> > - Ensure that the reset handler in DWC3 is only called when the PHY is
> > initialized (and thus DWC3 is running)
> > - Also set vbus in the last patch when dwc3 is configured to device only
> > mode (in contrast to dual-role mode being in device mode).
> >
> > Changes in v16:
> > - Link to v15 (sorry, I missed force setting the revision for this
> > part in the series split, so the series says v1 in the patch subject):
> > https://patch.msgid.link/20260915-b4-rockchip-dwc3-rockchip-glue-v1-0-763bb546824e@collabora.com
> > - Update first patch to also build the PM functions even when
> > PM is disabled
> > - Add new patch for defining an empty usb_udc_vbus_handler stub
> > when USB_GADGET is disabled
> > - Add dependency to Rockchip DWC3 glue, which disallows the
> > configuration with USB_DWC3_ROCKCHIP=y and USB_GADGET=m
> > - Collect tags
> >
> > Changes in v15:
> > - Link to v14: https://patch.msgid.link/20260813-rockchip-usbdp-cleanup-v14-0-b5ad9c68fa11@collabora.com
> > - Avoid #ifdef for CONFIG_PM in the new glue driver (Thinh Nguyen)
> > - Do not add #if IS_ENABLED around the DT compatible blacklist in the
> > generic driver, using the glue driver should be mandatory as the
> > generic driver results in arbitrary system hangs. Thinh Nguyen suggested
> > updating Kconfig for this, but did not clarify what that means.
> > Current Kconfig works the same way as the other mandatory glue
> > drivers.
> > - Split series to simplify review
> >
> > Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
> > ---
> > Sebastian Reichel (7):
> > phy: rockchip: usbdp: Track PHY power state
> > phy: rockchip: usbdp: Add reset hook support for dwc3
> > usb: dwc3: rockchip: introduce glue driver
> > usb: dwc3: core: add post PHY registration hook for platform glue
> > usb: dwc3: rockchip: add USBDP PHY reset quirk
> > usb: gadget: define stub for usb_udc_vbus_handler
> > usb: dwc3: rockchip: fix USB-C reconnect in gadget mode
> >
> > drivers/phy/rockchip/phy-rockchip-usbdp.c | 82 ++++++++++-
> > drivers/usb/dwc3/Kconfig | 13 ++
> > drivers/usb/dwc3/Makefile | 1 +
> > drivers/usb/dwc3/core.c | 17 ++-
> > drivers/usb/dwc3/core.h | 9 ++
> > drivers/usb/dwc3/dwc3-rockchip.c | 227 ++++++++++++++++++++++++++++++
> > drivers/usb/dwc3/trace.c | 3 +
> > include/linux/phy/rockchip-usbdp.h | 31 ++++
> > include/linux/usb/gadget.h | 5 +
> > 9 files changed, 383 insertions(+), 5 deletions(-)
> > ---
> > base-commit: 8f56fdf3d8cb9f1dbdc93bf9ac816698aa6f70b7
> > change-id: 20260914-b4-rockchip-dwc3-rockchip-glue-979ea3735d43
> >
> > Best regards,
> > --
> > Sebastian Reichel <sebastian.reichel@collabora.com>
> >
> >
>
> --
>
> Thanks,
> Peter Chen
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
[-- Attachment #2: Type: text/plain, Size: 112 bytes --]
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
prev parent reply other threads:[~2026-11-13 23:20 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-21 18:05 [PATCH v18 0/7] usb: dwc3: introduce Rockchip glue driver Sebastian Reichel
2026-10-21 18:05 ` [PATCH v18 1/7] phy: rockchip: usbdp: Track PHY power state Sebastian Reichel
2026-11-01 10:58 ` Manivannan Sadhasivam
2026-10-21 18:05 ` [PATCH v18 2/7] phy: rockchip: usbdp: Add reset hook support for dwc3 Sebastian Reichel
2026-11-01 11:01 ` Manivannan Sadhasivam
2026-10-21 18:05 ` [PATCH v18 3/7] usb: dwc3: rockchip: introduce glue driver Sebastian Reichel
2026-10-21 18:05 ` [PATCH v18 4/7] usb: dwc3: core: add post PHY registration hook for platform glue Sebastian Reichel
2026-10-21 18:05 ` [PATCH v18 5/7] usb: dwc3: rockchip: add USBDP PHY reset quirk Sebastian Reichel
2026-10-21 18:35 ` sashiko-bot
2026-10-21 18:05 ` [PATCH v18 6/7] usb: gadget: define stub for usb_udc_vbus_handler Sebastian Reichel
2026-10-21 18:05 ` [PATCH v18 7/7] usb: dwc3: rockchip: fix USB-C reconnect in gadget mode Sebastian Reichel
2026-10-21 18:31 ` sashiko-bot
2026-11-01 11:01 ` [PATCH v18 0/7] usb: dwc3: introduce Rockchip glue driver Manivannan Sadhasivam
2026-11-01 23:46 ` Sebastian Reichel
2026-11-12 13:40 ` Vinod Koul
2026-11-12 8:48 ` Chaoyi Chen
2026-11-13 2:01 ` Peter Chen
2026-11-13 23:19 ` Sebastian Reichel [this message]
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=aveY4hjCgstjkmy7@venus \
--to=sebastian.reichel@collabora.com \
--cc=Thinh.Nguyen@synopsys.com \
--cc=gregkh@linuxfoundation.org \
--cc=heiko@sntech.de \
--cc=kernel@collabora.com \
--cc=krishna.kurapati@oss.qualcomm.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-phy@lists.infradead.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=linux-usb@vger.kernel.org \
--cc=mani@kernel.org \
--cc=neil.armstrong@linaro.org \
--cc=peter.chen@oss.qualcomm.com \
--cc=royalnet026@gmail.com \
--cc=vkoul@kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox