]> www.infradead.org Git - users/willy/linux.git/commit
usb: musb: poll ID pin status in dual-role mode in mpfs glue layer
authorValentina Fernandez <valentina.fernandezalanis@microchip.com>
Tue, 6 Aug 2024 13:14:07 +0000 (14:14 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 13 Aug 2024 08:37:18 +0000 (10:37 +0200)
commit5cffefa1c1ede3e90a9b09f964bfd5c5e82a1041
treec6e6866ac9d0fc79918f1033dca15f7976fd3275
parent8952e50e16e383ff7fce873ac7676e0d68a3552b
usb: musb: poll ID pin status in dual-role mode in mpfs glue layer

Similar to other platforms using the MUSB driver, PolarFire SoC lacks
an ID pin interrupt event, preventing several OTG-critical status
change events from being exposed. We need to rely on polling to detect
USB attach events for the dual-role port.

The otg state machine implementation is based on Texas Instruments
DA8xx/OMAP-L1x glue layer.

This has been tested on BeagleV-Fire with couple of devices in host mode
and with the Ethernet gadget driver in peripheral mode, in a wide
variety of plug orders.

Signed-off-by: Valentina Fernandez <valentina.fernandezalanis@microchip.com>
Link: https://lore.kernel.org/r/20240806131407.1542306-1-valentina.fernandezalanis@microchip.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/musb/mpfs.c