drv_tinyusb.c 764 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /*
  2. * Copyright (c) 2021 hpmicro
  3. *
  4. * SPDX-License-Identifier: BSD-3-Clause
  5. *
  6. */
  7. #include <tusb.h>
  8. #include "board.h"
  9. extern void tud_descriptor_set_serial(char *serial_number, uint8_t length);
  10. TU_ATTR_WEAK void generate_serial_number(void)
  11. {
  12. char serial_number[32] = {"00001"};
  13. tud_descriptor_set_serial(serial_number, sizeof(serial_number));
  14. }
  15. TU_ATTR_WEAK int tusb_board_init(void)
  16. {
  17. generate_serial_number();
  18. return 0;
  19. }
  20. TU_ATTR_WEAK void isr_usb0(void)
  21. {
  22. rt_interrupt_enter();
  23. dcd_int_handler(0);
  24. rt_interrupt_leave();
  25. }
  26. SDK_DECLARE_EXT_ISR_M(IRQn_USB0, isr_usb0)
  27. TU_ATTR_WEAK void isr_usb1(void)
  28. {
  29. rt_interrupt_enter();
  30. dcd_int_handler(1);
  31. rt_interrupt_leave();
  32. }
  33. SDK_DECLARE_EXT_ISR_M(IRQn_USB1, isr_usb1)