linux/drivers/usb
Linyu Yuan 87d0e2f41b usb: typec: ucsi: add a common function ucsi_unregister_connectors()
In error path of ucsi_init(), it will unregister all valid ucsi connectors,
and similar operation also happen in ucsi_unregister(),
add a common function ucsi_unregister_connectors() for two places,
inside this function, if con->wq is NULL, it will break the loop,
if other kind of error happen after con->wq allocated,
ucsi/typec related API is safe to unregister.

Also in ucsi_init(), it allocate number of (ucsi->cap.num_connectors + 1)
connectors, there is one extra as the ending,
ucsi_unregister_connectors() is safe to unregister all ucsi connectors
according ucsi->cap.num_connectors,
remove the extra one connector to save memory.

Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Linyu Yuan <quic_linyyuan@quicinc.com>
Link: https://lore.kernel.org/r/1650881886-25530-2-git-send-email-quic_linyyuan@quicinc.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-04-26 13:44:57 +02:00
..
atm usb: remove third argument of usb_maxpacket() 2022-04-23 10:33:53 +02:00
c67x00 usb: remove third argument of usb_maxpacket() 2022-04-23 10:33:53 +02:00
cdns3 Linux 5.17-rc2 2022-01-31 10:13:10 +01:00
chipidea usb: udc: Fix typo in comment 2022-01-31 14:24:39 +01:00
class usb: usbtmc: Fix bug in pipe direction for control transfers 2022-03-15 18:45:31 +01:00
common usb: common: usb-conn-gpio: Make VBUS supply completely optional 2022-03-15 18:22:15 +01:00
core usb: remove third argument of usb_maxpacket() 2022-04-23 10:33:53 +02:00
dwc2 USB: dwc2: Add OTG support for Ingenic SoCs. 2022-04-21 19:22:00 +02:00
dwc3 usb: dwc3: pci: Fix pm_runtime_get_sync() error checking 2022-04-23 10:33:52 +02:00
early usb: early: xhci-dbc: Fix xdbc number parsing 2022-03-15 18:20:34 +01:00
gadget usb: gadget: net2272: clean up comments 2022-04-21 19:20:42 +02:00
host usb: remove third argument of usb_maxpacket() 2022-04-23 10:33:53 +02:00
image scsi: Remove drivers/scsi/scsi.h 2022-02-22 21:11:02 -05:00
isp1760 usb: remove third argument of usb_maxpacket() 2022-04-23 10:33:53 +02:00
misc usb: remove third argument of usb_maxpacket() 2022-04-23 10:33:53 +02:00
mon
mtu3 usb: mtu3: set interval of FS intr and isoc endpoint 2021-12-21 09:05:45 +01:00
musb usb: musb: mediatek: Use clk_bulk API to simplify clock operations 2022-04-21 19:23:46 +02:00
phy usb: Remove redundant 'flush_workqueue()' calls 2021-11-17 14:36:57 +01:00
renesas_usbhs usb: renesas_usbhs: Use platform_get_irq() to get the interrupt 2021-12-21 08:51:57 +01:00
roles usb: roles: add helper usb_role_string() 2021-05-27 09:17:18 +02:00
serial TTY/Serial driver changes for 5.18-rc1 2022-03-28 13:00:51 -07:00
storage usb: remove third argument of usb_maxpacket() 2022-04-23 10:33:53 +02:00
typec usb: typec: ucsi: add a common function ucsi_unregister_connectors() 2022-04-26 13:44:57 +02:00
usbip usb: usbip: add missing device lock on tweak configuration cmd 2022-04-21 19:01:25 +02:00
Kconfig usb: remove reference to deleted config STB03xxx 2021-08-18 15:32:19 +02:00
Makefile usb: host: remove line for obsolete config USB_HWA_HCD 2021-08-18 15:32:19 +02:00
usb-skeleton.c usb: usb-skeleton: Update min() to min_t() 2021-10-05 12:56:48 +02:00