summaryrefslogtreecommitdiff
path: root/common/usbx_device_classes/inc
diff options
context:
space:
mode:
Diffstat (limited to 'common/usbx_device_classes/inc')
-rw-r--r--common/usbx_device_classes/inc/ux_device_class_audio.h9
-rw-r--r--common/usbx_device_classes/inc/ux_device_class_audio10.h4
-rw-r--r--common/usbx_device_classes/inc/ux_device_class_audio20.h4
-rw-r--r--common/usbx_device_classes/inc/ux_device_class_cdc_acm.h17
-rw-r--r--common/usbx_device_classes/inc/ux_device_class_cdc_ecm.h17
-rw-r--r--common/usbx_device_classes/inc/ux_device_class_dfu.h11
-rw-r--r--common/usbx_device_classes/inc/ux_device_class_hid.h9
-rw-r--r--common/usbx_device_classes/inc/ux_device_class_pima.h13
-rw-r--r--common/usbx_device_classes/inc/ux_device_class_rndis.h19
-rw-r--r--common/usbx_device_classes/inc/ux_device_class_storage.h25
10 files changed, 88 insertions, 40 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 2ed7cfb..38acd0d 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.0 */
+/* 6.1 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -41,6 +41,11 @@
/* DATE NAME DESCRIPTION */
/* */
/* 05-19-2020 Chaoqiong Xiao Initial Version 6.0 */
+/* 09-30-2020 Chaoqiong Xiao Modified comment(s), */
+/* used UX prefix to refer to */
+/* TX symbols instead of using */
+/* them directly, */
+/* resulting in version 6.1 */
/* */
/**************************************************************************/
@@ -333,7 +338,7 @@ typedef struct UX_DEVICE_CLASS_AUDIO_STREAM_STRUCT
UX_DEVICE_CLASS_AUDIO_STREAM_CALLBACKS ux_device_class_audio_stream_callbacks;
UCHAR *ux_device_class_audio_stream_thread_stack;
- TX_THREAD ux_device_class_audio_stream_thread;
+ UX_THREAD ux_device_class_audio_stream_thread;
UCHAR *ux_device_class_audio_stream_buffer;
ULONG ux_device_class_audio_stream_buffer_size;
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 4d3572e..add1f9e 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.0 */
+/* 6.1 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -41,6 +41,8 @@
/* DATE NAME DESCRIPTION */
/* */
/* 05-19-2020 Chaoqiong Xiao Initial Version 6.0 */
+/* 09-30-2020 Chaoqiong Xiao Modified comment(s), */
+/* resulting in version 6.1 */
/* */
/**************************************************************************/
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 6da1b1b..f55df76 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.0 */
+/* 6.1 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -41,6 +41,8 @@
/* DATE NAME DESCRIPTION */
/* */
/* 05-19-2020 Chaoqiong Xiao Initial Version 6.0 */
+/* 09-30-2020 Chaoqiong Xiao Modified comment(s), */
+/* resulting in version 6.1 */
/* */
/**************************************************************************/
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 43a6703..3934fc9 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.0 */
+/* 6.1 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -39,6 +39,11 @@
/* DATE NAME DESCRIPTION */
/* */
/* 05-19-2020 Chaoqiong Xiao Initial Version 6.0 */
+/* 09-30-2020 Chaoqiong Xiao Modified comment(s), */
+/* used UX prefix to refer to */
+/* TX symbols instead of using */
+/* them directly, */
+/* resulting in version 6.1 */
/* */
/**************************************************************************/
@@ -137,21 +142,21 @@ typedef struct UX_SLAVE_CLASS_CDC_ACM_STRUCT
{
UX_SLAVE_INTERFACE *ux_slave_class_cdc_acm_interface;
UX_SLAVE_CLASS_CDC_ACM_PARAMETER ux_slave_class_cdc_acm_parameter;
- TX_MUTEX ux_slave_class_cdc_acm_endpoint_in_mutex;
- TX_MUTEX ux_slave_class_cdc_acm_endpoint_out_mutex;
+ UX_MUTEX ux_slave_class_cdc_acm_endpoint_in_mutex;
+ UX_MUTEX ux_slave_class_cdc_acm_endpoint_out_mutex;
ULONG ux_slave_class_cdc_acm_baudrate;
UCHAR ux_slave_class_cdc_acm_stop_bit;
UCHAR ux_slave_class_cdc_acm_parity;
UCHAR ux_slave_class_cdc_acm_data_bit;
UCHAR ux_slave_class_cdc_acm_data_dtr_state;
UCHAR ux_slave_class_cdc_acm_data_rts_state;
- TX_THREAD ux_slave_class_cdc_acm_bulkin_thread;
- TX_THREAD ux_slave_class_cdc_acm_bulkout_thread;
+ UX_THREAD ux_slave_class_cdc_acm_bulkin_thread;
+ UX_THREAD ux_slave_class_cdc_acm_bulkout_thread;
UCHAR *ux_slave_class_cdc_acm_bulkin_thread_stack;
UCHAR *ux_slave_class_cdc_acm_bulkout_thread_stack;
UINT (*ux_device_class_cdc_acm_write_callback)(struct UX_SLAVE_CLASS_CDC_ACM_STRUCT *cdc_acm, UINT status, ULONG length);
UINT (*ux_device_class_cdc_acm_read_callback)(struct UX_SLAVE_CLASS_CDC_ACM_STRUCT *cdc_acm, UINT status, UCHAR *data_pointer, ULONG length);
- TX_EVENT_FLAGS_GROUP ux_slave_class_cdc_acm_event_flags_group;
+ UX_EVENT_FLAGS_GROUP ux_slave_class_cdc_acm_event_flags_group;
ULONG ux_slave_class_cdc_acm_transmission_status;
ULONG ux_slave_class_cdc_acm_scheduled_write;
ULONG ux_slave_class_cdc_acm_callback_total_length;
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 df6dee3..fac6c1c 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.0 */
+/* 6.1 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -39,6 +39,11 @@
/* DATE NAME DESCRIPTION */
/* */
/* 05-19-2020 Chaoqiong Xiao Initial Version 6.0 */
+/* 09-30-2020 Chaoqiong Xiao Modified comment(s), */
+/* used UX prefix to refer to */
+/* TX symbols instead of using */
+/* them directly, */
+/* resulting in version 6.1 */
/* */
/**************************************************************************/
@@ -269,7 +274,7 @@ typedef struct UX_SLAVE_CLASS_CDC_ECM_STRUCT
ULONG ux_slave_class_cdc_ecm_ethernet_multicast_filter;
ULONG ux_slave_class_cdc_ecm_ethernet_power_management_filter;
ULONG ux_slave_class_cdc_ecm_ethernet_packet_filter;
- TX_EVENT_FLAGS_GROUP ux_slave_class_cdc_ecm_event_flags_group;
+ UX_EVENT_FLAGS_GROUP ux_slave_class_cdc_ecm_event_flags_group;
UCHAR ux_slave_class_cdc_ecm_local_node_id[UX_DEVICE_CLASS_CDC_ECM_NODE_ID_LENGTH];
UCHAR ux_slave_class_cdc_ecm_remote_node_id[UX_DEVICE_CLASS_CDC_ECM_NODE_ID_LENGTH];
NX_IP *ux_slave_class_cdc_ecm_nx_ip;
@@ -281,14 +286,14 @@ typedef struct UX_SLAVE_CLASS_CDC_ECM_STRUCT
NX_PACKET *ux_slave_class_cdc_ecm_receive_queue;
UCHAR *ux_slave_class_cdc_ecm_pool_memory;
NX_PACKET_POOL ux_slave_class_cdc_ecm_packet_pool;
- TX_THREAD ux_slave_class_cdc_ecm_bulkin_thread;
- TX_THREAD ux_slave_class_cdc_ecm_bulkout_thread;
- TX_THREAD ux_slave_class_cdc_ecm_interrupt_thread;
+ UX_THREAD ux_slave_class_cdc_ecm_bulkin_thread;
+ UX_THREAD ux_slave_class_cdc_ecm_bulkout_thread;
+ UX_THREAD ux_slave_class_cdc_ecm_interrupt_thread;
UCHAR *ux_slave_class_cdc_ecm_bulkin_thread_stack;
UCHAR *ux_slave_class_cdc_ecm_bulkout_thread_stack;
UCHAR *ux_slave_class_cdc_ecm_interrupt_thread_stack;
ULONG ux_slave_class_cdc_ecm_link_state;
- TX_MUTEX ux_slave_class_cdc_ecm_mutex;
+ UX_MUTEX ux_slave_class_cdc_ecm_mutex;
VOID *ux_slave_class_cdc_ecm_network_handle;
} UX_SLAVE_CLASS_CDC_ECM;
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 815aec0..10e3985 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.0 */
+/* 6.1 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -39,6 +39,11 @@
/* DATE NAME DESCRIPTION */
/* */
/* 05-19-2020 Chaoqiong Xiao Initial Version 6.0 */
+/* 09-30-2020 Chaoqiong Xiao Modified comment(s), */
+/* used UX prefix to refer to */
+/* TX symbols instead of using */
+/* them directly, */
+/* resulting in version 6.1 */
/* */
/**************************************************************************/
@@ -161,9 +166,9 @@ typedef struct UX_SLAVE_CLASS_DFU_STRUCT
UINT (*ux_slave_class_dfu_notify)(VOID *dfu, ULONG notification);
ULONG ux_slave_class_dfu_download_block_count;
ULONG ux_slave_class_dfu_upload_block_count;
- TX_THREAD ux_slave_class_dfu_thread;
+ UX_THREAD ux_slave_class_dfu_thread;
UCHAR *ux_slave_class_dfu_thread_stack;
- TX_EVENT_FLAGS_GROUP ux_slave_class_dfu_event_flags_group;
+ UX_EVENT_FLAGS_GROUP ux_slave_class_dfu_event_flags_group;
} UX_SLAVE_CLASS_DFU;
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 f1b885b..05e3833 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.0 */
+/* 6.1 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -41,6 +41,11 @@
/* DATE NAME DESCRIPTION */
/* */
/* 05-19-2020 Chaoqiong Xiao Initial Version 6.0 */
+/* 09-30-2020 Chaoqiong Xiao Modified comment(s), */
+/* used UX prefix to refer to */
+/* TX symbols instead of using */
+/* them directly, */
+/* resulting in version 6.1 */
/* */
/**************************************************************************/
@@ -122,7 +127,7 @@ typedef struct UX_SLAVE_CLASS_HID_STRUCT
UCHAR *ux_device_class_hid_report_address;
ULONG ux_device_class_hid_report_id;
ULONG ux_device_class_hid_report_length;
- TX_EVENT_FLAGS_GROUP ux_device_class_hid_event_flags_group;
+ UX_EVENT_FLAGS_GROUP ux_device_class_hid_event_flags_group;
ULONG ux_device_class_hid_event_idle_rate;
ULONG ux_device_class_hid_event_wait_timeout;
UX_SLAVE_CLASS_HID_EVENT *ux_device_class_hid_event_array;
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 5506927..36558ba 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.0 */
+/* 6.1 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -41,6 +41,11 @@
/* DATE NAME DESCRIPTION */
/* */
/* 05-19-2020 Chaoqiong Xiao Initial Version 6.0 */
+/* 09-30-2020 Chaoqiong Xiao Modified comment(s), */
+/* used UX prefix to refer to */
+/* TX symbols instead of using */
+/* them directly, */
+/* resulting in version 6.1 */
/* */
/**************************************************************************/
@@ -785,10 +790,10 @@ typedef struct UX_SLAVE_CLASS_PIMA_STRUCT
ULONG ux_device_class_pima_storage_free_space_image;
UCHAR *ux_device_class_pima_storage_description;
UCHAR *ux_device_class_pima_storage_volume_label;
- TX_SEMAPHORE ux_device_class_pima_semaphore;
- TX_THREAD ux_device_class_pima_interrupt_thread;
+ UX_SEMAPHORE ux_device_class_pima_semaphore;
+ UX_THREAD ux_device_class_pima_interrupt_thread;
UCHAR *ux_device_class_pima_interrupt_thread_stack;
- TX_SEMAPHORE ux_device_class_pima_interrupt_thread_semaphore;
+ UX_SEMAPHORE ux_device_class_pima_interrupt_thread_semaphore;
UX_SLAVE_CLASS_PIMA_EVENT
*ux_device_class_pima_event_array;
UX_SLAVE_CLASS_PIMA_EVENT
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 c934b18..7142cf3 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.0 */
+/* 6.1 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -39,6 +39,11 @@
/* DATE NAME DESCRIPTION */
/* */
/* 05-19-2020 Chaoqiong Xiao Initial Version 6.0 */
+/* 09-30-2020 Chaoqiong Xiao Modified comment(s), */
+/* used UX prefix to refer to */
+/* TX symbols instead of using */
+/* them directly, */
+/* resulting in version 6.1 */
/* */
/**************************************************************************/
@@ -479,7 +484,7 @@ typedef struct UX_SLAVE_CLASS_RNDIS_STRUCT
{
UX_SLAVE_INTERFACE *ux_slave_class_rndis_interface;
UX_SLAVE_CLASS_RNDIS_PARAMETER ux_slave_class_rndis_parameter;
- TX_SEMAPHORE ux_slave_class_rndis_semaphore;
+ UX_SEMAPHORE ux_slave_class_rndis_semaphore;
UX_SLAVE_ENDPOINT *ux_slave_class_rndis_interrupt_endpoint;
UX_SLAVE_ENDPOINT *ux_slave_class_rndis_bulkin_endpoint;
UX_SLAVE_ENDPOINT *ux_slave_class_rndis_bulkout_endpoint;
@@ -498,7 +503,7 @@ typedef struct UX_SLAVE_CLASS_RNDIS_STRUCT
ULONG ux_slave_class_rndis_statistics_rcv_error_alignment;
ULONG ux_slave_class_rndis_statistics_xmit_one_collision;
ULONG ux_slave_class_rndis_statistics_xmit_more_collisions;
- TX_EVENT_FLAGS_GROUP ux_slave_class_rndis_event_flags_group;
+ UX_EVENT_FLAGS_GROUP ux_slave_class_rndis_event_flags_group;
UCHAR ux_slave_class_rndis_local_node_id[UX_DEVICE_CLASS_RNDIS_NODE_ID_LENGTH];
UCHAR ux_slave_class_rndis_remote_node_id[UX_DEVICE_CLASS_RNDIS_NODE_ID_LENGTH];
NX_IP *ux_slave_class_rndis_nx_ip;
@@ -509,14 +514,14 @@ typedef struct UX_SLAVE_CLASS_RNDIS_STRUCT
NX_PACKET *ux_slave_class_rndis_receive_queue;
UCHAR *ux_slave_class_rndis_pool_memory;
NX_PACKET_POOL ux_slave_class_rndis_packet_pool;
- TX_THREAD ux_slave_class_rndis_interrupt_thread;
- TX_THREAD ux_slave_class_rndis_bulkin_thread;
- TX_THREAD ux_slave_class_rndis_bulkout_thread;
+ UX_THREAD ux_slave_class_rndis_interrupt_thread;
+ UX_THREAD ux_slave_class_rndis_bulkin_thread;
+ UX_THREAD ux_slave_class_rndis_bulkout_thread;
UCHAR *ux_slave_class_rndis_interrupt_thread_stack;
UCHAR *ux_slave_class_rndis_bulkin_thread_stack;
UCHAR *ux_slave_class_rndis_bulkout_thread_stack;
ULONG ux_slave_class_rndis_link_state;
- TX_MUTEX ux_slave_class_rndis_mutex;
+ UX_MUTEX ux_slave_class_rndis_mutex;
VOID *ux_slave_class_rndis_network_handle;
} UX_SLAVE_CLASS_RNDIS;
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 c2e7858..e658da8 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.0.2 */
+/* 6.1 */
/* AUTHOR */
/* */
/* Chaoqiong Xiao, Microsoft Corporation */
@@ -41,9 +41,9 @@
/* DATE NAME DESCRIPTION */
/* */
/* 05-19-2020 Chaoqiong Xiao Initial Version 6.0 */
-/* 08-14-2020 Chaoqiong Xiao Modified comment(s), */
-/* added mode related macros, */
-/* resulting in version 6.0.2 */
+/* 09-30-2020 Chaoqiong Xiao Modified comment(s), */
+/* optimized command logic, */
+/* resulting in version 6.1 */
/* */
/**************************************************************************/
@@ -425,9 +425,7 @@ typedef struct UX_SLAVE_CLASS_STORAGE_LUN_STRUCT
ULONG ux_slave_class_storage_media_read_only_flag;
ULONG ux_slave_class_storage_media_id;
ULONG ux_slave_class_storage_scsi_tag;
- UCHAR ux_slave_class_storage_request_sense_key;
- UCHAR ux_slave_class_storage_request_code;
- UCHAR ux_slave_class_storage_request_code_qualifier;
+ ULONG ux_slave_class_storage_request_sense_status;
ULONG ux_slave_class_storage_disk_status;
ULONG ux_slave_class_storage_last_session_state;
UINT (*ux_slave_class_storage_media_read)(VOID *storage, ULONG lun, UCHAR *data_pointer, ULONG number_blocks, ULONG lba, ULONG *media_status);
@@ -437,6 +435,14 @@ typedef struct UX_SLAVE_CLASS_STORAGE_LUN_STRUCT
UINT (*ux_slave_class_storage_media_notification)(VOID *storage, ULONG lun, ULONG media_id, ULONG notification_class, UCHAR **media_notification, ULONG *media_notification_length);
} UX_SLAVE_CLASS_STORAGE_LUN;
+/* Sense status value (key at bit0-7, code at bit8-15 and qualifier at bit16-23). */
+
+#define UX_DEVICE_CLASS_STORAGE_SENSE_STATUS(key,code,qualifier) (((key) & 0xFF)|(((code) & 0xFF) << 8)|(((qualifier) & 0xFF) << 16))
+#define UX_DEVICE_CLASS_STORAGE_SENSE_KEY(status) ((status) & 0xFF)
+#define UX_DEVICE_CLASS_STORAGE_SENSE_CODE(status) (((status) >> 8) & 0xFF)
+#define UX_DEVICE_CLASS_STORAGE_SENSE_QUALIFIER(status) (((status) >> 16) & 0xFF)
+
+
/* Define Slave Storage Class structure. */
typedef struct UX_SLAVE_CLASS_STORAGE_STRUCT
@@ -444,7 +450,7 @@ typedef struct UX_SLAVE_CLASS_STORAGE_STRUCT
UX_SLAVE_INTERFACE *ux_slave_class_storage_interface;
ULONG ux_slave_class_storage_number_lun;
UX_SLAVE_CLASS_STORAGE_LUN ux_slave_class_storage_lun[UX_MAX_SLAVE_LUN];
- ULONG ux_slave_class_storage_phase_error;
+ ULONG ux_slave_class_storage_csw_status;
VOID (*ux_slave_class_storage_instance_activate)(VOID *);
VOID (*ux_slave_class_storage_instance_deactivate)(VOID *);
UCHAR *ux_slave_class_storage_vendor_id;
@@ -454,6 +460,9 @@ typedef struct UX_SLAVE_CLASS_STORAGE_STRUCT
} UX_SLAVE_CLASS_STORAGE;
+#define UX_DEVICE_CLASS_STORAGE_CSW_STATUS(p) (((UCHAR*)(p))[0])
+#define UX_DEVICE_CLASS_STORAGE_CSW_SKIP(p) (((UCHAR*)(p))[3])
+
/* Define Slave Storage Class Calling Parameter structure */
typedef struct UX_SLAVE_CLASS_STORAGE_PARAMETER_STRUCT