[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250710152252.2532020-1-jkeeping@inmusicbrands.com>
Date: Thu, 10 Jul 2025 16:22:48 +0100
From: John Keeping <jkeeping@...usicbrands.com>
To: linux-rockchip@...ts.infradead.org
Cc: John Keeping <jkeeping@...usicbrands.com>,
Vinod Koul <vkoul@...nel.org>,
Kishon Vijay Abraham I <kishon@...nel.org>,
Heiko Stuebner <heiko@...ech.de>,
Thinh Nguyen <Thinh.Nguyen@...opsys.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Sebastian Reichel <sebastian.reichel@...labora.com>,
Nicolas Frattaroli <nicolas.frattaroli@...labora.com>,
Neil Armstrong <neil.armstrong@...aro.org>,
linux-usb@...r.kernel.org,
linux-phy@...ts.infradead.org,
linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org
Subject: [RFC/PATCH 0/2] dwc3/rockchip orientation fixes
This series attempts to fix an issue with using the USB PHY on RK3588 as
an orientation switch. The phy driver only updates its internal state
and does not write to the hardware when notified of an orientation
switch.
An early patch addressing this issue [1] updated the hardware directly,
but this changes the phy state underneath the USB controller when it is
not expecting the state to change. That was addressed in [2] but my
testing of that shows runtime PM overflows that cause the device to be
left disabled unexpectedly.
This approach updates the dwc3 driver so that it always signals a phy
mode change when a plug event occurs, allowing the phy to reset safely
at a point when the USB controller expects it to do so.
The dwc3 changes seem to work in my testing, but I have no idea of the
full implications of setting an "unsupported" role.
[1] https://lore.kernel.org/r/20250226103810.3746018-1-heiko@sntech.de
[2] https://lore.kernel.org/r/20250610-rk3576-sige5-usb-v4-0-7e7f779619c1@collabora.com
John Keeping (2):
usb: dwc3: disable for USB_ROLE_NONE
phy: rockchip: usbdp: implement .set_mode
drivers/phy/rockchip/phy-rockchip-usbdp.c | 14 ++++++++++++++
drivers/usb/dwc3/core.c | 3 ---
drivers/usb/dwc3/drd.c | 5 +----
3 files changed, 15 insertions(+), 7 deletions(-)
--
2.50.0
Powered by blists - more mailing lists