add user_data param in host class for users

This commit is contained in:
sakumisu
2024-04-24 22:40:55 +08:00
parent a3302584ce
commit 23e2787a43
15 changed files with 36 additions and 6 deletions

View File

@@ -53,6 +53,8 @@ struct usbh_audio {
uint8_t num_of_intf_altsettings; uint8_t num_of_intf_altsettings;
struct usbh_audio_module module[2]; struct usbh_audio_module module[2];
uint8_t module_num; uint8_t module_num;
void *user_data;
}; };
#ifdef __cplusplus #ifdef __cplusplus

View File

@@ -25,6 +25,8 @@ struct usbh_cdc_acm {
uint8_t intf; uint8_t intf;
uint8_t minor; uint8_t minor;
void *user_data;
}; };
#ifdef __cplusplus #ifdef __cplusplus

View File

@@ -32,6 +32,8 @@ struct usbh_cdc_ecm {
ip_addr_t ipaddr; ip_addr_t ipaddr;
ip_addr_t netmask; ip_addr_t netmask;
ip_addr_t gateway; ip_addr_t gateway;
void *user_data;
}; };
#ifdef __cplusplus #ifdef __cplusplus

View File

@@ -36,6 +36,8 @@ struct usbh_cdc_ncm {
ip_addr_t ipaddr; ip_addr_t ipaddr;
ip_addr_t netmask; ip_addr_t netmask;
ip_addr_t gateway; ip_addr_t gateway;
void *user_data;
}; };
#ifdef __cplusplus #ifdef __cplusplus

View File

@@ -15,9 +15,11 @@ struct usbh_hid {
struct usbh_urb intin_urb; /* INTR IN urb */ struct usbh_urb intin_urb; /* INTR IN urb */
struct usbh_urb intout_urb; /* INTR OUT urb */ struct usbh_urb intout_urb; /* INTR OUT urb */
uint8_t report_desc[128]; uint8_t report_desc[256];
uint8_t intf; /* interface number */ uint8_t intf; /* interface number */
uint8_t minor; uint8_t minor;
void *user_data;
}; };
#ifdef __cplusplus #ifdef __cplusplus

View File

@@ -20,6 +20,8 @@ struct usbh_msc {
uint8_t sdchar; uint8_t sdchar;
uint32_t blocknum; /* Number of blocks on the USB mass storage device */ uint32_t blocknum; /* Number of blocks on the USB mass storage device */
uint16_t blocksize; /* Block size of USB mass storage device */ uint16_t blocksize; /* Block size of USB mass storage device */
void *user_data;
}; };
struct usbh_msc_modeswitch_config { struct usbh_msc_modeswitch_config {

View File

@@ -12,6 +12,8 @@ struct usbh_xxx {
uint8_t intf; /* interface number */ uint8_t intf; /* interface number */
uint8_t minor; uint8_t minor;
void *user_data;
}; };
void usbh_xxx_run(struct usbh_xxx *xxx_class); void usbh_xxx_run(struct usbh_xxx *xxx_class);

View File

@@ -159,6 +159,8 @@ struct usbh_asix {
ip_addr_t ipaddr; ip_addr_t ipaddr;
ip_addr_t netmask; ip_addr_t netmask;
ip_addr_t gateway; ip_addr_t gateway;
void *user_data;
}; };
#ifdef __cplusplus #ifdef __cplusplus

View File

@@ -50,6 +50,8 @@ struct usbh_rtl8152 {
void (*autosuspend_en)(struct usbh_rtl8152 *tp, bool enable); void (*autosuspend_en)(struct usbh_rtl8152 *tp, bool enable);
void (*change_mtu)(struct usbh_rtl8152 *tp); void (*change_mtu)(struct usbh_rtl8152 *tp);
} rtl_ops; } rtl_ops;
void *user_data;
}; };
#ifdef __cplusplus #ifdef __cplusplus

View File

@@ -51,6 +51,8 @@ struct usbh_ch34x {
uint8_t intf; uint8_t intf;
uint8_t minor; uint8_t minor;
void *user_data;
}; };
#ifdef __cplusplus #ifdef __cplusplus

View File

@@ -48,6 +48,8 @@ struct usbh_cp210x {
uint8_t intf; uint8_t intf;
uint8_t minor; uint8_t minor;
void *user_data;
}; };
#ifdef __cplusplus #ifdef __cplusplus

View File

@@ -51,6 +51,8 @@ struct usbh_ftdi {
uint8_t intf; uint8_t intf;
uint8_t minor; uint8_t minor;
uint8_t modem_status[2]; uint8_t modem_status[2];
void *user_data;
}; };
#ifdef __cplusplus #ifdef __cplusplus

View File

@@ -55,6 +55,8 @@ struct usbh_video {
uint8_t num_of_intf_altsettings; uint8_t num_of_intf_altsettings;
uint8_t num_of_formats; uint8_t num_of_formats;
struct usbh_video_format format[3]; struct usbh_video_format format[3];
void *user_data;
}; };
#ifdef __cplusplus #ifdef __cplusplus

View File

@@ -29,6 +29,8 @@ struct usbh_bluetooth {
struct usbh_urb *isoout_urb; /* Bulk OUT urb */ struct usbh_urb *isoout_urb; /* Bulk OUT urb */
uint8_t num_of_intf_altsettings; uint8_t num_of_intf_altsettings;
#endif #endif
void *user_data;
}; };
#ifdef __cplusplus #ifdef __cplusplus

View File

@@ -33,6 +33,8 @@ struct usbh_rndis {
ip_addr_t ipaddr; ip_addr_t ipaddr;
ip_addr_t netmask; ip_addr_t netmask;
ip_addr_t gateway; ip_addr_t gateway;
void *user_data;
}; };
#ifdef __cplusplus #ifdef __cplusplus