linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 0/6] usb: Linking ports to their Type-C connectors
@ 2021-04-01 10:58 Heikki Krogerus
  2021-04-01 10:58 ` [PATCH v5 1/6] usb: typec: Organize the private headers properly Heikki Krogerus
                   ` (5 more replies)
  0 siblings, 6 replies; 9+ messages in thread
From: Heikki Krogerus @ 2021-04-01 10:58 UTC (permalink / raw)
  To: Greg Kroah-Hartman; +Cc: Alan Stern, Guenter Roeck, linux-usb, linux-kernel

Hi,

I have to use IS_REACHABLE() instead of IS_ENABLED() also in
include/linux/usb.h. Otherwise compilation will fail if the Type-C
class is build-in while USB is a module.

I'm sorry for re-sending these so fast, immediately after v4. Normally
I would wait, but I'll be taking a short vacation starting from right
now, and I'm still hoping to get these into v5.13.


v4 cover letter:

One more version. I used #ifdef when I should have used #if
IS_DEFINED(). Thanks Guenter for pointing that out.

I'm sending this version right away because of the holidays. I'm not
changing anything else except that one fix.


v3: cover letter:

Third version: ifdefs now in the header files as they should be.


v2 cover letter:

This is the second version of this series. The "Iterator for ports"
patch is now moved to the end of the series (5/6).

I'm now using usb_for_each_dev() in usb_for_each_port like Alan
suggested, and I'm now using usb_port_peer_mutex to lock the ports
while we're dealing with them in __each_hub().


The original cover letter:

Adding a simple function typec_link_port() that can be used to create
a symlink "connector" that points to the USB Type-C connector of a
port. It is used with USB ports initially, but hopefully later also
with other things like DisplayPorts.

Being able to see which connector is connected to a port is important
in general, but it is really important when for example the data or
power role of a device needs to swapped. The user probable wants to
know which USB device is disconnected if role swap on a USB Type-C
connector is executed.

Hope these are OK.

thanks,

Heikki Krogerus (6):
  usb: typec: Organize the private headers properly
  usb: typec: Declare the typec_class static
  usb: typec: Port mapping utility
  usb: Link the ports to the connectors they are attached to
  usb: Iterator for ports
  usb: typec: Link all ports during connector registration

 Documentation/ABI/testing/sysfs-bus-usb |   9 +
 drivers/usb/core/port.c                 |   3 +
 drivers/usb/core/usb.c                  |  46 ++++
 drivers/usb/typec/Makefile              |   2 +-
 drivers/usb/typec/bus.c                 |   2 +
 drivers/usb/typec/bus.h                 |  19 +-
 drivers/usb/typec/class.c               | 101 +++------
 drivers/usb/typec/class.h               |  85 ++++++++
 drivers/usb/typec/mux.c                 |   4 +-
 drivers/usb/typec/mux.h                 |  21 ++
 drivers/usb/typec/port-mapper.c         | 277 ++++++++++++++++++++++++
 include/linux/usb.h                     |   9 +
 include/linux/usb/typec.h               |  13 ++
 13 files changed, 495 insertions(+), 96 deletions(-)
 create mode 100644 drivers/usb/typec/class.h
 create mode 100644 drivers/usb/typec/mux.h
 create mode 100644 drivers/usb/typec/port-mapper.c

-- 
2.30.2


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

end of thread, other threads:[~2021-04-07  6:49 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-01 10:58 [PATCH v5 0/6] usb: Linking ports to their Type-C connectors Heikki Krogerus
2021-04-01 10:58 ` [PATCH v5 1/6] usb: typec: Organize the private headers properly Heikki Krogerus
2021-04-01 10:58 ` [PATCH v5 2/6] usb: typec: Declare the typec_class static Heikki Krogerus
2021-04-01 10:58 ` [PATCH v5 3/6] usb: typec: Port mapping utility Heikki Krogerus
2021-04-05  7:09   ` Greg Kroah-Hartman
2021-04-07  6:49     ` Heikki Krogerus
2021-04-01 10:58 ` [PATCH v5 4/6] usb: Link the ports to the connectors they are attached to Heikki Krogerus
2021-04-01 10:58 ` [PATCH v5 5/6] usb: Iterator for ports Heikki Krogerus
2021-04-01 10:58 ` [PATCH v5 6/6] usb: typec: Link all ports during connector registration Heikki Krogerus

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).