|
136 | 136 | #define MICROPY_HW_ENABLE_USB (0) |
137 | 137 | #endif |
138 | 138 |
|
| 139 | +#if MICROPY_HW_ENABLE_USB |
| 140 | +#define MICROPY_HW_ENABLE_USBDEV (1) |
| 141 | +#define MICROPY_HW_USB_CDC (1) |
| 142 | +#define MICROPY_HW_USB_FS (1) |
| 143 | + |
| 144 | +// Select whether TinyUSB or legacy STM stack is used to provide USB. |
| 145 | +#ifndef MICROPY_HW_TINYUSB_STACK |
| 146 | +#define MICROPY_HW_TINYUSB_STACK (0) |
| 147 | +#endif |
| 148 | + |
| 149 | +// Central definition for STM USB stack (when not using TinyUSB) |
| 150 | +#define MICROPY_HW_STM_USB_STACK (MICROPY_HW_ENABLE_USB && !MICROPY_HW_TINYUSB_STACK) |
| 151 | +#endif // MICROPY_HW_ENABLE_USB |
| 152 | + |
139 | 153 | // Whether to enable the PA0-PA3 servo driver, exposed as pyb.Servo |
140 | 154 | #ifndef MICROPY_HW_ENABLE_SERVO |
141 | 155 | #define MICROPY_HW_ENABLE_SERVO (0) |
|
256 | 270 | // Windows needs a different PID to distinguish different device configurations. |
257 | 271 | #ifndef MICROPY_HW_USB_VID |
258 | 272 | #define MICROPY_HW_USB_VID (0xf055) |
| 273 | +#define MICROPY_HW_USB_PID (0x9802) |
| 274 | + |
259 | 275 | #define MICROPY_HW_USB_PID_CDC_MSC (0x9800) |
260 | 276 | #define MICROPY_HW_USB_PID_CDC_HID (0x9801) |
261 | 277 | #define MICROPY_HW_USB_PID_CDC (0x9802) |
|
369 | 385 | #endif |
370 | 386 | #define MICROPY_HW_MAX_LPUART (0) |
371 | 387 |
|
| 388 | +#define CFG_TUSB_MCU OPT_MCU_STM32F4 |
| 389 | + |
372 | 390 | // Configuration for STM32F7 series |
373 | 391 | #elif defined(STM32F7) |
374 | 392 |
|
|
384 | 402 | #define MICROPY_HW_MAX_UART (8) |
385 | 403 | #define MICROPY_HW_MAX_LPUART (0) |
386 | 404 |
|
| 405 | +#define CFG_TUSB_MCU OPT_MCU_STM32F7 |
| 406 | + |
387 | 407 | // Configuration for STM32G0 series |
388 | 408 | #elif defined(STM32G0) |
389 | 409 |
|
|
394 | 414 | #define MICROPY_HW_MAX_UART (6) |
395 | 415 | #define MICROPY_HW_MAX_LPUART (2) |
396 | 416 |
|
| 417 | +#define CFG_TUSB_MCU OPT_MCU_STM32G0 |
| 418 | + |
397 | 419 | // Configuration for STM32G4 series |
398 | 420 | #elif defined(STM32G4) |
399 | 421 |
|
|
404 | 426 | #define MICROPY_HW_MAX_UART (5) // UART1-5 + LPUART1 |
405 | 427 | #define MICROPY_HW_MAX_LPUART (1) |
406 | 428 |
|
| 429 | +#define CFG_TUSB_MCU OPT_MCU_STM32G4 |
| 430 | + |
407 | 431 | // Configuration for STM32H5 series |
408 | 432 | #elif defined(STM32H5) |
409 | 433 |
|
|
414 | 438 | #define MICROPY_HW_MAX_UART (12) |
415 | 439 | #define MICROPY_HW_MAX_LPUART (1) |
416 | 440 |
|
| 441 | +#define CFG_TUSB_MCU OPT_MCU_STM32H5 |
| 442 | + |
417 | 443 | // Configuration for STM32H7A3/B3 series |
418 | 444 | #elif defined(STM32H7A3xx) || defined(STM32H7A3xxQ) || \ |
419 | 445 | defined(STM32H7B3xx) || defined(STM32H7B3xxQ) |
|
425 | 451 | #define MICROPY_HW_MAX_UART (10) |
426 | 452 | #define MICROPY_HW_MAX_LPUART (1) |
427 | 453 |
|
| 454 | +#define CFG_TUSB_MCU OPT_MCU_STM32H7 |
| 455 | + |
428 | 456 | // Configuration for STM32H7 series |
429 | 457 | #elif defined(STM32H7) |
430 | 458 |
|
|
435 | 463 | #define MICROPY_HW_MAX_UART (8) |
436 | 464 | #define MICROPY_HW_MAX_LPUART (1) |
437 | 465 |
|
| 466 | +#define CFG_TUSB_MCU OPT_MCU_STM32H7 |
| 467 | + |
438 | 468 | #if defined(MICROPY_HW_ANALOG_SWITCH_PA0) \ |
439 | 469 | || defined(MICROPY_HW_ANALOG_SWITCH_PA1) \ |
440 | 470 | || defined(MICROPY_HW_ANALOG_SWITCH_PC2) \ |
|
454 | 484 | #define MICROPY_HW_MAX_UART (5) |
455 | 485 | #define MICROPY_HW_MAX_LPUART (1) |
456 | 486 |
|
| 487 | +#define CFG_TUSB_MCU OPT_MCU_STM32L0 |
| 488 | + |
457 | 489 | // Configuration for STM32L1 series |
458 | 490 | #elif defined(STM32L1) |
459 | 491 | #define MP_HAL_UNIQUE_ID_ADDRESS (UID_BASE) |
|
464 | 496 | #define MICROPY_HW_MAX_UART (5) |
465 | 497 | #define MICROPY_HW_MAX_LPUART (0) |
466 | 498 |
|
| 499 | +#define CFG_TUSB_MCU OPT_MCU_STM32L1 |
| 500 | + |
467 | 501 | // Configuration for STM32L4 series |
468 | 502 | #elif defined(STM32L4) |
469 | 503 |
|
|
474 | 508 | #define MICROPY_HW_MAX_UART (5) |
475 | 509 | #define MICROPY_HW_MAX_LPUART (1) |
476 | 510 |
|
| 511 | +#define CFG_TUSB_MCU OPT_MCU_STM32L4 |
| 512 | + |
477 | 513 | // Configuration for STM32N6 series |
478 | 514 | #elif defined(STM32N6) |
479 | 515 |
|
|
494 | 530 | #define MICROPY_HW_MAX_UART (1) |
495 | 531 | #define MICROPY_HW_MAX_LPUART (1) |
496 | 532 |
|
| 533 | +#define CFG_TUSB_MCU OPT_MCU_STM32WB |
| 534 | + |
497 | 535 | #ifndef MICROPY_HW_STM32WB_FLASH_SYNCRONISATION |
498 | 536 | #define MICROPY_HW_STM32WB_FLASH_SYNCRONISATION (1) |
499 | 537 | #endif |
|
693 | 731 | #define MICROPY_HW_USB_CDC_NUM (1) |
694 | 732 | #endif |
695 | 733 | #ifndef MICROPY_HW_USB_MSC |
696 | | -#define MICROPY_HW_USB_MSC (MICROPY_HW_ENABLE_USB) |
| 734 | +#define MICROPY_HW_USB_MSC (MICROPY_HW_STM_USB_STACK) |
697 | 735 | #endif |
698 | 736 | #ifndef MICROPY_HW_USB_HID |
699 | | -#define MICROPY_HW_USB_HID (MICROPY_HW_ENABLE_USB) |
| 737 | +#define MICROPY_HW_USB_HID (MICROPY_HW_STM_USB_STACK) |
700 | 738 | #endif |
701 | 739 |
|
702 | 740 | // Pin definition header file |
|
0 commit comments