major refactor to generalize cdch serial driver

- add common 2 stage set line coding for driver without direct set_line_coding support e.g ftdi, cp210x, ch34x
- add common cdch_process_line_state_on_enum() to handle cfg line state on enum e.g CFG_TUH_CDC_LINE_CONTROL/CODING_ON_ENUM
- refactor cdch_internal_control_complete and user_complete_cb to be managed by tuh_cdc_ API instead of serial driver
This commit is contained in:
hathach
2025-06-27 15:57:18 +07:00
parent 470e12febc
commit 8b5d703f74
2 changed files with 246 additions and 421 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -34,9 +34,9 @@
// set line_coding @ enumeration
#ifdef CFG_TUH_CDC_LINE_CODING_ON_ENUM
#define CFG_TUH_CDC_LINE_CODING_ON_ENUM_CH34X CFG_TUH_CDC_LINE_CODING_ON_ENUM
#define CFG_TUH_CDC_LINE_CODING_ON_ENUM_CH34X CFG_TUH_CDC_LINE_CODING_ON_ENUM
#else // this default is necessary to work properly
#define CFG_TUH_CDC_LINE_CODING_ON_ENUM_CH34X { 9600, CDC_LINE_CONDING_STOP_BITS_1, CDC_LINE_CODING_PARITY_NONE, 8 }
#define CFG_TUH_CDC_LINE_CODING_ON_ENUM_CH34X { 9600, CDC_LINE_CONDING_STOP_BITS_1, CDC_LINE_CODING_PARITY_NONE, 8 }
#endif
// USB requests