[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20260127-diogo-tegra_phy-v2-0-787b9eed3ed5@tecnico.ulisboa.pt>
Date: Tue, 27 Jan 2026 15:11:46 +0000
From: Diogo Ivo <diogo.ivo@...nico.ulisboa.pt>
To: Mathias Nyman <mathias.nyman@...el.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Thierry Reding <thierry.reding@...il.com>,
Jonathan Hunter <jonathanh@...dia.com>, JC Kuo <jckuo@...dia.com>,
Vinod Koul <vkoul@...nel.org>, Kishon Vijay Abraham I <kishon@...nel.org>,
Rob Herring <robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Neil Armstrong <neil.armstrong@...aro.org>
Cc: linux-usb@...r.kernel.org, linux-tegra@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-phy@...ts.infradead.org,
devicetree@...r.kernel.org, Diogo Ivo <diogo.ivo@...nico.ulisboa.pt>,
stable@...r.kernel.org
Subject: [PATCH v2 0/6] Fixes to Tegra USB role switching and phy handling
Hello,
This patch series contains fixes/improvements for USB role switching on the
Tegra210 and Tegra186 SoCs.
The first patch addresses a wrong check on the logic that disables the
VBUS regulator.
The second patch removes a redundant mutex lock when setting the PHY
mode.
The third patch guarantees proper ordering of events when switching PHY
roles.
The remaining patches are included to standardize the PHY .set_mode()
callback between Tegra186 and Tegra210.
With this patch series this feature can only be controlled from userspace,
by writing the desired role to sysfs as
echo "role" > /sys/class/usb_role/usb2-0-role-switch/role
with role being one of {device, host, none}.
Further patches will enable automatic role switching via the 'cros_ec_typec'
driver which is currently broken on Smaug.
Signed-off-by: Diogo Ivo <diogo.ivo@...nico.ulisboa.pt>
---
Changes in v2:
- Remove DT patches already taken to be upstreamed
- Add standardization between Tegra210 and Tegra186
- Address review comments from v1, detailed descriptions in each patch
- Link to v1: https://lore.kernel.org/r/20251204-diogo-tegra_phy-v1-0-51a2016d0be8@tecnico.ulisboa.pt
---
Diogo Ivo (6):
phy: tegra: xusb: Fix USB2 port regulator disable logic
usb: xhci: tegra: Remove redundant mutex when setting phy mode
phy: tegra: xusb: Fix ordering issue when switching roles on USB2 ports
phy: tegra: xusb: Add ID override support to padctl
phy: tegra: xusb: Move .set_mode() to a shared location
phy: tegra: xusb: Move T186 .set_mode() to common implementation
drivers/phy/tegra/xusb-tegra186.c | 73 +++++----------------------------
drivers/phy/tegra/xusb-tegra210.c | 42 +------------------
drivers/phy/tegra/xusb.c | 80 +++++++++++++++++++++++++++++++++++++
drivers/phy/tegra/xusb.h | 4 ++
drivers/usb/gadget/udc/tegra-xudc.c | 4 ++
drivers/usb/host/xhci-tegra.c | 14 ++++---
include/linux/phy/tegra/xusb.h | 3 ++
7 files changed, 111 insertions(+), 109 deletions(-)
---
base-commit: b02a5530af8abe0d3cd4852ba48990716e962934
change-id: 20251201-diogo-tegra_phy-86c89cab7377
Best regards,
--
Diogo Ivo <diogo.ivo@...nico.ulisboa.pt>
Powered by blists - more mailing lists