rename tud_control_vendor_request_cb/complete_cb to tud_vendor_control_request_cb/complete_cb

This commit is contained in:
hathach 2019-07-24 09:45:32 +07:00
parent 8fad8fb5c2
commit c63f2b30cb
9 changed files with 62 additions and 33 deletions

View File

@ -69,18 +69,24 @@
// DEVICE CONFIGURATION
//--------------------------------------------------------------------
#define CFG_TUD_ENDOINT0_SIZE 64
#define CFG_TUD_ENDOINT0_SIZE 64
//------------- CLASS -------------//
#define CFG_TUD_CDC 1
#define CFG_TUD_MSC 0
#define CFG_TUD_HID 0
#define CFG_TUD_MIDI 0
#define CFG_TUD_VENDOR 0
#define CFG_TUD_CDC 1
#define CFG_TUD_MSC 0
#define CFG_TUD_HID 0
#define CFG_TUD_MIDI 0
#define CFG_TUD_VENDOR 0
// CDC FIFO size of TX and RX
#define CFG_TUD_CDC_RX_BUFSIZE 64
#define CFG_TUD_CDC_TX_BUFSIZE 64
#define CFG_TUD_CDC_RX_BUFSIZE 64
#define CFG_TUD_CDC_TX_BUFSIZE 64
// Vendor FIFO size of TX and RX
// If not configured vendor endpoints will not be buffered
#define CFG_TUD_VENDOR_RX_BUFSIZE 64
#define CFG_TUD_VENDOR_TX_BUFSIZE 64
#ifdef __cplusplus
}

View File

@ -188,7 +188,7 @@ const tusb_desc_webusb_url_t desc_url =
.url = URL
};
bool tud_control_vendor_request_cb(uint8_t rhport, tusb_control_request_t const * request)
bool tud_vendor_control_request_cb(uint8_t rhport, tusb_control_request_t const * request)
{
if ( request->bRequest == 0x01 ) // webusb vendor code
{
@ -199,7 +199,7 @@ bool tud_control_vendor_request_cb(uint8_t rhport, tusb_control_request_t const
}
}
bool tud_control_vendor_complete_cb(uint8_t rhport, tusb_control_request_t const * request)
bool tud_vendor_control_complete_cb(uint8_t rhport, tusb_control_request_t const * request)
{
(void) rhport;
return true;

View File

@ -275,7 +275,8 @@ bool midid_open(uint8_t rhport, tusb_desc_interface_t const * p_interface_desc,
(*p_length) = sizeof(tusb_desc_interface_t);
uint8_t found_endpoints = 0;
while (found_endpoints < p_interface_desc->bNumEndpoints) {
while (found_endpoints < p_interface_desc->bNumEndpoints)
{
if ( TUSB_DESC_ENDPOINT == p_desc[DESC_OFFSET_TYPE])
{
TU_ASSERT( dcd_edpt_open(rhport, (tusb_desc_endpoint_t const *) p_desc), false);

View File

@ -111,7 +111,7 @@ bool tud_msc_set_sense(uint8_t lun, uint8_t sense_key, uint8_t add_sense_code, u
}
//--------------------------------------------------------------------+
// USBD-CLASS API
// USBD Driver API
//--------------------------------------------------------------------+
void mscd_init(void)
{

View File

@ -24,20 +24,34 @@
* This file is part of the TinyUSB stack.
*/
#ifndef _TUSB_CUSTOM_DEVICE_H_
#define _TUSB_CUSTOM_DEVICE_H_
#ifndef _TUSB_VENDOR_DEVICE_H_
#define _TUSB_VENDOR_DEVICE_H_
#include "common/tusb_common.h"
#include "device/usbd.h"
#ifndef CFG_TUD_VENDOR_EPSIZE
#define CFG_TUD_VENDOR_EPSIZE 64
#endif
#ifndef CFG_TUD_VENDOR_RX_BUFSIZE
#define CFG_TUD_VENDOR_RX_BUFSIZE 0
#endif
#ifndef CFG_TUD_VENDOR_TX_BUFSIZE
#define CFG_TUD_VENDOR_TX_BUFSIZE 0
#endif
#ifdef __cplusplus
extern "C" {
#endif
//--------------------------------------------------------------------+
// APPLICATION API (Multiple Root Ports)
// Should be used only with MCU that support more than 1 ports
// Application API (Multiple Interfaces)
//--------------------------------------------------------------------+
//--------------------------------------------------------------------+
// APPLICATION API (Single Port)
// Should be used with MCU supporting only 1 USB port for code simplicity
// Application API (Single Port)
//--------------------------------------------------------------------+
bool tud_vendor_mounted(void);
@ -47,9 +61,17 @@ uint32_t tud_vendor_read(void* buffer, uint32_t bufsize);
//--------------------------------------------------------------------+
// APPLICATION CALLBACK API (WEAK is optional)
// Application Callback API (weak is optional)
//--------------------------------------------------------------------+
// Invoked when received control request with VENDOR TYPE
TU_ATTR_WEAK bool tud_vendor_control_request_cb(uint8_t rhport, tusb_control_request_t const * request);
TU_ATTR_WEAK bool tud_vendor_control_complete_cb(uint8_t rhport, tusb_control_request_t const * request);
// Invoked when received new data
TU_ATTR_WEAK void tud_vendor_rx_cb(uint8_t itf);
//--------------------------------------------------------------------+
// Internal Class Driver API
//--------------------------------------------------------------------+
@ -58,4 +80,8 @@ void vendord_reset(uint8_t rhport);
bool vendord_open(uint8_t rhport, tusb_desc_interface_t const * itf_desc, uint16_t *p_length);
bool vendord_xfer_cb(uint8_t rhport, uint8_t ep_addr, xfer_result_t event, uint32_t xferred_bytes);
#endif /* _TUSB_CUSTOM_DEVICE_H_ */
#ifdef __cplusplus
}
#endif
#endif /* _TUSB_VENDOR_DEVICE_H_ */

View File

@ -28,8 +28,8 @@
* \defgroup Group_Custom Custom Class (not supported yet)
* @{ */
#ifndef _TUSB_CUSTOM_HOST_H_
#define _TUSB_CUSTOM_HOST_H_
#ifndef _TUSB_VENDOR_HOST_H_
#define _TUSB_VENDOR_HOST_H_
#include "common/tusb_common.h"
#include "host/usbh.h"
@ -69,6 +69,6 @@ void cush_close(uint8_t dev_addr);
}
#endif
#endif /* _TUSB_CUSTOM_HOST_H_ */
#endif /* _TUSB_VENDOR_HOST_H_ */
/** @} */

View File

@ -136,8 +136,8 @@ static usbd_class_driver_t const usbd_class_drivers[] =
.init = vendord_init,
.reset = vendord_reset,
.open = vendord_open,
.control_request = NULL, // tud_control_vendor_request_cb
.control_complete = NULL, // tud_control_vendor_complete_cb
.control_request = NULL, // tud_vendor_control_request_cb
.control_complete = NULL, // tud_vendor_control_complete_cb
.xfer_cb = vendord_xfer_cb,
.sof = NULL
},
@ -349,10 +349,10 @@ static bool process_control_request(uint8_t rhport, tusb_control_request_t const
// Vendor request
if ( p_request->bmRequestType_bit.type == TUSB_REQ_TYPE_VENDOR )
{
TU_VERIFY(tud_control_vendor_request_cb);
TU_VERIFY(tud_vendor_control_request_cb);
if (tud_control_vendor_complete_cb) usbd_control_set_complete_callback(tud_control_vendor_complete_cb);
return tud_control_vendor_request_cb(rhport, p_request);
if (tud_vendor_control_complete_cb) usbd_control_set_complete_callback(tud_vendor_control_complete_cb);
return tud_vendor_control_request_cb(rhport, p_request);
}
switch ( p_request->bmRequestType_bit.recipient )

View File

@ -100,10 +100,6 @@ TU_ATTR_WEAK void tud_suspend_cb(bool remote_wakeup_en);
// Invoked when usb bus is resumed
TU_ATTR_WEAK void tud_resume_cb(void);
// Invoked when received control request with VENDOR TYPE
TU_ATTR_WEAK bool tud_control_vendor_request_cb(uint8_t rhport, tusb_control_request_t const * request);
TU_ATTR_WEAK bool tud_control_vendor_complete_cb(uint8_t rhport, tusb_control_request_t const * request);
//--------------------------------------------------------------------+
// Descriptor Templates
//--------------------------------------------------------------------+

View File

@ -162,7 +162,7 @@
#endif
#ifndef CFG_TUD_VENDOR
#define CFG_TUD_VENDOR 0
#define CFG_TUD_VENDOR 0
#endif