From: Inochi Amaoto <inochiama@gmail.com>
To: Minas Harutyunyan <hminas@synopsys.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Felipe Balbi <balbi@ti.com>, Paul Zimmerman <paulz@synopsys.com>,
Dinh Nguyen <dinguyen@opensource.altera.com>
Cc: Inochi Amaoto <inochiama@gmail.com>,
linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org,
Yixun Lan <dlan@gentoo.org>, Longbin Li <looong.bin@gmail.com>
Subject: [PATCH v2 0/3] usb: dwc2: Add USB DRD support on CV1800 Series SoC
Date: Wed, 11 Nov 2026 13:56:15 +0800 [thread overview]
Message-ID: <20261111055628.183891-1-inochiama@gmail.com> (raw)
The current DRD implementation of DRD will cause a interrupt flow on
CV1800 Series SoC. It has two reasons:
1. The DRD does not sync the phy mode when change the controller mode,
it is a violation of the DRD as it does not rely on a OTG phy.
2. The CV1800 is entered with a Session End Detected interrupt, but the
DRD code has no change on it, so the controller will enter the
interrupt storm.
This patch add fixes for these two problem, and I have tested this on
a Huashan PI board (it has a CV1812H SoC).
Note: This patches set does not resolve all the problems, as
usb_add_hcd() will override the role set by dwc2, but I am not
sure whether it should change skip_phy_initialization of hcd.
So I kept it as it is and users still needs to set the role
in the userspace as "role-switch-default-mode" in devicetree
takes no effect.
Changed from v1:
- https://lore.kernel.org/linux-usb/20261110070627.217946-1-inochiama@gmail.com
1. the DTS patch is dropped and will be sent separately.
patch 2:
1. fix wrong is_host check in dwc2_drd_init()
2. remove unnecessary role check before setting phy mode in
dwc2_drd_role_sw_set()
Inochi Amaoto (3):
usb: dwc2: gadget: honor pullup requests in core_connect
usb: dwc2: drd: Sync the generic PHY mode with role requests
usb: dwc2: Add USB DRD support on CV1800 series SoC
drivers/usb/dwc2/core.h | 5 ++-
drivers/usb/dwc2/drd.c | 75 ++++++++++++++++++++++++++++---------
drivers/usb/dwc2/gadget.c | 3 +-
drivers/usb/dwc2/params.c | 1 +
drivers/usb/dwc2/platform.c | 4 +-
5 files changed, 68 insertions(+), 20 deletions(-)
--
2.56.0
next reply other threads:[~2026-11-11 5:56 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-11 5:56 Inochi Amaoto [this message]
2026-11-11 5:56 ` [PATCH v2 1/3] usb: dwc2: gadget: honor pullup requests in core_connect Inochi Amaoto
2026-11-11 5:56 ` [PATCH v2 2/3] usb: dwc2: drd: Sync the generic PHY mode with role requests Inochi Amaoto
2026-11-11 5:56 ` [PATCH v2 3/3] usb: dwc2: Add USB DRD support on CV1800 series SoC Inochi Amaoto
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=20261111055628.183891-1-inochiama@gmail.com \
--to=inochiama@gmail.com \
--cc=balbi@ti.com \
--cc=dinguyen@opensource.altera.com \
--cc=dlan@gentoo.org \
--cc=gregkh@linuxfoundation.org \
--cc=hminas@synopsys.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=looong.bin@gmail.com \
--cc=paulz@synopsys.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®