linux/drivers/usb/typec
Sebastian Reichel 309b6341d5 usb: typec: fusb302: Revert incorrect threaded irq fix
The fusb302 irq handler has been carefully optimized by Hans de Goede in
commit 207338ec5a ("usb: typec: fusb302: Improve suspend/resume
handling"). A recent 'fix' undid most of that work to avoid a virtio-gpio
driver bug.

This reverts the incorrect fix, since it is of very low quality. It
reverts the quirks from Hans change (and thus reintroduces the problems
fixed by Hans) while keeping the overhead from the original change.

The proper fix to support using fusb302 with an interrupt line provided
by virtio-gpio must be implemented in the virtio driver instead, which
should support disabling the IRQ from the fusb302 interrupt routine.

Cc: Hans de Goede <hansg@kernel.org>
Cc: Yongbo Zhang <giraffesnn123@gmail.com>
Fixes: 1c2d81bded ("usb: typec: fusb302: fix scheduling while atomic when using virtio-gpio")
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
Link: https://lore.kernel.org/r/20250818-fusb302-unthreaded-irq-v1-1-3a9a11a9f56f@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-08-19 12:29:33 +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: fusb302: Revert incorrect threaded irq fix 2025-08-19 12:29:33 +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
Makefile
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
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
pd.h
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
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