1 /* Global debug macros, variables, functions - header file */
4 #include <usb/usbdebug.h>
5 #include <usb/usb_spec.h>
9 /* debug can be enabled in run-time */
10 #if defined(DEBUG_USE_DYNAMIC_LEVEL) /* use dynamic debug level */
11 unsigned char usb_debug_level = DEBUG_LEVEL_NONE;
14 /*************************************************************
16 *************************************************************/
18 void usb_debug_set_level(int level) {
19 #if defined(DEBUG_USE_DYNAMIC_LEVEL) /* use dynamic debug level */
20 usb_debug_level = level;
25 char *usb_debug_get_req_recipient( char rqt) {
26 switch ( rqt & USB_RECIPIENT) {
27 case USB_RECIPIENT_DEVICE: return "DEVICE";
28 case USB_RECIPIENT_INTERFACE: return "INTERFACE";
29 case USB_RECIPIENT_ENDPOINT: return "ENDPOINT";
33 char *usb_debug_get_req_type( char rqt) {
34 switch ( rqt & USB_REQUEST_TYPE_MASK) {
35 case USB_STANDARD_REQUEST: return "STANDARD";
36 case USB_CLASS_REQUEST: return "CLASS";
37 case USB_VENDOR_REQUEST: return "VENDOR";
41 char *usb_debug_get_std_request( char req) {
42 switch ( req & USB_REQUEST_MASK) {
43 case USB_REQUEST_GET_STATUS: return "GET STATUS";
44 case USB_REQUEST_CLEAR_FEATURE: return "CLEAR FEATURE";
45 case USB_REQUEST_SET_FEATURE: return "SET FEATURE";
46 case USB_REQUEST_SET_ADDRESS: return "SET ADDRESS";
48 case USB_REQUEST_GET_DESCRIPTOR: return "GET DESCRIPTOR";
49 case USB_REQUEST_SET_DESCRIPTOR: return "SET DESCRIPTOR";
50 case USB_REQUEST_GET_CONFIGURATION: return "GET CONFIGURATION";
51 case USB_REQUEST_SET_CONFIGURATION: return "SET CONFIGURATION";
52 case USB_REQUEST_GET_INTERFACE: return "GET INTERFACE";
53 case USB_REQUEST_SET_INTERFACE: return "SET INTERFACE";
54 case USB_REQUEST_SYNC_FRAME: return "SYNC FRAME";
58 char *usb_debug_get_std_descriptor( unsigned char desc) {
61 case USB_DESCRIPTOR_TYPE_DEVICE: return "DEVICE";
62 case USB_DESCRIPTOR_TYPE_CONFIGURATION: return "CONFIGURATION";
63 case USB_DESCRIPTOR_TYPE_STRING: return "STRING";
64 case USB_DESCRIPTOR_TYPE_INTERFACE: return "INTERFACE";
65 case USB_DESCRIPTOR_TYPE_ENDPOINT: return "ENDPOINT";
66 case USB_DESCRIPTOR_TYPE_DEVICE_QUALIFIER: return "DEVICE_QUALIFIER";
67 case USB_DESCRIPTOR_TYPE_OTHER_SPEED_CONFIGURATION: return "OTHER_SPEED_CONFIG";
68 case USB_DESCRIPTOR_TYPE_POWER: return "POWER";
74 void usb_debug_set_level(int level) {