mirror of
https://github.com/RT-Thread/rt-thread.git
synced 2025-12-26 17:18:24 +00:00
[Coponents][USB device]add class register interface
This commit is contained in:
@@ -213,6 +213,13 @@ struct udevice
|
||||
};
|
||||
typedef struct udevice* udevice_t;
|
||||
|
||||
struct udclass
|
||||
{
|
||||
rt_list_t list;
|
||||
ufunction_t (*rt_usbd_function_create)(udevice_t device);
|
||||
};
|
||||
typedef struct udclass* udclass_t;
|
||||
|
||||
enum udev_msg_type
|
||||
{
|
||||
USB_MSG_SETUP_NOTIFY,
|
||||
@@ -248,6 +255,7 @@ struct udev_msg
|
||||
};
|
||||
typedef struct udev_msg* udev_msg_t;
|
||||
|
||||
int rt_usbd_class_list_init(void);
|
||||
udevice_t rt_usbd_device_new(void);
|
||||
uconfig_t rt_usbd_config_new(void);
|
||||
ufunction_t rt_usbd_function_new(udevice_t device, udev_desc_t dev_desc,
|
||||
@@ -266,6 +274,7 @@ rt_err_t rt_usbd_device_set_qualifier(udevice_t device, struct usb_qualifier_des
|
||||
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);
|
||||
rt_err_t rt_usbd_config_add_function(uconfig_t cfg, ufunction_t func);
|
||||
rt_err_t rt_usbd_class_register(udclass_t udclass);
|
||||
rt_err_t rt_usbd_function_add_interface(ufunction_t func, uintf_t intf);
|
||||
rt_err_t rt_usbd_interface_add_altsetting(uintf_t intf, ualtsetting_t setting);
|
||||
rt_err_t rt_usbd_altsetting_add_endpoint(ualtsetting_t setting, uep_t ep);
|
||||
@@ -283,10 +292,12 @@ rt_size_t rt_usbd_ep0_write(udevice_t device, void *buffer, rt_size_t size);
|
||||
rt_size_t rt_usbd_ep0_read(udevice_t device, void *buffer, rt_size_t size,
|
||||
rt_err_t (*rx_ind)(udevice_t device, rt_size_t size));
|
||||
|
||||
ufunction_t rt_usbd_function_mstorage_create(udevice_t device);
|
||||
ufunction_t rt_usbd_function_cdc_create(udevice_t device);
|
||||
ufunction_t rt_usbd_function_rndis_create(udevice_t device);
|
||||
ufunction_t rt_usbd_function_dap_create(udevice_t device);
|
||||
int rt_usbd_vcom_class_register(void);
|
||||
int rt_usbd_ecm_class_register(void);
|
||||
int rt_usbd_hid_class_register(void);
|
||||
int rt_usbd_msc_class_register(void);
|
||||
int rt_usbd_rndis_class_register(void);
|
||||
int rt_usbd_winusb_class_register(void);
|
||||
|
||||
#ifdef RT_USB_DEVICE_COMPOSITE
|
||||
rt_err_t rt_usbd_function_set_iad(ufunction_t func, uiad_desc_t iad_desc);
|
||||
|
||||
Reference in New Issue
Block a user