diff options
| author | Chaoqiong Xiao <[email protected]> | 2023-10-23 05:31:40 +0000 |
|---|---|---|
| committer | Chaoqiong Xiao <[email protected]> | 2023-10-23 05:31:40 +0000 |
| commit | 26585e42dccf2e1ce954d8cdb4890fac72d04864 (patch) | |
| tree | fea8480672351b161488e07c31e3d704d82ee10a /common/usbx_host_classes/inc | |
| parent | 7c928b43db68b72970b3effd5a2582eb5a6869c7 (diff) | |
Update on 23 Oct 2023. Expand to see details.v6.3.0_rel
52c60057 Update headers and readme for 6.3.0 release.
5360ad52 Host H264 frame support.
4b097e80 Add javascript to codeql detection
70278ae3 Fixed use after free issues.
5560620e Improved standalone enum transfer flow. Turn off ASIX in standalone build. Im...
39a01206 Improved host HID clients (mouse/keyboard/remote control) deactivation sequence.
be2c7fd5 Improved standalone host CDC ACM control and data instance link management (MSRC 81489,81570)
c2368eb2 Improved AC AS management and error handing.
b9c23b38 PIMA Host/device optional interrupt endpoint support and host unused semaphore removal.
34ca3af9 Removed interface link in class linked to device.
5d3c9dd0 Improved endpoints get error handling (host CDC-ECM/ACM, storage). Moved stor...
71b08ad1 Improved host audio descriptors validation
4717e3f1 Enable weekly pipeline build to avoid CodeQL expiration
ca408b54 Checked XML tag nesting depth in Pictbridge object parsing
c300a00c Limited pictbridge array element to hexa output array size.
0e644aaa Reject fake CDC-ECM data interface not located next to its control interface.
911007a9 Improved host HID usage handling.
d0576877 Enable dummy check of python for CodeQL
2761e105 Fixed some split transfer issue.
db0dbeda Added packet length validation for received nx packet.
f5007249 Fix PIMA issues on data set extraction
3ec66399 Fixing device RNDIS bugs with zero copy
1ec77d6b Fix device HID issue when adding class memory man and zero copy.
d52e55c0 Add zero copy support in device printer
a5cb883f Added zero copy support in device CDC_ECM and RNDIS
1f967ae2 Enable codeql in onebranch pipeline
de265dbc Enable zero copy for device audio and video
53aee275 Refined memory management to reduce overhead.
Diffstat (limited to 'common/usbx_host_classes/inc')
8 files changed, 49 insertions, 39 deletions
diff --git a/common/usbx_host_classes/inc/ux_host_class_audio.h b/common/usbx_host_classes/inc/ux_host_class_audio.h index 2405ab3..dde751d 100644 --- a/common/usbx_host_classes/inc/ux_host_class_audio.h +++ b/common/usbx_host_classes/inc/ux_host_class_audio.h @@ -26,7 +26,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_host_class_audio.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -57,9 +57,10 @@ /* added feedback support, */ /* added Audio 2.0 support, */ /* resulting in version 6.1.12 */ -/* xx-xx-xxxx Chaoqiong Xiao Modified comment(s), */ +/* 10-31-2023 Chaoqiong Xiao Modified comment(s), */ +/* improved AC AS management, */ /* optimized USB descriptors, */ -/* resulting in version 6.x */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ @@ -458,6 +459,7 @@ typedef struct UX_HOST_CLASS_AUDIO_STRUCT #if defined(UX_HOST_CLASS_AUDIO_INTERRUPT_SUPPORT) UX_HOST_CLASS_AUDIO_AC *ux_host_class_audio_ac; + ULONG ux_host_class_audio_ac_as; #endif struct UX_HOST_CLASS_AUDIO_TRANSFER_REQUEST_STRUCT *ux_host_class_audio_head_transfer_request; diff --git a/common/usbx_host_classes/inc/ux_host_class_cdc_ecm.h b/common/usbx_host_classes/inc/ux_host_class_cdc_ecm.h index f5332d0..fa1c183 100644 --- a/common/usbx_host_classes/inc/ux_host_class_cdc_ecm.h +++ b/common/usbx_host_classes/inc/ux_host_class_cdc_ecm.h @@ -26,7 +26,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_host_class_cdc_ecm.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -60,9 +60,9 @@ /* 10-31-2022 Chaoqiong Xiao Modified comment(s), */ /* supported NX packet chain, */ /* resulting in version 6.2.0 */ -/* 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_host_classes/inc/ux_host_class_hid.h b/common/usbx_host_classes/inc/ux_host_class_hid.h index 81074b4..4720cc7 100644 --- a/common/usbx_host_classes/inc/ux_host_class_hid.h +++ b/common/usbx_host_classes/inc/ux_host_class_hid.h @@ -26,7 +26,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_host_class_hid.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -55,9 +55,9 @@ /* added interrupt OUT support,*/ /* added standalone mode, */ /* resulting in version 6.1.10 */ -/* 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_host_classes/inc/ux_host_class_hub.h b/common/usbx_host_classes/inc/ux_host_class_hub.h index d008672..3204387 100644 --- a/common/usbx_host_classes/inc/ux_host_class_hub.h +++ b/common/usbx_host_classes/inc/ux_host_class_hub.h @@ -26,7 +26,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_host_class_hub.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -50,9 +50,9 @@ /* 07-29-2022 Chaoqiong Xiao Modified comment(s), */ /* added standalone support, */ /* resulting in version 6.1.12 */ -/* 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_host_classes/inc/ux_host_class_pima.h b/common/usbx_host_classes/inc/ux_host_class_pima.h index 9230395..7b4b915 100644 --- a/common/usbx_host_classes/inc/ux_host_class_pima.h +++ b/common/usbx_host_classes/inc/ux_host_class_pima.h @@ -21,12 +21,12 @@ /**************************************************************************/ -/**************************************************************************/ -/* */ -/* COMPONENT DEFINITION RELEASE */ -/* */ -/* ux_host_class_pima.h PORTABLE C */ -/* 6.x */ +/**************************************************************************/ +/* */ +/* COMPONENT DEFINITION RELEASE */ +/* */ +/* ux_host_class_pima.h PORTABLE C */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -53,11 +53,13 @@ /* 07-29-2022 Chaoqiong Xiao Modified comment(s), */ /* improved internal checks, */ /* resulting in version 6.1.12 */ -/* xx-xx-xxxx Chaoqiong Xiao Modified comment(s), */ +/* 10-31-2023 Chaoqiong Xiao Modified comment(s), */ +/* removed unused semaphore, */ +/* optimized PIMA data sets, */ /* increased default buffer */ /* length to get device info, */ -/* added error checks support, */ -/* resulting in version 6.x */ +/* added error checks support, */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ @@ -403,7 +405,6 @@ typedef struct UX_HOST_CLASS_PIMA_STRUCT struct UX_HOST_CLASS_PIMA_SESSION_STRUCT *ux_host_class_pima_session; UCHAR *ux_host_class_pima_container; - UX_SEMAPHORE ux_host_class_pima_semaphore; VOID *ux_host_class_pima_application; ULONG ux_host_class_pima_zlp_flag; @@ -447,10 +448,11 @@ typedef struct UX_HOST_CLASS_PIMA_OBJECT_STRUCT { ULONG ux_host_class_pima_object_storage_id; - ULONG ux_host_class_pima_object_format; - ULONG ux_host_class_pima_object_protection_satus; + USHORT ux_host_class_pima_object_format; + USHORT ux_host_class_pima_object_protection_status; ULONG ux_host_class_pima_object_compressed_size; - ULONG ux_host_class_pima_object_thumb_format; + USHORT ux_host_class_pima_object_thumb_format; + USHORT _align_thumb_compressed_size; ULONG ux_host_class_pima_object_thumb_compressed_size; ULONG ux_host_class_pima_object_thumb_pix_width; ULONG ux_host_class_pima_object_thumb_pix_height; @@ -458,7 +460,8 @@ typedef struct UX_HOST_CLASS_PIMA_OBJECT_STRUCT ULONG ux_host_class_pima_object_image_pix_height; ULONG ux_host_class_pima_object_image_bit_depth; ULONG ux_host_class_pima_object_parent_object; - ULONG ux_host_class_pima_object_association_type; + USHORT ux_host_class_pima_object_association_type; + USHORT _align_association_desc; ULONG ux_host_class_pima_object_association_desc; ULONG ux_host_class_pima_object_sequence_number; UCHAR ux_host_class_pima_object_filename[UX_HOST_CLASS_PIMA_UNICODE_MAX_LENGTH]; /* Null terminated unicode string. */ @@ -515,9 +518,10 @@ typedef struct UX_HOST_CLASS_PIMA_DEVICE_STRUCT typedef struct UX_HOST_CLASS_PIMA_STORAGE_STRUCT { - ULONG ux_host_class_pima_storage_type; - ULONG ux_host_class_pima_storage_file_system_type; - ULONG ux_host_class_pima_storage_access_capability; + USHORT ux_host_class_pima_storage_type; + USHORT ux_host_class_pima_storage_file_system_type; + USHORT ux_host_class_pima_storage_access_capability; + USHORT _align_max_capacity_low; ULONG ux_host_class_pima_storage_max_capacity_low; ULONG ux_host_class_pima_storage_max_capacity_high; ULONG ux_host_class_pima_storage_free_space_bytes_low; diff --git a/common/usbx_host_classes/inc/ux_host_class_printer.h b/common/usbx_host_classes/inc/ux_host_class_printer.h index 982d263..c8ff5e0 100644 --- a/common/usbx_host_classes/inc/ux_host_class_printer.h +++ b/common/usbx_host_classes/inc/ux_host_class_printer.h @@ -26,7 +26,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_host_class_printer.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -57,9 +57,9 @@ /* added standalone support, */ /* added a new protocol const, */ /* resulting in version 6.1.10 */ -/* 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_host_classes/inc/ux_host_class_storage.h b/common/usbx_host_classes/inc/ux_host_class_storage.h index c28ccea..215511e 100644 --- a/common/usbx_host_classes/inc/ux_host_class_storage.h +++ b/common/usbx_host_classes/inc/ux_host_class_storage.h @@ -26,7 +26,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_host_class_storage.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -64,9 +64,9 @@ /* 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 error checks support, */ -/* resulting in version 6.x */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ diff --git a/common/usbx_host_classes/inc/ux_host_class_video.h b/common/usbx_host_classes/inc/ux_host_class_video.h index 60164e7..095ecc3 100644 --- a/common/usbx_host_classes/inc/ux_host_class_video.h +++ b/common/usbx_host_classes/inc/ux_host_class_video.h @@ -26,7 +26,7 @@ /* COMPONENT DEFINITION RELEASE */ /* */ /* ux_host_class_video.h PORTABLE C */ -/* 6.x */ +/* 6.3.0 */ /* AUTHOR */ /* */ /* Chaoqiong Xiao, Microsoft Corporation */ @@ -56,10 +56,12 @@ /* according to UVC 1.5 Class */ /* specification, */ /* resulting in version 6.1.8 */ -/* xx-xx-xxxx Chaoqiong Xiao Modified comment(s), */ +/* 10-31-2023 Chaoqiong Xiao Modified comment(s), */ +/* added format and frame data */ +/* fields for H264 support, */ /* optimized USB descriptors, */ /* added error checks support, */ -/* resulting in version 6.x */ +/* resulting in version 6.3.0 */ /* */ /**************************************************************************/ @@ -607,6 +609,7 @@ typedef struct UX_HOST_CLASS_VIDEO_PARAMETER_FORMAT_DATA_STRUCT ULONG ux_host_class_video_parameter_format_requested; ULONG ux_host_class_video_parameter_format_subtype; + UCHAR *ux_host_class_video_parameter_format_guid; /* not NULL if GUID is available for the subtype. */ ULONG ux_host_class_video_parameter_number_frame_descriptors; } UX_HOST_CLASS_VIDEO_PARAMETER_FORMAT_DATA; @@ -619,7 +622,8 @@ typedef struct UX_HOST_CLASS_VIDEO_PARAMETER_FRAME_DATA_STRUCT ULONG ux_host_class_video_parameter_frame_width; ULONG ux_host_class_video_parameter_frame_height; ULONG ux_host_class_video_parameter_default_frame_interval; - ULONG ux_host_class_video_parameter_frame_interval_type; + ULONG ux_host_class_video_parameter_frame_interval_type; /* 0: continuous {min,max,step}, n: discrete */ + UCHAR *ux_host_class_video_parameter_frame_intervals; /* {dwMin,dwMax,dwStep},... or dw1,dw2,... depending on interval type. */ } UX_HOST_CLASS_VIDEO_PARAMETER_FRAME_DATA; |
