This commit is contained in:
hathach 2019-07-16 18:43:06 +07:00
parent 036e858543
commit 83f7aacbb1
2 changed files with 15 additions and 19 deletions

View File

@ -180,20 +180,12 @@ uint16_t const* tud_descriptor_string_cb(uint8_t index)
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
#define URL "github.com/hathach/tinyusb" #define URL "github.com/hathach/tinyusb"
typedef struct TU_ATTR_PACKED
{
uint8_t bLength;
uint8_t bDescriptorType;
uint8_t bScheme;
char url[];
} tusb_desc_webusb_url_t;
const tusb_desc_webusb_url_t desc_url = const tusb_desc_webusb_url_t desc_url =
{ {
.bLength = 3 + sizeof(URL) - 1, .bLength = 3 + sizeof(URL) - 1,
.bDescriptorType = 3, // WEBUSB URL type .bDescriptorType = 3, // WEBUSB URL type
.bScheme = 1, // 0: http, 1: https .bScheme = 1, // 0: http, 1: https
.url = URL .url = URL
}; };
bool tud_control_vendor_request_cb(uint8_t rhport, tusb_control_request_t const * request) bool tud_control_vendor_request_cb(uint8_t rhport, tusb_control_request_t const * request)

View File

@ -228,7 +228,7 @@ enum
}; };
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
// USB Standard Descriptors // USB Descriptors
//--------------------------------------------------------------------+ //--------------------------------------------------------------------+
/// USB Device Descriptor /// USB Device Descriptor
@ -360,13 +360,7 @@ typedef struct TU_ATTR_PACKED
uint8_t iFunction ; ///< Index of the string descriptor describing the interface association. uint8_t iFunction ; ///< Index of the string descriptor describing the interface association.
} tusb_desc_interface_assoc_t; } tusb_desc_interface_assoc_t;
/// USB Header Descriptor // USB String Descriptor
typedef struct TU_ATTR_PACKED
{
uint8_t bLength ; ///< Size of this descriptor in bytes
uint8_t bDescriptorType ; ///< Descriptor Type
} tusb_desc_header_t;
typedef struct TU_ATTR_PACKED typedef struct TU_ATTR_PACKED
{ {
uint8_t bLength ; ///< Size of this descriptor in bytes uint8_t bLength ; ///< Size of this descriptor in bytes
@ -374,6 +368,7 @@ typedef struct TU_ATTR_PACKED
uint16_t unicode_string[]; uint16_t unicode_string[];
} tusb_desc_string_t; } tusb_desc_string_t;
// USB Binary Device Object Store (BOS)
typedef struct TU_ATTR_PACKED typedef struct TU_ATTR_PACKED
{ {
uint8_t bLength; uint8_t bLength;
@ -384,6 +379,15 @@ typedef struct TU_ATTR_PACKED
uint8_t CapabilityData[]; uint8_t CapabilityData[];
} tusb_desc_bos_platform_t; } tusb_desc_bos_platform_t;
// USB WebuSB URL Descriptor
typedef struct TU_ATTR_PACKED
{
uint8_t bLength;
uint8_t bDescriptorType;
uint8_t bScheme;
char url[];
} tusb_desc_webusb_url_t;
/*------------------------------------------------------------------*/ /*------------------------------------------------------------------*/
/* Types /* Types
*------------------------------------------------------------------*/ *------------------------------------------------------------------*/