linux/drivers/usb/typec
Kyle Tso cd099cde4e usb: typec: tcpm: Support multiple capabilities
Refactor tcpm_fw_get_caps to support the multiple pd capabilities got
from fwnode. For backward compatibility, the original single capability
is still applicable. The fetched data is stored in the newly defined
structure "pd_data" and there is an array "pd_list" to store the
pointers to them. A dedicated array "pds" is used to store the handles
of the registered usb_power_delivery instances.

Also implement the .pd_get and .pd_set ops which are introduced in
commit a7cff92f06 ("usb: typec: USB Power Delivery helpers for ports
and partners"). Once the .pd_set is called, the current capability will
be updated and state machine will re-negotiate the power contract if
possible.

Signed-off-by: Kyle Tso <kyletso@google.com>
Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Link: https://lore.kernel.org/r/20231216104630.2720818-3-kyletso@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-01-04 16:00:23 +01:00
..
altmodes USB/Thunderbolt changes for 6.7-rc1 2023-11-03 16:00:42 -10:00
mux usb: typec: mux: add Qualcomm WCD939X USB SubSystem Altmode Mux driver 2023-12-15 13:54:13 +01:00
tcpm usb: typec: tcpm: Support multiple capabilities 2024-01-04 16:00:23 +01:00
tipd usb: typec: tipd: add patch update support for tps6598x 2024-01-02 14:41:30 +01:00
ucsi Merge 6.6-rc6 into usb-next 2023-10-16 17:36:12 +02:00
anx7411.c usb: typec: drop check because i2c_unregister_device() is NULL safe 2023-10-02 13:56:37 +02:00
bus.c usb: typec: bus: verify partner exists in typec_altmode_attention 2023-08-22 14:44:28 +02:00
bus.h USB: mark all struct bus_type as const 2023-03-23 13:22:00 +01:00
class.c Revert "usb: typec: class: fix typec_altmode_put_partner to put plugs" 2024-01-02 14:34:31 +01:00
class.h usb: typec: Link enumerated USB devices with Type-C partner 2023-10-16 20:02:36 +02:00
hd3ss3220.c usb: Switch i2c drivers back to use .probe() 2023-05-29 15:53:11 +01:00
Kconfig usb: typec: qcom: Add Qualcomm PMIC Type-C driver 2023-05-13 19:03:46 +09:00
Makefile usb: typec: qcom: Add Qualcomm PMIC Type-C driver 2023-05-13 19:03:46 +09:00
mux.c usb: typec: mux: Remove alt mode parameters from the API 2023-05-29 15:17:52 +01:00
mux.h usb: typec: mux: Introduce indirection 2022-04-26 13:47:13 +02:00
pd.c usb: typec: fixed a typo 2023-12-15 13:56:07 +01:00
pd.h usb: typec: Separate USB Power Delivery from USB Type-C 2022-06-12 06:49:47 +02:00
port-mapper.c usb: typec: Link enumerated USB devices with Type-C partner 2023-10-16 20:02:36 +02:00
retimer.c drivers: remove struct module * setting from struct class 2023-03-17 15:16:27 +01:00
retimer.h usb: typec: Make bus switch code retimer-aware 2023-01-17 17:29:00 +01:00
rt1719.c usb: Switch i2c drivers back to use .probe() 2023-05-29 15:53:11 +01:00
stusb160x.c usb: Switch i2c drivers back to use .probe() 2023-05-29 15:53:11 +01:00
wusb3801.c usb: Switch i2c drivers back to use .probe() 2023-05-29 15:53:11 +01:00