xref: /reactos/drivers/network/dd/e1000/debug.c (revision dc0433f0)
1 /*
2  * PROJECT:     ReactOS Intel PRO/1000 Driver
3  * LICENSE:     GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
4  * PURPOSE:     Translate NDIS_OID to readable string
5  * COPYRIGHT:   Copyright 2018 Mark Jansen (mark.jansen@reactos.org)
6  */
7 
8 #include "nic.h"
9 
10 #include <debug.h>
11 
12 const char* Oid2Str(IN NDIS_OID Oid)
13 {
14 #if DBG
15     switch (Oid)
16     {
17 #define RETURN_X(x) case x: return #x;
18         /* Required Object IDs (OIDs) */
19         RETURN_X(OID_GEN_SUPPORTED_LIST);
20         RETURN_X(OID_GEN_HARDWARE_STATUS);
21         RETURN_X(OID_GEN_MEDIA_SUPPORTED);
22         RETURN_X(OID_GEN_MEDIA_IN_USE);
23         RETURN_X(OID_GEN_MAXIMUM_LOOKAHEAD);
24         RETURN_X(OID_GEN_MAXIMUM_FRAME_SIZE);
25         RETURN_X(OID_GEN_LINK_SPEED);
26         RETURN_X(OID_GEN_TRANSMIT_BUFFER_SPACE);
27         RETURN_X(OID_GEN_RECEIVE_BUFFER_SPACE);
28         RETURN_X(OID_GEN_TRANSMIT_BLOCK_SIZE);
29         RETURN_X(OID_GEN_RECEIVE_BLOCK_SIZE);
30         RETURN_X(OID_GEN_VENDOR_ID);
31         RETURN_X(OID_GEN_VENDOR_DESCRIPTION);
32         RETURN_X(OID_GEN_CURRENT_PACKET_FILTER);
33         RETURN_X(OID_GEN_CURRENT_LOOKAHEAD);
34         RETURN_X(OID_GEN_DRIVER_VERSION);
35         RETURN_X(OID_GEN_MAXIMUM_TOTAL_SIZE);
36         RETURN_X(OID_GEN_PROTOCOL_OPTIONS);
37         RETURN_X(OID_GEN_MAC_OPTIONS);
38         RETURN_X(OID_GEN_MEDIA_CONNECT_STATUS);
39         RETURN_X(OID_GEN_MAXIMUM_SEND_PACKETS);
40         RETURN_X(OID_GEN_VENDOR_DRIVER_VERSION);
41         RETURN_X(OID_GEN_SUPPORTED_GUIDS);
42         RETURN_X(OID_GEN_NETWORK_LAYER_ADDRESSES);
43         RETURN_X(OID_GEN_TRANSPORT_HEADER_OFFSET);
44         RETURN_X(OID_GEN_MACHINE_NAME);
45         RETURN_X(OID_GEN_RNDIS_CONFIG_PARAMETER);
46         RETURN_X(OID_GEN_VLAN_ID);
47 
48         /* Optional OIDs */
49         RETURN_X(OID_GEN_MEDIA_CAPABILITIES);
50         RETURN_X(OID_GEN_PHYSICAL_MEDIUM);
51 
52         /* Required statistics OIDs */
53         RETURN_X(OID_GEN_XMIT_OK);
54         RETURN_X(OID_GEN_RCV_OK);
55         RETURN_X(OID_GEN_XMIT_ERROR);
56         RETURN_X(OID_GEN_RCV_ERROR);
57         RETURN_X(OID_GEN_RCV_NO_BUFFER);
58 
59         /* Optional statistics OIDs */
60         RETURN_X(OID_GEN_DIRECTED_BYTES_XMIT);
61         RETURN_X(OID_GEN_DIRECTED_FRAMES_XMIT);
62         RETURN_X(OID_GEN_MULTICAST_BYTES_XMIT);
63         RETURN_X(OID_GEN_MULTICAST_FRAMES_XMIT);
64         RETURN_X(OID_GEN_BROADCAST_BYTES_XMIT);
65         RETURN_X(OID_GEN_BROADCAST_FRAMES_XMIT);
66         RETURN_X(OID_GEN_DIRECTED_BYTES_RCV);
67         RETURN_X(OID_GEN_DIRECTED_FRAMES_RCV);
68         RETURN_X(OID_GEN_MULTICAST_BYTES_RCV);
69         RETURN_X(OID_GEN_MULTICAST_FRAMES_RCV);
70         RETURN_X(OID_GEN_BROADCAST_BYTES_RCV);
71         RETURN_X(OID_GEN_BROADCAST_FRAMES_RCV);
72         RETURN_X(OID_GEN_RCV_CRC_ERROR);
73         RETURN_X(OID_GEN_TRANSMIT_QUEUE_LENGTH);
74         RETURN_X(OID_GEN_GET_TIME_CAPS);
75         RETURN_X(OID_GEN_GET_NETCARD_TIME);
76         RETURN_X(OID_GEN_NETCARD_LOAD);
77         RETURN_X(OID_GEN_DEVICE_PROFILE);
78         RETURN_X(OID_GEN_INIT_TIME_MS);
79         RETURN_X(OID_GEN_RESET_COUNTS);
80         RETURN_X(OID_GEN_MEDIA_SENSE_COUNTS);
81         RETURN_X(OID_GEN_FRIENDLY_NAME);
82         RETURN_X(OID_GEN_MINIPORT_INFO);
83         RETURN_X(OID_GEN_RESET_VERIFY_PARAMETERS);
84 
85         /* IEEE 802.3 (Ethernet) OIDs */
86         //RETURN_X(NDIS_802_3_MAC_OPTION_PRIORITY);     /*Duplicate ID */
87 
88         RETURN_X(OID_802_3_PERMANENT_ADDRESS);
89         RETURN_X(OID_802_3_CURRENT_ADDRESS);
90         RETURN_X(OID_802_3_MULTICAST_LIST);
91         RETURN_X(OID_802_3_MAXIMUM_LIST_SIZE);
92         RETURN_X(OID_802_3_MAC_OPTIONS);
93         RETURN_X(OID_802_3_RCV_ERROR_ALIGNMENT);
94         RETURN_X(OID_802_3_XMIT_ONE_COLLISION);
95         RETURN_X(OID_802_3_XMIT_MORE_COLLISIONS);
96         RETURN_X(OID_802_3_XMIT_DEFERRED);
97         RETURN_X(OID_802_3_XMIT_MAX_COLLISIONS);
98         RETURN_X(OID_802_3_RCV_OVERRUN);
99         RETURN_X(OID_802_3_XMIT_UNDERRUN);
100         RETURN_X(OID_802_3_XMIT_HEARTBEAT_FAILURE);
101         RETURN_X(OID_802_3_XMIT_TIMES_CRS_LOST);
102         RETURN_X(OID_802_3_XMIT_LATE_COLLISIONS);
103 
104         /* IEEE 802.11 (WLAN) OIDs */
105         RETURN_X(OID_802_11_BSSID);
106         RETURN_X(OID_802_11_SSID);
107         RETURN_X(OID_802_11_NETWORK_TYPES_SUPPORTED);
108         RETURN_X(OID_802_11_NETWORK_TYPE_IN_USE);
109         RETURN_X(OID_802_11_TX_POWER_LEVEL);
110         RETURN_X(OID_802_11_RSSI);
111         RETURN_X(OID_802_11_RSSI_TRIGGER);
112         RETURN_X(OID_802_11_INFRASTRUCTURE_MODE);
113         RETURN_X(OID_802_11_FRAGMENTATION_THRESHOLD);
114         RETURN_X(OID_802_11_RTS_THRESHOLD);
115         RETURN_X(OID_802_11_NUMBER_OF_ANTENNAS);
116         RETURN_X(OID_802_11_RX_ANTENNA_SELECTED);
117         RETURN_X(OID_802_11_TX_ANTENNA_SELECTED);
118         RETURN_X(OID_802_11_SUPPORTED_RATES);
119         RETURN_X(OID_802_11_DESIRED_RATES);
120         RETURN_X(OID_802_11_CONFIGURATION);
121         RETURN_X(OID_802_11_STATISTICS);
122         RETURN_X(OID_802_11_ADD_WEP);
123         RETURN_X(OID_802_11_REMOVE_WEP);
124         RETURN_X(OID_802_11_DISASSOCIATE);
125         RETURN_X(OID_802_11_POWER_MODE);
126         RETURN_X(OID_802_11_BSSID_LIST);
127         RETURN_X(OID_802_11_AUTHENTICATION_MODE);
128         RETURN_X(OID_802_11_PRIVACY_FILTER);
129         RETURN_X(OID_802_11_BSSID_LIST_SCAN);
130         RETURN_X(OID_802_11_WEP_STATUS);
131         RETURN_X(OID_802_11_RELOAD_DEFAULTS);
132 
133         /* OID_GEN_MINIPORT_INFO constants */
134         RETURN_X(NDIS_MINIPORT_BUS_MASTER);
135         RETURN_X(NDIS_MINIPORT_WDM_DRIVER);
136         RETURN_X(NDIS_MINIPORT_SG_LIST);
137         RETURN_X(NDIS_MINIPORT_SUPPORTS_MEDIA_QUERY);
138         RETURN_X(NDIS_MINIPORT_INDICATES_PACKETS);
139         RETURN_X(NDIS_MINIPORT_IGNORE_PACKET_QUEUE);
140         RETURN_X(NDIS_MINIPORT_IGNORE_REQUEST_QUEUE);
141         RETURN_X(NDIS_MINIPORT_IGNORE_TOKEN_RING_ERRORS);
142         RETURN_X(NDIS_MINIPORT_INTERMEDIATE_DRIVER);
143         RETURN_X(NDIS_MINIPORT_IS_NDIS_5);
144         RETURN_X(NDIS_MINIPORT_IS_CO);
145         RETURN_X(NDIS_MINIPORT_DESERIALIZE);
146         RETURN_X(NDIS_MINIPORT_REQUIRES_MEDIA_POLLING);
147         RETURN_X(NDIS_MINIPORT_SUPPORTS_MEDIA_SENSE);
148         RETURN_X(NDIS_MINIPORT_NETBOOT_CARD);
149         RETURN_X(NDIS_MINIPORT_PM_SUPPORTED);
150         RETURN_X(NDIS_MINIPORT_SUPPORTS_MAC_ADDRESS_OVERWRITE);
151         RETURN_X(NDIS_MINIPORT_USES_SAFE_BUFFER_APIS);
152         RETURN_X(NDIS_MINIPORT_HIDDEN);
153         RETURN_X(NDIS_MINIPORT_SWENUM);
154         RETURN_X(NDIS_MINIPORT_SURPRISE_REMOVE_OK);
155         RETURN_X(NDIS_MINIPORT_NO_HALT_ON_SUSPEND);
156         RETURN_X(NDIS_MINIPORT_HARDWARE_DEVICE);
157         RETURN_X(NDIS_MINIPORT_SUPPORTS_CANCEL_SEND_PACKETS);
158         RETURN_X(NDIS_MINIPORT_64BITS_DMA);
159     default:
160         return "<UNKNOWN>";
161     }
162 #else
163     return "!DBG";
164 #endif
165 }
166 
167 
168