furi-hal-usb_i.h 562 B

12345678910111213141516171819202122232425262728
  1. #pragma once
  2. #include "usb.h"
  3. #define USB_EP0_SIZE 8
  4. /* String descriptors */
  5. enum UsbDevDescStr{
  6. UsbDevLang = 0,
  7. UsbDevManuf = 1,
  8. UsbDevProduct = 2,
  9. UsbDevSerial = 3,
  10. };
  11. struct UsbInterface {
  12. void (*init)(usbd_device *dev, struct UsbInterface* intf);
  13. void (*deinit)(usbd_device *dev);
  14. void (*wakeup)(usbd_device *dev);
  15. void (*suspend)(usbd_device *dev);
  16. struct usb_device_descriptor* dev_descr;
  17. void* str_manuf_descr;
  18. void* str_prod_descr;
  19. void* str_serial_descr;
  20. void* cfg_descr;
  21. };