machine/usb: support bidirectional endpoints by dynamic registration (#5447)

* machine/usb: support bidirectional endpoints by dynamic registration
This commit is contained in:
sago35
2026-06-08 03:33:18 +09:00
committed by GitHub
parent 594be6db63
commit ca584de84a
6 changed files with 26 additions and 53 deletions
-11
View File
@@ -22,17 +22,6 @@ var (
epinen uint32
epouten uint32
easyDMABusy volatile.Register8
endPoints = []uint32{
usb.CONTROL_ENDPOINT: usb.ENDPOINT_TYPE_CONTROL,
usb.CDC_ENDPOINT_ACM: (usb.ENDPOINT_TYPE_INTERRUPT | usb.EndpointIn),
usb.CDC_ENDPOINT_OUT: (usb.ENDPOINT_TYPE_BULK | usb.EndpointOut),
usb.CDC_ENDPOINT_IN: (usb.ENDPOINT_TYPE_BULK | usb.EndpointIn),
usb.HID_ENDPOINT_IN: (usb.ENDPOINT_TYPE_DISABLE), // Interrupt In
usb.HID_ENDPOINT_OUT: (usb.ENDPOINT_TYPE_DISABLE), // Interrupt Out
usb.MIDI_ENDPOINT_IN: (usb.ENDPOINT_TYPE_DISABLE), // Bulk In
usb.MIDI_ENDPOINT_OUT: (usb.ENDPOINT_TYPE_DISABLE), // Bulk Out
}
)
// enterCriticalSection is used to protect access to easyDMA - only one thing