[FL-1984, FL-2004, FL-2010] USB CDC Fixes (#801)

* [FL-1984, FL-2004] USB-UART Fixes, test with high timer task priority
* added forgotten file
* switch from EventFlags to ThreadFlags
* [FL-1984, FL-2010] USB-UART and furi-hal-vcp rework
* Scripts: modernize string formatting.

Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
Nikolay Minaylov
2021-11-04 22:33:28 +03:00
committed by GitHub
parent 3225f40870
commit f8d3cc251c
15 changed files with 385 additions and 275 deletions

View File

@@ -7,12 +7,12 @@
#include "usb_cdc.h"
#define CDC0_RXD_EP 0x01
#define CDC0_TXD_EP 0x81
#define CDC0_NTF_EP 0x82
#define CDC0_TXD_EP 0x82
#define CDC0_NTF_EP 0x83
#define CDC1_RXD_EP 0x03
#define CDC1_TXD_EP 0x83
#define CDC1_NTF_EP 0x84
#define CDC1_RXD_EP 0x04
#define CDC1_TXD_EP 0x85
#define CDC1_NTF_EP 0x86
#define CDC_NTF_SZ 0x08
@@ -446,10 +446,12 @@ void furi_hal_cdc_send(uint8_t if_num, uint8_t* buf, uint16_t len) {
}
int32_t furi_hal_cdc_receive(uint8_t if_num, uint8_t* buf, uint16_t max_len) {
int32_t len = 0;
if (if_num == 0)
return usbd_ep_read(usb_dev, CDC0_RXD_EP, buf, max_len);
len = usbd_ep_read(usb_dev, CDC0_RXD_EP, buf, max_len);
else
return usbd_ep_read(usb_dev, CDC1_RXD_EP, buf, max_len);
len = usbd_ep_read(usb_dev, CDC1_RXD_EP, buf, max_len);
return ((len < 0) ? 0 : len);
}
static void cdc_on_wakeup(usbd_device *dev) {