linux/drivers/usb/typec
RD Babiera f34bfcc77b usb: typec: tcpm: properly deliver cable vdms to altmode drivers
tcpm_handle_vdm_request delivers messages to the partner altmode or the
cable altmode depending on the SVDM response type, which is incorrect.
The partner or cable should be chosen based on the received message type
instead.

Also add this filter to ADEV_NOTIFY_USB_AND_QUEUE_VDM, which is used when
the Enter Mode command is responded to by a NAK on SOP or SOP' and when
the Exit Mode command is responded to by an ACK on SOP.

Fixes: 7e7877c55e ("usb: typec: tcpm: add alt mode enter/exit/vdm support for sop'")
Cc: stable@vger.kernel.org
Signed-off-by: RD Babiera <rdbabiera@google.com>
Reviewed-by: Badhri Jagan Sridharan <badhri@google.com>
Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Link: https://lore.kernel.org/r/20250821203759.1720841-2-rdbabiera@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-09-06 15:30:26 +02:00
..
altmodes Merge merge point of tag 'usb-6.16-rc5' into usb-next 2025-07-05 07:52:33 +02:00
mux usb: typec: intel_pmc_mux: Defer probe if SCU IPC isn't present 2025-06-19 12:28:06 +02:00
tcpm usb: typec: tcpm: properly deliver cable vdms to altmode drivers 2025-09-06 15:30:26 +02:00
tipd usb: typec: tipd: fix typo in TPS_STATUS_HIGH_VOLAGE_WARNING macro 2025-05-23 12:37:31 +02:00
ucsi usb: typec: ucsi: Update power_supply on power role change 2025-07-21 16:33:23 +02: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
anx7411.c usb: typec: anx7411: fix OF node reference leaks in anx7411_typec_switch_probe() 2024-12-04 16:25:54 +01:00
bus.c USB: typec: fix const issue in typec_match() 2025-05-23 12:36:40 +02:00
bus.h USB: mark all struct bus_type as const 2023-03-23 13:22:00 +01:00
class.c usb: typec: class: Unlocked on error in typec_register_partner() 2025-04-15 14:31:58 +02:00
class.h usb: typec: class: Fix NULL pointer access 2025-04-11 14:57:36 +02:00
hd3ss3220.c usb: typec: hd3ss3220: support configuring role preference based on fwnode property and typec_operation 2024-12-24 08:56:04 +01:00
mux.c usb: typec: mux: do not return on EOPNOTSUPP in {mux, switch}_set 2025-04-11 16:08:32 +02:00
mux.h
pd.c usb: typec: constify the struct device_type usage 2024-02-19 09:35:46 +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: Connect Type-C port with associated USB4 port 2025-04-17 12:21:45 +03:00
retimer.c usb: typec: constify struct class usage 2024-03-02 20:21:06 +01:00
retimer.h usb: typec: Make bus switch code retimer-aware 2023-01-17 17:29:00 +01:00
rt1719.c power: supply: Change usb_types from an array into a bitmask 2024-09-03 23:20:28 +02:00
stusb160x.c usb: typec: stusb160x: Make use of i2c_get_match_data() 2024-10-04 15:12:15 +02:00
wusb3801.c usb: Switch i2c drivers back to use .probe() 2023-05-29 15:53:11 +01:00