summaryrefslogtreecommitdiff
path: root/src/class
diff options
context:
space:
mode:
authorJacob Potter <[email protected]>2021-01-03 15:16:54 -0700
committerJacob Potter <[email protected]>2021-01-03 15:16:54 -0700
commit3158b323d8d701f70b80dca986f8b0e8e60eba97 (patch)
tree85dab9efffab85f13f8c3669611d0d197a06ad24 /src/class
parent57058e33fceecf16161c37f2d9796934b392a2ea (diff)
Adapt to new control xfer callback
Diffstat (limited to 'src/class')
-rw-r--r--src/class/cdc/cdc_ncm_device.c12
-rw-r--r--src/class/cdc/cdc_ncm_device.h3
2 files changed, 4 insertions, 11 deletions
diff --git a/src/class/cdc/cdc_ncm_device.c b/src/class/cdc/cdc_ncm_device.c
index 4698fa9c2..a8983dd91 100644
--- a/src/class/cdc/cdc_ncm_device.c
+++ b/src/class/cdc/cdc_ncm_device.c
@@ -292,14 +292,6 @@ uint16_t ncmd_open(uint8_t rhport, tusb_desc_interface_t const * itf_desc, uint1
return drv_len;
}
-// Invoked when class request DATA stage is finished.
-bool ncmd_control_complete(uint8_t rhport, tusb_control_request_t const * request)
-{
- (void) rhport;
- (void) request;
- return true;
-}
-
static void ncm_report()
{
if (ncm_interface.report_state == REPORT_SPEED) {
@@ -317,8 +309,10 @@ static void ncm_report()
// Handle class control request
// return false to stall control endpoint (e.g unsupported request)
-bool ncmd_control_request(uint8_t rhport, tusb_control_request_t const * request)
+bool ncmd_control_xfer_cb(uint8_t rhport, uint8_t stage, tusb_control_request_t const * request)
{
+ if ( stage != CONTROL_STAGE_SETUP ) return true;
+
switch ( request->bmRequestType_bit.type )
{
case TUSB_REQ_TYPE_STANDARD:
diff --git a/src/class/cdc/cdc_ncm_device.h b/src/class/cdc/cdc_ncm_device.h
index 1c767cad2..e6c7237b1 100644
--- a/src/class/cdc/cdc_ncm_device.h
+++ b/src/class/cdc/cdc_ncm_device.h
@@ -77,8 +77,7 @@ void tud_ncm_link_state_cb(bool state);
void ncmd_init (void);
void ncmd_reset (uint8_t rhport);
uint16_t ncmd_open (uint8_t rhport, tusb_desc_interface_t const * itf_desc, uint16_t max_len);
-bool ncmd_control_request (uint8_t rhport, tusb_control_request_t const * request);
-bool ncmd_control_complete (uint8_t rhport, tusb_control_request_t const * request);
+bool ncmd_control_xfer_cb (uint8_t rhport, uint8_t stage, tusb_control_request_t const * request);
bool ncmd_xfer_cb (uint8_t rhport, uint8_t ep_addr, xfer_result_t result, uint32_t xferred_bytes);
#ifdef __cplusplus