public inbox for linux-usb@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/4] usb: typec: USB Modes
@ 2024-10-09 15:45 Heikki Krogerus
  2024-10-09 15:45 ` [PATCH v2 1/4] usb: typec: Add attribute file showing the supported USB modes of the port Heikki Krogerus
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Heikki Krogerus @ 2024-10-09 15:45 UTC (permalink / raw)
  To: Greg Kroah-Hartman
  Cc: Abhishek Pandit-Subedi, Dmitry Baryshkov, Łukasz Bartosik,
	Benson Leung, Jameson Thies, linux-usb

Hi,

Changed since v1:
- Leaving the usb_mode file hidden if the usb_ capabilities are not known - Dmitriy
- Fixed kernel doc warning - kernel test robot


This was originally a proposal of mine that I posted back in 2019 as
an RFC [1].

The goal is to expose the USB Mode - USB Mode as defined in the USB
Type-C and USB Power Delivery specifications - to the user via sysfs.

With ports the mode will show the supported and the default USB Mode,
which is the mode that is (or should be) used in the next Enter_USB
Message.

With the partners the mode will show similarly the supported USB
modes, and also the active mode. Changing the active mode should cause
Data Reset (as described in the USB Power Delivery spec.). This should
happen even if there is no active USB Mode (in Alternate Mode).

I've modified the original RFC patches based on comments I've received
(offline). The major change is that I renamed the sysfs attribute file
for the port from "usb_mode" to "usb_capability".

I'm taking the USB mode in use in the UCSI driver with these, but I
did not add support for the "Set USB" UCSI command yet. I have no way
of testing it. Also, I don't really like that we have to construct the
Enter_USB Message from the abstracted information that UCSI supplies.
The interface should supply the Enter_USB Message that was used as is.

[1] https://lore.kernel.org/linux-usb/20191230152857.43917-1-heikki.krogerus@linux.intel.com/

Heikki Krogerus (4):
  usb: typec: Add attribute file showing the supported USB modes of the
    port
  usb: typec: Add attribute file showing the USB Modes of the partner
  usb: typec: ucsi: Supply the USB capabilities to the ports
  usb: typec: ucsi: Add support for the partner USB Modes

 Documentation/ABI/testing/sysfs-class-typec |  27 +++
 drivers/usb/typec/class.c                   | 204 +++++++++++++++++++-
 drivers/usb/typec/class.h                   |   3 +
 drivers/usb/typec/ucsi/ucsi.c               |  15 ++
 drivers/usb/typec/ucsi/ucsi.h               |  10 +
 include/linux/usb/typec.h                   |  22 +++
 6 files changed, 277 insertions(+), 4 deletions(-)

-- 
2.45.2


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

end of thread, other threads:[~2024-10-10 10:52 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-09 15:45 [PATCH v2 0/4] usb: typec: USB Modes Heikki Krogerus
2024-10-09 15:45 ` [PATCH v2 1/4] usb: typec: Add attribute file showing the supported USB modes of the port Heikki Krogerus
2024-10-09 15:45 ` [PATCH v2 2/4] usb: typec: Add attribute file showing the USB Modes of the partner Heikki Krogerus
2024-10-09 22:16   ` Abhishek Pandit-Subedi
2024-10-10 10:52     ` Heikki Krogerus
2024-10-09 15:45 ` [PATCH v2 3/4] usb: typec: ucsi: Supply the USB capabilities to the ports Heikki Krogerus
2024-10-09 15:45 ` [PATCH v2 4/4] usb: typec: ucsi: Add support for the partner USB Modes Heikki Krogerus

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