public inbox for linux-usb@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/5] Fixes to Tegra USB role switching and Smaug USB role switching enablement
@ 2025-12-04 21:27 Diogo Ivo
  2025-12-04 21:27 ` [PATCH 1/5] usb: host: tegra: Remove redundant pm_runtime_mark_last_busy() call Diogo Ivo
                   ` (7 more replies)
  0 siblings, 8 replies; 31+ messages in thread
From: Diogo Ivo @ 2025-12-04 21:27 UTC (permalink / raw)
  To: Mathias Nyman, Greg Kroah-Hartman, Thierry Reding,
	Jonathan Hunter, JC Kuo, Vinod Koul, Kishon Vijay Abraham I,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley
  Cc: linux-usb, linux-tegra, linux-kernel, linux-phy, devicetree,
	Diogo Ivo

Hello,

This patch series contains two fixes for USB role switching on the
Tegra210 SoC, as well as enabling this feature on the Pixel C.

The first patch addresses a wrong check on the logic that disables the
VBUS regulator.

The second patch guarantees proper ordering of events when switching PHY
roles.

The third and fourth patches then add the necessary nodes and properties
in the Smaug DT in order for role switching to work. Currently 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.

N.B: This series does not add a 'connector' node under the 'usb-role-switch'
property added on patch 04/04 because for Smaug the connector should instead
be under the node for 'cros_ec_typec' node and as stated above this
driver is currently broken for this device. If it is deemed better to
describe it but explicitly disable the node let me know and I will send
out a v2.

Signed-off-by: Diogo Ivo <diogo.ivo@tecnico.ulisboa.pt>
---
Diogo Ivo (5):
      usb: host: tegra: Remove redundant pm_runtime_mark_last_busy() call
      phy: tegra: xusb: Fix USB2 port regulator disable logic
      phy: tegra: xusb: Fix ordering issue when switching roles on USB2 ports
      arm64: tegra: smaug: Complete and enable tegra-udc node
      arm64: tegra: smaug: Add usb-role-switch support

 arch/arm64/boot/dts/nvidia/tegra210-smaug.dts | 13 +++++++++++++
 drivers/phy/tegra/xusb-tegra210.c             |  5 +++--
 drivers/phy/tegra/xusb.c                      | 23 +++++++++++++++++++++++
 drivers/phy/tegra/xusb.h                      |  1 +
 drivers/usb/gadget/udc/tegra-xudc.c           |  4 ++++
 drivers/usb/host/xhci-tegra.c                 | 17 ++++++++++-------
 include/linux/phy/tegra/xusb.h                |  1 +
 7 files changed, 55 insertions(+), 9 deletions(-)
---
base-commit: a8817ff3b5cd99b0a5af57a92d1a3a7980612550
change-id: 20251201-diogo-tegra_phy-86c89cab7377

Best regards,
-- 
Diogo Ivo <diogo.ivo@tecnico.ulisboa.pt>


^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2026-01-19 14:31 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-04 21:27 [PATCH 0/5] Fixes to Tegra USB role switching and Smaug USB role switching enablement Diogo Ivo
2025-12-04 21:27 ` [PATCH 1/5] usb: host: tegra: Remove redundant pm_runtime_mark_last_busy() call Diogo Ivo
2025-12-07 10:37   ` Diogo Ivo
2025-12-04 21:27 ` [PATCH 2/5] phy: tegra: xusb: Fix USB2 port regulator disable logic Diogo Ivo
2025-12-24  7:27   ` Vinod Koul
2026-01-13 13:30     ` Diogo Ivo
2026-01-13 12:01   ` Jon Hunter
2026-01-13 13:59     ` Diogo Ivo
2026-01-13 14:42       ` Jon Hunter
2026-01-13 15:05         ` Diogo Ivo
2025-12-04 21:27 ` [PATCH 3/5] phy: tegra: xusb: Fix ordering issue when switching roles on USB2 ports Diogo Ivo
2026-01-13 11:35   ` Jon Hunter
2026-01-13 11:44     ` Jon Hunter
2026-01-13 13:59       ` Diogo Ivo
2026-01-13 11:56   ` Jon Hunter
2026-01-13 14:05     ` Diogo Ivo
2026-01-13 14:48       ` Jon Hunter
2026-01-13 15:10         ` Diogo Ivo
2026-01-13 16:36           ` Jon Hunter
2026-01-15 11:06     ` Diogo Ivo
2026-01-19 14:31       ` Jon Hunter
2025-12-04 21:27 ` [PATCH 4/5] arm64: tegra: smaug: Complete and enable tegra-udc node Diogo Ivo
2025-12-04 21:27 ` [PATCH 5/5] arm64: tegra: smaug: Add usb-role-switch support Diogo Ivo
2026-01-12 22:03   ` Jon Hunter
2026-01-13 14:20     ` Diogo Ivo
2026-01-13 14:49       ` Jon Hunter
2026-01-13 15:11         ` Diogo Ivo
2025-12-05 22:36 ` [PATCH 0/5] Fixes to Tegra USB role switching and Smaug USB role switching enablement Rob Herring
2026-01-13 10:58   ` Jon Hunter
2026-01-12 13:46 ` Diogo Ivo
2026-01-17  0:25 ` (subset) " Thierry Reding

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox