mirror of
https://github.com/Rockbox/rockbox.git
synced 2026-10-10 08:03:04 -04:00
usb_drv_exit() masks the UDC interrupt in the interrupt controller at every disconnect, but only usb_init_device(), once at boot, unmasked it. After the first unplug the UDC raised no more interrupts: on the next plug the charging icon showed - plug detection polls VBUS_STS - but the host's reset and requests went unanswered, so the device never enumerated and the USB screen never came up. Unmask it in usb_drv_init(), which runs at every connect, so that it pairs with the mask in usb_drv_exit(). The interrupt is now masked while USB is off, at boot too; nothing needs it then. Tested on a Samsung YP-CP3: it enumerates at every replug. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Change-Id: Iab7b7e93c140990c39b0e6dfae23ffcc829f6ab2 |
||
|---|---|---|
| .. | ||
| arm | ||
| coldfire | ||
| hosted | ||
| mips | ||