shared/tinyusb: Fix build errors with CDC support disabled.

This commit makes possible building MicroPython with USB CDC support
disabled.

The original code does support such a configuration but missed a few
spots where build errors would arise.  These changes fix the remaining
issues, fixing also warnings caused by the changes needed to make the
build succeed.

Signed-off-by: Alessandro Gatti <a.gatti@frob.it>
This commit is contained in:
Alessandro Gatti
2025-07-18 16:36:07 +02:00
committed by Damien George
parent c7c0ad222e
commit 5f3e6b5b53
2 changed files with 5 additions and 0 deletions

View File

@@ -38,13 +38,16 @@
#ifndef NO_QSTR
#include "tusb.h"
#include "device/dcd.h"
#include "class/cdc/cdc_device.h"
#endif
// Initialise TinyUSB device.
static inline void mp_usbd_init_tud(void) {
tusb_init();
#if MICROPY_HW_USB_CDC
tud_cdc_configure_fifo_t cfg = { .rx_persistent = 0, .tx_persistent = 1 };
tud_cdc_configure_fifo(&cfg);
#endif
}
// Run the TinyUSB device task

View File

@@ -267,9 +267,11 @@ static uint16_t runtime_dev_open(uint8_t rhport, tusb_desc_interface_t const *it
}
// If TinyUSB built-in drivers are enabled, don't claim any interface in the built-in range
#if USBD_ITF_BUILTIN_MAX > 0
if (mp_usb_device_builtin_enabled(usbd) && itf_desc->bInterfaceNumber < USBD_ITF_BUILTIN_MAX) {
return 0;
}
#endif
// Determine the total descriptor length of the interface(s) we are going to claim
uint8_t assoc_itf_count = _runtime_dev_count_itfs(itf_desc);