summaryrefslogtreecommitdiff
path: root/src/class/cdc/cdc_host.c
diff options
context:
space:
mode:
authorhathach <[email protected]>2022-12-21 17:46:11 +0700
committerhathach <[email protected]>2022-12-21 17:49:50 +0700
commit9e8ea44925e80abd7189ed7a673762527ee3adfd (patch)
tree45a54d24a0bd72541da229e44e6ca4164e05e38a /src/class/cdc/cdc_host.c
parentcd9008e5a9c8da81d9736f7e0bf72c5ba409a7f1 (diff)
add tuh_cdc_write_clear, rename read_flush() to read_clear()
Diffstat (limited to 'src/class/cdc/cdc_host.c')
-rw-r--r--src/class/cdc/cdc_host.c24
1 files changed, 19 insertions, 5 deletions
diff --git a/src/class/cdc/cdc_host.c b/src/class/cdc/cdc_host.c
index ce0efe6e3..2f3406378 100644
--- a/src/class/cdc/cdc_host.c
+++ b/src/class/cdc/cdc_host.c
@@ -190,10 +190,16 @@ uint32_t tu_edpt_stream_write_available(tu_edpt_stream_t* s)
return (uint32_t) tu_fifo_remaining(&s->ff);
}
-void tu_edpt_stream_read_clear(uint8_t daddr, tu_edpt_stream_t* s)
+bool tu_edpt_stream_read_clear(uint8_t daddr, tu_edpt_stream_t* s)
{
- tu_fifo_clear(&s->ff);
+ bool ret = tu_fifo_clear(&s->ff);
tu_edpt_stream_read_xfer(daddr, s);
+ return ret;
+}
+
+bool tu_edpt_stream_write_clear(tu_edpt_stream_t* s)
+{
+ return tu_fifo_clear(&s->ff);
}
typedef struct {
@@ -331,6 +337,14 @@ uint32_t tuh_cdc_write_flush(uint8_t idx)
return tu_edpt_stream_write_xfer(p_cdc->daddr, &p_cdc->stream.tx);
}
+bool tuh_cdc_write_clear(uint8_t idx)
+{
+ cdch_interface_t* p_cdc = get_itf(idx);
+ TU_VERIFY(p_cdc);
+
+ return tu_edpt_stream_write_clear(&p_cdc->stream.tx);
+}
+
uint32_t tuh_cdc_write_available(uint8_t idx)
{
cdch_interface_t* p_cdc = get_itf(idx);
@@ -355,12 +369,12 @@ uint32_t tuh_cdc_read_available(uint8_t idx)
return tu_edpt_stream_read_available(&p_cdc->stream.rx);
}
-void tuh_cdc_read_flush (uint8_t idx)
+bool tuh_cdc_read_clear (uint8_t idx)
{
cdch_interface_t* p_cdc = get_itf(idx);
- TU_VERIFY(p_cdc, );
+ TU_VERIFY(p_cdc);
- tu_edpt_stream_read_clear(p_cdc->daddr, &p_cdc->stream.rx);
+ return tu_edpt_stream_read_clear(p_cdc->daddr, &p_cdc->stream.rx);
}
//--------------------------------------------------------------------+