summaryrefslogtreecommitdiff
path: root/src/device/control.h
diff options
context:
space:
mode:
authorhathach <[email protected]>2018-11-16 21:56:39 +0700
committerhathach <[email protected]>2018-11-16 21:56:39 +0700
commit215f8603b14cc29e08d8a25e08f8eca44ed90826 (patch)
tree9059bf9825f3fc71def0ee1f0204ac3f719e8c71 /src/device/control.h
parentb62ca2e5cdacc2f49cce6a0352ee740e4bac64a9 (diff)
nrf5x: refactor device control transfer.
- make control transfer as part of usbd. Class driver must use usbd_control_ API() instead of dcd_ api. - change the signature of class driver's control_request - allow control request complete to stall in staus stage - move control request parser & handling to usbd.
Diffstat (limited to 'src/device/control.h')
-rw-r--r--src/device/control.h38
1 files changed, 0 insertions, 38 deletions
diff --git a/src/device/control.h b/src/device/control.h
index e8dcf76f9..e1709bcee 100644
--- a/src/device/control.h
+++ b/src/device/control.h
@@ -48,44 +48,6 @@
#include "tusb.h"
-typedef enum {
- CONTROL_STAGE_SETUP, // Waiting for a setup token.
- CONTROL_STAGE_DATA, // In the process of sending or receiving data.
- CONTROL_STAGE_STATUS // In the process of transmitting the STATUS ZLP.
-} control_stage_t;
-
-typedef struct {
- control_stage_t current_stage;
- tusb_control_request_t current_request;
- uint16_t total_transferred;
- uint8_t config;
-} control_t;
-
-extern uint8_t _shared_control_buffer[64];
-
-tusb_error_t controld_process_setup_request(uint8_t rhport, tusb_control_request_t const * const p_request);
-
-// Callback when the configuration of the device is changed.
-tusb_error_t tud_control_set_config_cb(uint8_t rhport, uint8_t config_number);
-
-// Called when the DATA stage of a control transaction is complete.
-void tud_control_interface_control_complete_cb(uint8_t rhport, uint8_t interface, tusb_control_request_t const * const p_request);
-
-tusb_error_t tud_control_interface_control_cb(uint8_t rhport, uint8_t interface, tusb_control_request_t const * const p_request, uint16_t bytes_already_sent);
-
-//--------------------------------------------------------------------+
-// INTERNAL API
-//--------------------------------------------------------------------+
-tusb_error_t controld_open(uint8_t rhport, tusb_desc_interface_t const * p_interface_desc, uint16_t *p_length);
-
-// This tracks the state of a control request.
-tusb_error_t controld_process_setup_request(uint8_t rhport, tusb_control_request_t const * p_request);
-
-// This handles the actual request and its response.
-tusb_error_t controld_process_control_request(uint8_t rhport, tusb_control_request_t const * p_request, uint16_t bytes_already_sent);
-
-tusb_error_t controld_xfer_cb(uint8_t rhport, uint8_t edpt_addr, tusb_event_t event, uint32_t xferred_bytes);
-void controld_reset(uint8_t rhport);
#ifdef __cplusplus
}