diff options
| author | Meco Jianting Man <[email protected]> | 2021-03-20 19:00:54 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2021-03-20 19:00:54 +0800 |
| commit | 061182271fbf02cf5c3410e3c8083a062a31a2b3 (patch) | |
| tree | ed268633290165d616970d974d5c773e20a8478d /components/drivers/include | |
| parent | 295b95cd7529bc9b85b4fb8ee8b37c62811ffbc8 (diff) | |
| parent | de1d079ecefe18caefa1bce500862ae729433d88 (diff) | |
Merge pull request #29 from RT-Thread/master
p
Diffstat (limited to 'components/drivers/include')
| -rw-r--r-- | components/drivers/include/drivers/usb_common.h | 4 | ||||
| -rw-r--r-- | components/drivers/include/drivers/usb_device.h | 7 |
2 files changed, 8 insertions, 3 deletions
diff --git a/components/drivers/include/drivers/usb_common.h b/components/drivers/include/drivers/usb_common.h index 9c29a0d0df..920a85e61b 100644 --- a/components/drivers/include/drivers/usb_common.h +++ b/components/drivers/include/drivers/usb_common.h @@ -112,7 +112,7 @@ extern "C" { #define USB_STRING_CONFIG_INDEX 0x04 #define USB_STRING_INTERFACE_INDEX 0x05 #define USB_STRING_OS_INDEX 0x06 -#define USB_STRING_MAX USB_STRING_OS_INDEX +#define USB_STRING_MAX 0xff #define USB_STRING_OS "MSFT100A" @@ -301,7 +301,7 @@ struct uconfig_descriptor rt_uint8_t iConfiguration; rt_uint8_t bmAttributes; rt_uint8_t MaxPower; - rt_uint8_t data[256]; + rt_uint8_t data[2048]; }; typedef struct uconfig_descriptor* ucfg_desc_t; diff --git a/components/drivers/include/drivers/usb_device.h b/components/drivers/include/drivers/usb_device.h index 1e76477dbc..3ce051dfaa 100644 --- a/components/drivers/include/drivers/usb_device.h +++ b/components/drivers/include/drivers/usb_device.h @@ -34,6 +34,10 @@ extern "C" { #define _PRODUCT_ID 0x0001 #endif +#ifndef MAX_INTF_STR +#define MAX_INTF_STR 20 +#endif + #define USB_BCD_DEVICE 0x0200 /* USB Specification Release Number in Binary-Coded Decimal */ #define USB_BCD_VERSION 0x0200 /* USB 2.0 */ #define EP0_IN_ADDR 0x80 @@ -193,7 +197,7 @@ struct udevice struct usb_qualifier_descriptor * dev_qualifier; usb_os_comp_id_desc_t os_comp_id_desc; const char** str; - + const char *str_intf[MAX_INTF_STR]; udevice_state_t state; rt_list_t cfg_list; uconfig_t curr_cfg; @@ -260,6 +264,7 @@ rt_err_t rt_usbd_event_signal(struct udev_msg* msg); rt_err_t rt_usbd_device_set_controller(udevice_t device, udcd_t dcd); rt_err_t rt_usbd_device_set_descriptor(udevice_t device, udev_desc_t dev_desc); rt_err_t rt_usbd_device_set_string(udevice_t device, const char** ustring); +rt_err_t rt_usbd_device_set_interface_string(udevice_t device, int index, const char* string); rt_err_t rt_usbd_device_set_qualifier(udevice_t device, struct usb_qualifier_descriptor* qualifier); rt_err_t rt_usbd_device_set_os_comp_id_desc(udevice_t device, usb_os_comp_id_desc_t os_comp_id_desc); rt_err_t rt_usbd_device_add_config(udevice_t device, uconfig_t cfg); |
