diff options
Diffstat (limited to 'common/usbx_device_classes/inc')
13 files changed, 112 insertions, 55 deletions
diff --git a/common/usbx_device_classes/inc/ux_device_class_audio.h b/common/usbx_device_classes/inc/ux_device_class_audio.h index d6166cc..b0d2898 100644 --- a/common/usbx_device_classes/inc/ux_device_class_audio.h +++ b/common/usbx_device_classes/inc/ux_device_class_audio.h @@ -26,7 +26,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_device_class_audio.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -65,10 +65,11 @@ /* 03-08-2023 Chaoqiong Xiao Modified comment(s), */ /* added error checks support, */ /* resulting in version 6.2.1 */ -/* xx-xx-xxxx Chaoqiong Xiao Modified comment(s), */ +/* 10-31-2023 Chaoqiong Xiao Modified comment(s), */ /* added a new mode to manage */ -/* endpoint buffer in classes, */ -/* resulting in version 6.x */ +/* endpoint buffer in classes */ +/* with zero copy enabled, */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ @@ -422,10 +423,6 @@ typedef struct UX_DEVICE_CLASS_AUDIO_STREAM_STRUCT UX_SLAVE_INTERFACE *ux_device_class_audio_stream_interface; UX_SLAVE_ENDPOINT *ux_device_class_audio_stream_endpoint; -#if UX_DEVICE_ENDPOINT_BUFFER_OWNER == 1 - UCHAR *ux_device_class_audio_stream_endpoint_buffer; -#endif - #if defined(UX_DEVICE_CLASS_AUDIO_FEEDBACK_SUPPORT) UX_SLAVE_ENDPOINT *ux_device_class_audio_stream_feedback; diff --git a/common/usbx_device_classes/inc/ux_device_class_audio10.h b/common/usbx_device_classes/inc/ux_device_class_audio10.h index f0080dd..05c34bf 100644 --- a/common/usbx_device_classes/inc/ux_device_class_audio10.h +++ b/common/usbx_device_classes/inc/ux_device_class_audio10.h @@ -26,7 +26,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_device_class_audio10.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -57,9 +57,9 @@ /* added error checks support, */ /* fixed a macro name, */ /* resulting in version 6.2.1 */ -/* xx-xx-xxxx Chaoqiong Xiao Modified comment(s), */ +/* 10-31-2023 Chaoqiong Xiao Modified comment(s), */ /* optimized USB descriptors, */ -/* resulting in version 6.x */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ diff --git a/common/usbx_device_classes/inc/ux_device_class_audio20.h b/common/usbx_device_classes/inc/ux_device_class_audio20.h index 1a1c075..aef29e3 100644 --- a/common/usbx_device_classes/inc/ux_device_class_audio20.h +++ b/common/usbx_device_classes/inc/ux_device_class_audio20.h @@ -26,7 +26,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_device_class_audio20.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -58,9 +58,9 @@ /* 03-08-2023 Chaoqiong Xiao Modified comment(s), */ /* added error checks support, */ /* resulting in version 6.2.1 */ -/* xx-xx-xxxx Chaoqiong Xiao Modified comment(s), */ +/* 10-31-2023 Chaoqiong Xiao Modified comment(s), */ /* optimized USB descriptors, */ -/* resulting in version 6.x */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ diff --git a/common/usbx_device_classes/inc/ux_device_class_ccid.h b/common/usbx_device_classes/inc/ux_device_class_ccid.h index 832422e..e56b16f 100644 --- a/common/usbx_device_classes/inc/ux_device_class_ccid.h +++ b/common/usbx_device_classes/inc/ux_device_class_ccid.h @@ -24,7 +24,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_device_class_ccid.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -42,9 +42,9 @@ /* 03-08-2023 Chaoqiong Xiao Modified comment(s), */ /* added standalone support, */ /* resulting in version 6.2.1 */ -/* xx-xx-xxxx Yajun xia, CQ Xiao Modified comment(s), */ +/* 10-31-2023 Yajun xia, CQ Xiao Modified comment(s), */ /* added error checks support, */ -/* resulting in version 6.x */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ diff --git a/common/usbx_device_classes/inc/ux_device_class_cdc_acm.h b/common/usbx_device_classes/inc/ux_device_class_cdc_acm.h index 748d345..569c10c 100644 --- a/common/usbx_device_classes/inc/ux_device_class_cdc_acm.h +++ b/common/usbx_device_classes/inc/ux_device_class_cdc_acm.h @@ -24,7 +24,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_device_class_cdc_acm.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -58,12 +58,12 @@ /* 07-29-2022 Chaoqiong Xiao Modified comment(s), */ /* added write auto ZLP, */ /* resulting in version 6.1.12 */ -/* xx-xx-xxxx Yajun xia, CQ Xiao Modified comment(s), */ +/* 10-31-2023 Yajun xia, CQ Xiao Modified comment(s), */ /* added zero copy support, */ /* added a new mode to manage */ /* endpoint buffer in classes, */ /* added error checks support, */ -/* resulting in version 6.x */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ diff --git a/common/usbx_device_classes/inc/ux_device_class_cdc_ecm.h b/common/usbx_device_classes/inc/ux_device_class_cdc_ecm.h index d578136..457c592 100644 --- a/common/usbx_device_classes/inc/ux_device_class_cdc_ecm.h +++ b/common/usbx_device_classes/inc/ux_device_class_cdc_ecm.h @@ -24,7 +24,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_device_class_cdc_ecm.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -55,10 +55,11 @@ /* 10-31-2022 Chaoqiong Xiao Modified comment(s), */ /* added wait definitions, */ /* resulting in version 6.2.0 */ -/* xx-xx-xxxx Chaoqiong Xiao Modified comment(s), */ +/* 10-31-2023 Chaoqiong Xiao Modified comment(s), */ +/* added zero copy support, */ /* added a new mode to manage */ /* endpoint buffer in classes, */ -/* resulting in version 6.x */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ @@ -99,11 +100,26 @@ VOID _ux_network_driver_link_down(VOID *ux_network_handle); #endif +/* Option: defined, it enables zero copy support (works if CDC_ECM owns endpoint buffer). + Enabled, it requires that the NX packet pool is in cache safe area, and buffer max size is + larger than UX_DEVICE_CLASS_CDC_ECM_ETHERNET_PACKET_SIZE (1536). + */ +/* #define UX_DEVICE_CLASS_CDC_ECM_ZERO_COPY */ + + /* Bulk out endpoint buffer size, must be larger than endpoint and ethernet max packet size, and aligned in 4-bytes. */ +#if (UX_DEVICE_ENDPOINT_BUFFER_OWNER == 1) && defined(UX_DEVICE_CLASS_CDC_ECM_ZERO_COPY) +#define UX_DEVICE_CLASS_CDC_ECM_BULKOUT_BUFFER_SIZE 0 +#else #define UX_DEVICE_CLASS_CDC_ECM_BULKOUT_BUFFER_SIZE UX_DEVICE_CLASS_CDC_ECM_MAX_PACKET_LENGTH +#endif /* Bulk in endpoint buffer size, must be larger than endpoint and ethernet max packet size, and aligned in 4-bytes. */ +#if (UX_DEVICE_ENDPOINT_BUFFER_OWNER == 1) && defined(UX_DEVICE_CLASS_CDC_ECM_ZERO_COPY) +#define UX_DEVICE_CLASS_CDC_ECM_BULKIN_BUFFER_SIZE 0 +#else #define UX_DEVICE_CLASS_CDC_ECM_BULKIN_BUFFER_SIZE UX_DEVICE_CLASS_CDC_ECM_ETHERNET_PACKET_SIZE +#endif /* Interrupt in endpoint buffer size... */ #define UX_DEVICE_CLASS_CDC_ECM_INTERRUPTIN_BUFFER_SIZE UX_DEVICE_CLASS_CDC_ECM_INTERRUPT_RESPONSE_LENGTH @@ -370,12 +386,16 @@ typedef struct UX_SLAVE_CLASS_CDC_ECM_STRUCT } UX_SLAVE_CLASS_CDC_ECM; /* Define CDC ECM endpoint buffer settings (when CDC ECM owns buffer). */ +#if defined(UX_DEVICE_CLASS_CDC_ECM_ZERO_COPY) +#define UX_DEVICE_CLASS_CDC_ECM_ENDPOINT_BUFFER_SIZE_CALC_OVERFLOW 0 /* No calculation, no overflow */ +#else #define UX_DEVICE_CLASS_CDC_ECM_ENDPOINT_BUFFER_SIZE_CALC_OVERFLOW \ (UX_OVERFLOW_CHECK_ADD_ULONG(UX_DEVICE_CLASS_CDC_ECM_BULKOUT_BUFFER_SIZE, \ UX_DEVICE_CLASS_CDC_ECM_BULKIN_BUFFER_SIZE) || \ UX_OVERFLOW_CHECK_ADD_ULONG(UX_DEVICE_CLASS_CDC_ECM_BULKOUT_BUFFER_SIZE + \ UX_DEVICE_CLASS_CDC_ECM_BULKIN_BUFFER_SIZE, \ UX_DEVICE_CLASS_CDC_ECM_INTERRUPTIN_BUFFER_SIZE)) +#endif #define UX_DEVICE_CLASS_CDC_ECM_ENDPOINT_BUFFER_SIZE (UX_DEVICE_CLASS_CDC_ECM_BULKOUT_BUFFER_SIZE + UX_DEVICE_CLASS_CDC_ECM_BULKIN_BUFFER_SIZE + UX_DEVICE_CLASS_CDC_ECM_INTERRUPTIN_BUFFER_SIZE) #define UX_DEVICE_CLASS_CDC_ECM_BULKOUT_BUFFER(ecm) ((ecm)->ux_device_class_cdc_ecm_endpoint_buffer) #define UX_DEVICE_CLASS_CDC_ECM_BULKIN_BUFFER(ecm) (UX_DEVICE_CLASS_CDC_ECM_BULKOUT_BUFFER(ecm) + UX_DEVICE_CLASS_CDC_ECM_BULKOUT_BUFFER_SIZE) diff --git a/common/usbx_device_classes/inc/ux_device_class_dfu.h b/common/usbx_device_classes/inc/ux_device_class_dfu.h index ee4770d..33a4be4 100644 --- a/common/usbx_device_classes/inc/ux_device_class_dfu.h +++ b/common/usbx_device_classes/inc/ux_device_class_dfu.h @@ -24,7 +24,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_device_class_dfu.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -60,9 +60,9 @@ /* 07-29-2022 Chaoqiong Xiao Modified comment(s), */ /* added macros for req types, */ /* resulting in version 6.1.12 */ -/* xx-xx-xxxx Yajun xia Modified comment(s), */ +/* 10-31-2023 Yajun xia Modified comment(s), */ /* added error checks support, */ -/* resulting in version 6.x */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ diff --git a/common/usbx_device_classes/inc/ux_device_class_hid.h b/common/usbx_device_classes/inc/ux_device_class_hid.h index ffadc24..ab0aee1 100644 --- a/common/usbx_device_classes/inc/ux_device_class_hid.h +++ b/common/usbx_device_classes/inc/ux_device_class_hid.h @@ -26,7 +26,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_device_class_hid.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -64,12 +64,12 @@ /* 07-29-2022 Chaoqiong Xiao Modified comment(s), */ /* added standalone int out, */ /* resulting in version 6.1.12 */ -/* xx-xx-xxxx Chaoqiong Xiao Modified comment(s), */ +/* 10-31-2023 Chaoqiong Xiao Modified comment(s), */ /* added zero copy support, */ /* added a new mode to manage */ /* endpoint buffer in classes, */ /* moved build option check, */ -/* resulting in version 6.x */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ diff --git a/common/usbx_device_classes/inc/ux_device_class_pima.h b/common/usbx_device_classes/inc/ux_device_class_pima.h index 31278b1..5e09981 100644 --- a/common/usbx_device_classes/inc/ux_device_class_pima.h +++ b/common/usbx_device_classes/inc/ux_device_class_pima.h @@ -26,7 +26,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_device_class_pima.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -58,11 +58,12 @@ /* 04-25-2022 Chaoqiong Xiao Modified comment(s), */ /* fixed standalone compile, */ /* resulting in version 6.1.11 */ -/* xx-xx-xxxx Chaoqiong Xiao Modified comment(s), */ +/* 10-31-2023 Chaoqiong Xiao Modified comment(s), */ +/* optimized PIMA data sets, */ /* added a new mode to manage */ /* endpoint buffer in classes, */ /* added error checks support, */ -/* resulting in version 6.x */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ @@ -729,10 +730,11 @@ typedef struct UX_SLAVE_CLASS_PIMA_OBJECT_STRUCT { ULONG ux_device_class_pima_object_storage_id; - ULONG ux_device_class_pima_object_format; - ULONG ux_device_class_pima_object_protection_status; + USHORT ux_device_class_pima_object_format; + USHORT ux_device_class_pima_object_protection_status; ULONG ux_device_class_pima_object_compressed_size; - ULONG ux_device_class_pima_object_thumb_format; + USHORT ux_device_class_pima_object_thumb_format; + USHORT _align_thumb_compressed_size; ULONG ux_device_class_pima_object_thumb_compressed_size; ULONG ux_device_class_pima_object_thumb_pix_width; ULONG ux_device_class_pima_object_thumb_pix_height; @@ -740,7 +742,8 @@ typedef struct UX_SLAVE_CLASS_PIMA_OBJECT_STRUCT ULONG ux_device_class_pima_object_image_pix_height; ULONG ux_device_class_pima_object_image_bit_depth; ULONG ux_device_class_pima_object_parent_object; - ULONG ux_device_class_pima_object_association_type; + USHORT ux_device_class_pima_object_association_type; + USHORT _align_association_desc; ULONG ux_device_class_pima_object_association_desc; ULONG ux_device_class_pima_object_sequence_number; UCHAR ux_device_class_pima_object_filename[UX_DEVICE_CLASS_PIMA_UNICODE_MAX_LENGTH]; @@ -798,9 +801,10 @@ typedef struct UX_SLAVE_CLASS_PIMA_DEVICE_STRUCT typedef struct UX_SLAVE_CLASS_PIMA_STORAGE_STRUCT { - ULONG ux_device_class_pima_storage_type; - ULONG ux_device_class_pima_storage_file_system_type; - ULONG ux_device_class_pima_storage_access_capability; + USHORT ux_device_class_pima_storage_type; + USHORT ux_device_class_pima_storage_file_system_type; + USHORT ux_device_class_pima_storage_access_capability; + USHORT _align_max_capacity_low; ULONG ux_device_class_pima_storage_max_capacity_low; ULONG ux_device_class_pima_storage_max_capacity_high; ULONG ux_device_class_pima_storage_free_space_bytes_low; diff --git a/common/usbx_device_classes/inc/ux_device_class_printer.h b/common/usbx_device_classes/inc/ux_device_class_printer.h index 9dcb458..c87cb38 100644 --- a/common/usbx_device_classes/inc/ux_device_class_printer.h +++ b/common/usbx_device_classes/inc/ux_device_class_printer.h @@ -24,7 +24,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_device_class_printer.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -50,11 +50,11 @@ /* 03-08-2023 Yajun xia Modified comment(s), */ /* added error checks support, */ /* resulting in version 6.2.1 */ -/* xx-xx-xxxx Yajun Xia, CQ Xiao Modified comment(s), */ +/* 10-31-2023 Yajun Xia, CQ Xiao Modified comment(s), */ /* added a new mode to manage */ /* endpoint buffer in classes, */ /* fixed error checking issue, */ -/* resulting in version 6.x */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ @@ -77,6 +77,16 @@ extern "C" { #define UX_DEVICE_CLASS_PRINTER_ENABLE_ERROR_CHECKING #endif + +/* Option: defined, it enables zero copy support (works if PRINTER owns endpoint buffer). + Defined, it enables zero copy for bulk in/out endpoints (write/read). In this case, the endpoint + buffer is not allocated in class, application must provide the buffer for read/write, and the + buffer must meet device controller driver (DCD) buffer requirements (e.g., aligned and cache + safe if buffer is for DMA). + */ +/* #define UX_DEVICE_CLASS_PRINTER_ZERO_COPY */ + + /* Defined, _write is pending ZLP automatically (complete transfer) after buffer is sent. */ /* #define UX_DEVICE_CLASS_PRINTER_WRITE_AUTO_ZLP */ @@ -93,6 +103,13 @@ extern "C" { #endif +/* Internal: check if class own endpoint buffer */ +#if (UX_DEVICE_ENDPOINT_BUFFER_OWNER == 1) && \ + (!defined(UX_DEVICE_CLASS_PRINTER_ZERO_COPY)) +#define UX_DEVICE_CLASS_PRINTER_OWN_ENDPOINT_BUFFER +#endif + + /* Define Printer Class USB Class constants. */ #define UX_DEVICE_CLASS_PRINTER_CLASS 7 diff --git a/common/usbx_device_classes/inc/ux_device_class_rndis.h b/common/usbx_device_classes/inc/ux_device_class_rndis.h index d1263b7..8440cf5 100644 --- a/common/usbx_device_classes/inc/ux_device_class_rndis.h +++ b/common/usbx_device_classes/inc/ux_device_class_rndis.h @@ -24,7 +24,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_device_class_rndis.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -55,11 +55,12 @@ /* 10-31-2022 Chaoqiong Xiao Modified comment(s), */ /* added wait and length DEFs, */ /* resulting in version 6.2.0 */ -/* xx-xx-xxxx Chaoqiong Xiao Modified comment(s), */ +/* 10-31-2023 Chaoqiong Xiao Modified comment(s), */ +/* added zero copy support, */ /* added a new mode to manage */ /* endpoint buffer in classes, */ /* improved error checking, */ -/* resulting in version 6.x */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ @@ -76,11 +77,27 @@ extern "C" { #endif + +/* Option: defined, it enables zero copy support (works if HID owns endpoint buffer). + Enabled, it requires that the NX packet pool is in cache safe area, and buffer max size is + larger than UX_DEVICE_CLASS_RNDIS_MAX_PACKET_TRANSFER_SIZE (1600). + */ +/* #define UX_DEVICE_CLASS_RNDIS_ZERO_COPY */ + + /* Bulk out endpoint buffer size (UX_DEVICE_CLASS_RNDIS_MAX_PACKET_TRANSFER_SIZE). */ +#if (UX_DEVICE_ENDPOINT_BUFFER_OWNER == 1) && defined(UX_DEVICE_CLASS_RNDIS_ZERO_COPY) +#define UX_DEVICE_CLASS_RNDIS_BULKOUT_BUFFER_SIZE 0 +#else #define UX_DEVICE_CLASS_RNDIS_BULKOUT_BUFFER_SIZE UX_DEVICE_CLASS_RNDIS_MAX_PACKET_TRANSFER_SIZE +#endif /* Bulk in endpoint buffer size (UX_DEVICE_CLASS_RNDIS_MAX_PACKET_TRANSFER_SIZE). */ +#if (UX_DEVICE_ENDPOINT_BUFFER_OWNER == 1) && defined(UX_DEVICE_CLASS_RNDIS_ZERO_COPY) +#define UX_DEVICE_CLASS_RNDIS_BULKIN_BUFFER_SIZE 0 +#else #define UX_DEVICE_CLASS_RNDIS_BULKIN_BUFFER_SIZE UX_DEVICE_CLASS_RNDIS_MAX_PACKET_TRANSFER_SIZE +#endif /* Interrupt in endpoint buffer size (UX_DEVICE_CLASS_RNDIS_INTERRUPT_RESPONSE_LENGTH). */ #define UX_DEVICE_CLASS_RNDIS_INTERRUPTIN_BUFFER_SIZE UX_DEVICE_CLASS_RNDIS_INTERRUPT_RESPONSE_LENGTH @@ -597,12 +614,16 @@ typedef struct UX_SLAVE_CLASS_RNDIS_STRUCT } UX_SLAVE_CLASS_RNDIS; /* Define RNDIS endpoint buffer settings (when RNDIS owns buffer). */ +#if (UX_DEVICE_ENDPOINT_BUFFER_OWNER == 1) && defined(UX_DEVICE_CLASS_RNDIS_ZERO_COPY) +#define UX_DEVICE_CLASS_RNDIS_ENDPOINT_BUFFER_SIZE_CALC_OVERFLOW 0 /* only one buffer, no calculation */ +#else #define UX_DEVICE_CLASS_RNDIS_ENDPOINT_BUFFER_SIZE_CALC_OVERFLOW \ (UX_OVERFLOW_CHECK_ADD_ULONG(UX_DEVICE_CLASS_RNDIS_BULKOUT_BUFFER_SIZE, \ UX_DEVICE_CLASS_RNDIS_BULKIN_BUFFER_SIZE) || \ UX_OVERFLOW_CHECK_ADD_ULONG(UX_DEVICE_CLASS_RNDIS_BULKOUT_BUFFER_SIZE + \ UX_DEVICE_CLASS_RNDIS_BULKIN_BUFFER_SIZE, \ UX_DEVICE_CLASS_RNDIS_INTERRUPTIN_BUFFER_SIZE)) +#endif #define UX_DEVICE_CLASS_RNDIS_ENDPOINT_BUFFER_SIZE (UX_DEVICE_CLASS_RNDIS_BULKOUT_BUFFER_SIZE + UX_DEVICE_CLASS_RNDIS_BULKIN_BUFFER_SIZE + UX_DEVICE_CLASS_RNDIS_INTERRUPTIN_BUFFER_SIZE) #define UX_DEVICE_CLASS_RNDIS_BULKOUT_BUFFER(rndis) ((rndis)->ux_device_class_rndis_endpoint_buffer) #define UX_DEVICE_CLASS_RNDIS_BULKIN_BUFFER(rndis) (UX_DEVICE_CLASS_RNDIS_BULKOUT_BUFFER(rndis) + UX_DEVICE_CLASS_RNDIS_BULKOUT_BUFFER_SIZE) diff --git a/common/usbx_device_classes/inc/ux_device_class_storage.h b/common/usbx_device_classes/inc/ux_device_class_storage.h index 3ff31b5..57ece44 100644 --- a/common/usbx_device_classes/inc/ux_device_class_storage.h +++ b/common/usbx_device_classes/inc/ux_device_class_storage.h @@ -26,7 +26,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_device_class_storage.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -57,11 +57,11 @@ /* 01-31-2022 Chaoqiong Xiao Modified comment(s), */ /* added standalone support, */ /* resulting in version 6.1.10 */ -/* xx-xx-xxxx Chaoqiong Xiao Modified comment(s), */ +/* 10-31-2023 Chaoqiong Xiao Modified comment(s), */ /* added a new mode to manage */ /* endpoint buffer in classes, */ /* added error checks support, */ -/* resulting in version 6.x */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ diff --git a/common/usbx_device_classes/inc/ux_device_class_video.h b/common/usbx_device_classes/inc/ux_device_class_video.h index a7a4f72..89c16b1 100644 --- a/common/usbx_device_classes/inc/ux_device_class_video.h +++ b/common/usbx_device_classes/inc/ux_device_class_video.h @@ -26,7 +26,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_device_class_video.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -44,11 +44,12 @@ /* 10-31-2022 Chaoqiong Xiao Modified comment(s), */ /* added standalone support, */ /* resulting in version 6.2.0 */ -/* xx-xx-xxxx Yajun xia, CQ Xiao Modified comment(s), */ +/* 10-31-2023 Yajun xia, CQ Xiao Modified comment(s), */ /* added a new mode to manage */ -/* endpoint buffer in classes, */ +/* endpoint buffer in classes */ +/* with zero copy enabled, */ /* added error checks support, */ -/* resulting in version 6.x */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ @@ -588,9 +589,6 @@ typedef struct UX_DEVICE_CLASS_VIDEO_STREAM_STRUCT struct UX_DEVICE_CLASS_VIDEO_STRUCT *ux_device_class_video_stream_video; UX_SLAVE_INTERFACE *ux_device_class_video_stream_interface; UX_SLAVE_ENDPOINT *ux_device_class_video_stream_endpoint; -#if UX_DEVICE_ENDPOINT_BUFFER_OWNER == 1 - UCHAR *ux_device_class_video_stream_endpoint_buffer; -#endif ULONG ux_device_class_video_stream_error; |
