* Add support for SK98xx driver
[oweals/u-boot.git] / drivers / sk98lin / skgemib.c
1 /*****************************************************************************
2  *
3  * Name:        skgemib.c
4  * Project:     GEnesis, PCI Gigabit Ethernet Adapter
5  * Version:     $Revision: 1.7 $
6  * Date:        $Date: 2002/12/16 09:04:34 $
7  * Purpose:     Private Network Management Interface Management Database
8  *
9  ****************************************************************************/
10
11 /******************************************************************************
12  *
13  *      (C)Copyright 2002 SysKonnect GmbH.
14  *
15  *      This program is free software; you can redistribute it and/or modify
16  *      it under the terms of the GNU General Public License as published by
17  *      the Free Software Foundation; either version 2 of the License, or
18  *      (at your option) any later version.
19  *
20  *      The information in this file is provided "AS IS" without warranty.
21  *
22  ******************************************************************************/
23
24 /*****************************************************************************
25  *
26  * History:
27  *
28  *      $Log: skgemib.c,v $
29  *      Revision 1.7  2002/12/16 09:04:34  tschilli
30  *      Code for VCT handling added.
31  *      
32  *      Revision 1.6  2002/08/09 15:40:21  rwahl
33  *      Editorial change (renamed ConfSpeedCap).
34  *      
35  *      Revision 1.5  2002/08/09 11:05:34  rwahl
36  *      Added oid handling for link speed cap.
37  *      
38  *      Revision 1.4  2002/08/09 09:40:27  rwahl
39  *      Added support for NDIS OID_PNP_xxx.
40  *      
41  *      Revision 1.3  2002/07/17 19:39:54  rwahl
42  *      Added handler for OID_SKGE_SPEED_MODE & OID_SKGE_SPEED_STATUS.
43  *      
44  *      Revision 1.2  2002/05/22 08:59:00  rwahl
45  *      - static functions only for release build.
46  *      - Source file must be included.
47  *      
48  *      Revision 1.1  2002/05/22 08:12:42  rwahl
49  *      Initial version.
50  *      
51  ****************************************************************************/
52
53 /*
54  * PRIVATE OID handler function prototypes
55  */
56 PNMI_STATIC int Addr(SK_AC *pAC, SK_IOC IoC, int action,
57         SK_U32 Id, char *pBuf, unsigned int *pLen, SK_U32 Instance,
58         unsigned int TableIndex, SK_U32 NetIndex);
59 PNMI_STATIC int CsumStat(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,
60         char *pBuf, unsigned int *pLen, SK_U32 Instance,
61         unsigned int TableIndex, SK_U32 NetIndex);
62 PNMI_STATIC int General(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,
63         char *pBuf, unsigned int *pLen, SK_U32 Instance,
64         unsigned int TableIndex, SK_U32 NetIndex);
65 PNMI_STATIC int Mac8023Stat(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,
66         char *pBuf, unsigned int *pLen, SK_U32 Instance,
67         unsigned int TableIndex, SK_U32 NetIndex);
68 PNMI_STATIC int MacPrivateConf(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,
69         char *pBuf, unsigned int *pLen, SK_U32 Instance,
70         unsigned int TableIndex, SK_U32 NetIndex);
71 PNMI_STATIC int MacPrivateStat(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,
72         char *pBuf, unsigned int *pLen, SK_U32 Instance,
73         unsigned int TableIndex, SK_U32 NetIndex);
74 PNMI_STATIC int Monitor(SK_AC *pAC, SK_IOC IoC, int action,
75         SK_U32 Id, char *pBuf, unsigned int *pLen, SK_U32 Instance,
76         unsigned int TableIndex, SK_U32 NetIndex);
77 PNMI_STATIC int OidStruct(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,
78         char *pBuf, unsigned int *pLen, SK_U32 Instance,
79         unsigned int TableIndex, SK_U32 NetIndex);
80 PNMI_STATIC int Perform(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,
81         char *pBuf, unsigned int* pLen, SK_U32 Instance,
82         unsigned int TableIndex, SK_U32 NetIndex);
83 PNMI_STATIC int Rlmt(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,
84         char *pBuf, unsigned int *pLen, SK_U32 Instance,
85         unsigned int TableIndex, SK_U32 NetIndex);
86 PNMI_STATIC int RlmtStat(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,
87         char *pBuf, unsigned int *pLen, SK_U32 Instance,
88         unsigned int TableIndex, SK_U32 NetIndex);
89 PNMI_STATIC int SensorStat(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,
90         char *pBuf, unsigned int *pLen, SK_U32 Instance,
91         unsigned int TableIndex, SK_U32 NetIndex);
92 PNMI_STATIC int Vpd(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,
93         char *pBuf, unsigned int *pLen, SK_U32 Instance,
94         unsigned int TableIndex, SK_U32 NetIndex);
95 PNMI_STATIC int Vct(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,
96         char *pBuf, unsigned int *pLen, SK_U32 Instance,
97         unsigned int TableIndex, SK_U32 NetIndex);
98
99 #ifdef SK_POWER_MGMT
100 PNMI_STATIC int PowerManagement(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,
101         char *pBuf, unsigned int *pLen, SK_U32 Instance,
102         unsigned int TableIndex, SK_U32 NetIndex);
103 #endif
104
105
106
107 /* defines *******************************************************************/
108 #define ID_TABLE_SIZE (sizeof(IdTable)/sizeof(IdTable[0]))
109
110
111 /* global variables **********************************************************/
112
113 /*
114  * Table to correlate OID with handler function and index to
115  * hardware register stored in StatAddress if applicable.
116  */
117 PNMI_STATIC const SK_PNMI_TAB_ENTRY IdTable[] = {
118         {OID_GEN_XMIT_OK,
119                 0,
120                 0,
121                 0,
122                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX},
123         {OID_GEN_RCV_OK,
124                 0,
125                 0,
126                 0,
127                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HRX},
128         {OID_GEN_XMIT_ERROR,
129                 0,
130                 0,
131                 0,
132                 SK_PNMI_RO, General, 0},
133         {OID_GEN_RCV_ERROR,
134                 0,
135                 0,
136                 0,
137                 SK_PNMI_RO, General, 0},
138         {OID_GEN_RCV_NO_BUFFER,
139                 0,
140                 0,
141                 0,
142                 SK_PNMI_RO, General, 0},
143         {OID_GEN_DIRECTED_FRAMES_XMIT,
144                 0,
145                 0,
146                 0,
147                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_UNICAST},
148         {OID_GEN_MULTICAST_FRAMES_XMIT,
149                 0,
150                 0,
151                 0,
152                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_MULTICAST},
153         {OID_GEN_BROADCAST_FRAMES_XMIT,
154                 0,
155                 0,
156                 0,
157                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_BROADCAST},
158         {OID_GEN_DIRECTED_FRAMES_RCV,
159                 0,
160                 0,
161                 0,
162                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HRX_UNICAST},
163         {OID_GEN_MULTICAST_FRAMES_RCV,
164                 0,
165                 0,
166                 0,
167                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HRX_MULTICAST},
168         {OID_GEN_BROADCAST_FRAMES_RCV,
169                 0,
170                 0,
171                 0,
172                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HRX_BROADCAST},
173         {OID_GEN_RCV_CRC_ERROR,
174                 0,
175                 0,
176                 0,
177                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HRX_FCS},
178         {OID_GEN_TRANSMIT_QUEUE_LENGTH,
179                 0,
180                 0,
181                 0,
182                 SK_PNMI_RO, General, 0},
183         {OID_802_3_PERMANENT_ADDRESS,
184                 0,
185                 0,
186                 0,
187                 SK_PNMI_RO, Mac8023Stat, 0},
188         {OID_802_3_CURRENT_ADDRESS,
189                 0,
190                 0,
191                 0,
192                 SK_PNMI_RO, Mac8023Stat, 0},
193         {OID_802_3_RCV_ERROR_ALIGNMENT,
194                 0,
195                 0,
196                 0,
197                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HRX_FRAMING},
198         {OID_802_3_XMIT_ONE_COLLISION,
199                 0,
200                 0,
201                 0,
202                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_SINGLE_COL},
203         {OID_802_3_XMIT_MORE_COLLISIONS,
204                 0,
205                 0,
206                 0,
207                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_MULTI_COL},
208         {OID_802_3_XMIT_DEFERRED,
209                 0,
210                 0,
211                 0,
212                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_DEFFERAL},
213         {OID_802_3_XMIT_MAX_COLLISIONS,
214                 0,
215                 0,
216                 0,
217                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_EXCESS_COL},
218         {OID_802_3_RCV_OVERRUN,
219                 0,
220                 0,
221                 0,
222                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HRX_OVERFLOW},
223         {OID_802_3_XMIT_UNDERRUN,
224                 0,
225                 0,
226                 0,
227                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_UNDERRUN},
228         {OID_802_3_XMIT_TIMES_CRS_LOST,
229                 0,
230                 0,
231                 0,
232                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_CARRIER},
233         {OID_802_3_XMIT_LATE_COLLISIONS,
234                 0,
235                 0,
236                 0,
237                 SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_LATE_COL},
238 #ifdef SK_POWER_MGMT
239         {OID_PNP_CAPABILITIES,
240                 0,
241                 0,
242                 0,
243                 SK_PNMI_RO, PowerManagement, 0},
244         {OID_PNP_SET_POWER,
245                 0,
246                 0,
247                 0,
248                 SK_PNMI_WO, PowerManagement, 0},
249         {OID_PNP_QUERY_POWER,
250                 0,
251                 0,
252                 0,
253                 SK_PNMI_RO, PowerManagement, 0},
254         {OID_PNP_ADD_WAKE_UP_PATTERN,
255                 0,
256                 0,
257                 0,
258                 SK_PNMI_WO, PowerManagement, 0},
259         {OID_PNP_REMOVE_WAKE_UP_PATTERN,
260                 0,
261                 0,
262                 0,
263                 SK_PNMI_WO, PowerManagement, 0},
264         {OID_PNP_ENABLE_WAKE_UP,
265                 0,
266                 0,
267                 0,
268                 SK_PNMI_RW, PowerManagement, 0},
269 #endif /* SK_POWER_MGMT */
270         {OID_SKGE_MDB_VERSION,
271                 1,
272                 0,
273                 SK_PNMI_MAI_OFF(MgmtDBVersion),
274                 SK_PNMI_RO, General, 0},
275         {OID_SKGE_SUPPORTED_LIST,
276                 0,
277                 0,
278                 0,
279                 SK_PNMI_RO, General, 0},
280         {OID_SKGE_ALL_DATA,
281                 0,
282                 0,
283                 0,
284                 SK_PNMI_RW, OidStruct, 0},
285         {OID_SKGE_VPD_FREE_BYTES,
286                 1,
287                 0,
288                 SK_PNMI_MAI_OFF(VpdFreeBytes),
289                 SK_PNMI_RO, Vpd, 0},
290         {OID_SKGE_VPD_ENTRIES_LIST,
291                 1,
292                 0,
293                 SK_PNMI_MAI_OFF(VpdEntriesList),
294                 SK_PNMI_RO, Vpd, 0},
295         {OID_SKGE_VPD_ENTRIES_NUMBER,
296                 1,
297                 0,
298                 SK_PNMI_MAI_OFF(VpdEntriesNumber),
299                 SK_PNMI_RO, Vpd, 0},
300         {OID_SKGE_VPD_KEY,
301                 SK_PNMI_VPD_ENTRIES,
302                 sizeof(SK_PNMI_VPD),
303                 SK_PNMI_OFF(Vpd) + SK_PNMI_VPD_OFF(VpdKey),
304                 SK_PNMI_RO, Vpd, 0},
305         {OID_SKGE_VPD_VALUE,
306                 SK_PNMI_VPD_ENTRIES,
307                 sizeof(SK_PNMI_VPD),
308                 SK_PNMI_OFF(Vpd) + SK_PNMI_VPD_OFF(VpdValue),
309                 SK_PNMI_RO, Vpd, 0},
310         {OID_SKGE_VPD_ACCESS,
311                 SK_PNMI_VPD_ENTRIES,
312                 sizeof(SK_PNMI_VPD),
313                 SK_PNMI_OFF(Vpd) + SK_PNMI_VPD_OFF(VpdAccess),
314                 SK_PNMI_RO, Vpd, 0},
315         {OID_SKGE_VPD_ACTION,
316                 SK_PNMI_VPD_ENTRIES,
317                 sizeof(SK_PNMI_VPD),
318                 SK_PNMI_OFF(Vpd) + SK_PNMI_VPD_OFF(VpdAction),
319                 SK_PNMI_RW, Vpd, 0},
320         {OID_SKGE_PORT_NUMBER,          
321                 1,
322                 0,
323                 SK_PNMI_MAI_OFF(PortNumber),
324                 SK_PNMI_RO, General, 0},
325         {OID_SKGE_DEVICE_TYPE,
326                 1,
327                 0,
328                 SK_PNMI_MAI_OFF(DeviceType),
329                 SK_PNMI_RO, General, 0},
330         {OID_SKGE_DRIVER_DESCR,
331                 1,
332                 0,
333                 SK_PNMI_MAI_OFF(DriverDescr),
334                 SK_PNMI_RO, General, 0},
335         {OID_SKGE_DRIVER_VERSION,
336                 1,
337                 0,
338                 SK_PNMI_MAI_OFF(DriverVersion),
339                 SK_PNMI_RO, General, 0},
340         {OID_SKGE_HW_DESCR,
341                 1,
342                 0,
343                 SK_PNMI_MAI_OFF(HwDescr),
344                 SK_PNMI_RO, General, 0},
345         {OID_SKGE_HW_VERSION,
346                 1,
347                 0,
348                 SK_PNMI_MAI_OFF(HwVersion),
349                 SK_PNMI_RO, General, 0},
350         {OID_SKGE_CHIPSET,
351                 1,
352                 0,
353                 SK_PNMI_MAI_OFF(Chipset),
354                 SK_PNMI_RO, General, 0},
355         {OID_SKGE_ACTION,
356                 1,
357                 0,
358                 SK_PNMI_MAI_OFF(Action),
359                 SK_PNMI_RW, Perform, 0},
360         {OID_SKGE_RESULT,
361                 1,
362                 0,
363                 SK_PNMI_MAI_OFF(TestResult),
364                 SK_PNMI_RO, General, 0},
365         {OID_SKGE_BUS_TYPE,
366                 1,
367                 0,
368                 SK_PNMI_MAI_OFF(BusType),
369                 SK_PNMI_RO, General, 0},
370         {OID_SKGE_BUS_SPEED,
371                 1,
372                 0,
373                 SK_PNMI_MAI_OFF(BusSpeed),
374                 SK_PNMI_RO, General, 0},
375         {OID_SKGE_BUS_WIDTH,
376                 1,
377                 0,
378                 SK_PNMI_MAI_OFF(BusWidth),
379                 SK_PNMI_RO, General, 0},
380         {OID_SKGE_TX_SW_QUEUE_LEN,
381                 1,
382                 0,
383                 SK_PNMI_MAI_OFF(TxSwQueueLen),
384                 SK_PNMI_RO, General, 0},
385         {OID_SKGE_TX_SW_QUEUE_MAX,
386                 1,
387                 0,
388                 SK_PNMI_MAI_OFF(TxSwQueueMax),
389                 SK_PNMI_RO, General, 0},
390         {OID_SKGE_TX_RETRY,
391                 1,
392                 0,
393                 SK_PNMI_MAI_OFF(TxRetryCts),
394                 SK_PNMI_RO, General, 0},
395         {OID_SKGE_RX_INTR_CTS,
396                 1,
397                 0,
398                 SK_PNMI_MAI_OFF(RxIntrCts),
399                 SK_PNMI_RO, General, 0},
400         {OID_SKGE_TX_INTR_CTS,
401                 1,
402                 0,
403                 SK_PNMI_MAI_OFF(TxIntrCts),
404                 SK_PNMI_RO, General, 0},
405         {OID_SKGE_RX_NO_BUF_CTS,
406                 1,
407                 0,
408                 SK_PNMI_MAI_OFF(RxNoBufCts),
409                 SK_PNMI_RO, General, 0},
410         {OID_SKGE_TX_NO_BUF_CTS,
411                 1,
412                 0,
413                 SK_PNMI_MAI_OFF(TxNoBufCts),
414                 SK_PNMI_RO, General, 0},
415         {OID_SKGE_TX_USED_DESCR_NO,
416                 1,
417                 0,
418                 SK_PNMI_MAI_OFF(TxUsedDescrNo),
419                 SK_PNMI_RO, General, 0},
420         {OID_SKGE_RX_DELIVERED_CTS,
421                 1,
422                 0,
423                 SK_PNMI_MAI_OFF(RxDeliveredCts),
424                 SK_PNMI_RO, General, 0},
425         {OID_SKGE_RX_OCTETS_DELIV_CTS,
426                 1,
427                 0,
428                 SK_PNMI_MAI_OFF(RxOctetsDeliveredCts),
429                 SK_PNMI_RO, General, 0},
430         {OID_SKGE_RX_HW_ERROR_CTS,
431                 1,
432                 0,
433                 SK_PNMI_MAI_OFF(RxHwErrorsCts),
434                 SK_PNMI_RO, General, 0},
435         {OID_SKGE_TX_HW_ERROR_CTS,
436                 1,
437                 0,
438                 SK_PNMI_MAI_OFF(TxHwErrorsCts),
439                 SK_PNMI_RO, General, 0},
440         {OID_SKGE_IN_ERRORS_CTS,
441                 1,
442                 0,
443                 SK_PNMI_MAI_OFF(InErrorsCts),
444                 SK_PNMI_RO, General, 0},
445         {OID_SKGE_OUT_ERROR_CTS,
446                 1,
447                 0,
448                 SK_PNMI_MAI_OFF(OutErrorsCts),
449                 SK_PNMI_RO, General, 0},
450         {OID_SKGE_ERR_RECOVERY_CTS,
451                 1,
452                 0,
453                 SK_PNMI_MAI_OFF(ErrRecoveryCts),
454                 SK_PNMI_RO, General, 0},
455         {OID_SKGE_SYSUPTIME,
456                 1,
457                 0,
458                 SK_PNMI_MAI_OFF(SysUpTime),
459                 SK_PNMI_RO, General, 0},
460         {OID_SKGE_SENSOR_NUMBER,
461                 1,
462                 0,
463                 SK_PNMI_MAI_OFF(SensorNumber),
464                 SK_PNMI_RO, General, 0},
465         {OID_SKGE_SENSOR_INDEX,
466                 SK_PNMI_SENSOR_ENTRIES,
467                 sizeof(SK_PNMI_SENSOR),
468                 SK_PNMI_OFF(Sensor) + SK_PNMI_SEN_OFF(SensorIndex),
469                 SK_PNMI_RO, SensorStat, 0},
470         {OID_SKGE_SENSOR_DESCR,
471                 SK_PNMI_SENSOR_ENTRIES,
472                 sizeof(SK_PNMI_SENSOR),
473                 SK_PNMI_OFF(Sensor) + SK_PNMI_SEN_OFF(SensorDescr),
474                 SK_PNMI_RO, SensorStat, 0},
475         {OID_SKGE_SENSOR_TYPE,
476                 SK_PNMI_SENSOR_ENTRIES,
477                 sizeof(SK_PNMI_SENSOR),
478                 SK_PNMI_OFF(Sensor) + SK_PNMI_SEN_OFF(SensorType),
479                 SK_PNMI_RO, SensorStat, 0},
480         {OID_SKGE_SENSOR_VALUE,
481                 SK_PNMI_SENSOR_ENTRIES,
482                 sizeof(SK_PNMI_SENSOR),
483                 SK_PNMI_OFF(Sensor) + SK_PNMI_SEN_OFF(SensorValue),
484                 SK_PNMI_RO, SensorStat, 0},
485         {OID_SKGE_SENSOR_WAR_THRES_LOW,
486                 SK_PNMI_SENSOR_ENTRIES,
487                 sizeof(SK_PNMI_SENSOR),
488                 SK_PNMI_OFF(Sensor) + SK_PNMI_SEN_OFF(SensorWarningThresholdLow),
489                 SK_PNMI_RO, SensorStat, 0},
490         {OID_SKGE_SENSOR_WAR_THRES_UPP,
491                 SK_PNMI_SENSOR_ENTRIES,
492                 sizeof(SK_PNMI_SENSOR),
493                 SK_PNMI_OFF(Sensor) + SK_PNMI_SEN_OFF(SensorWarningThresholdHigh),
494                 SK_PNMI_RO, SensorStat, 0},
495         {OID_SKGE_SENSOR_ERR_THRES_LOW,
496                 SK_PNMI_SENSOR_ENTRIES,
497                 sizeof(SK_PNMI_SENSOR),
498                 SK_PNMI_OFF(Sensor) + SK_PNMI_SEN_OFF(SensorErrorThresholdLow),
499                 SK_PNMI_RO, SensorStat, 0},
500         {OID_SKGE_SENSOR_ERR_THRES_UPP,
501                 SK_PNMI_SENSOR_ENTRIES,
502                 sizeof(SK_PNMI_SENSOR),
503                 SK_PNMI_OFF(Sensor) + SK_PNMI_SEN_OFF(SensorErrorThresholdHigh),
504                 SK_PNMI_RO, SensorStat, 0},
505         {OID_SKGE_SENSOR_STATUS,
506                 SK_PNMI_SENSOR_ENTRIES,
507                 sizeof(SK_PNMI_SENSOR),
508                 SK_PNMI_OFF(Sensor) + SK_PNMI_SEN_OFF(SensorStatus),
509                 SK_PNMI_RO, SensorStat, 0},
510         {OID_SKGE_SENSOR_WAR_CTS,
511                 SK_PNMI_SENSOR_ENTRIES,
512                 sizeof(SK_PNMI_SENSOR),
513                 SK_PNMI_OFF(Sensor) + SK_PNMI_SEN_OFF(SensorWarningCts),
514                 SK_PNMI_RO, SensorStat, 0},
515         {OID_SKGE_SENSOR_ERR_CTS,
516                 SK_PNMI_SENSOR_ENTRIES,
517                 sizeof(SK_PNMI_SENSOR),
518                 SK_PNMI_OFF(Sensor) + SK_PNMI_SEN_OFF(SensorErrorCts),
519                 SK_PNMI_RO, SensorStat, 0},
520         {OID_SKGE_SENSOR_WAR_TIME,
521                 SK_PNMI_SENSOR_ENTRIES,
522                 sizeof(SK_PNMI_SENSOR),
523                 SK_PNMI_OFF(Sensor) + SK_PNMI_SEN_OFF(SensorWarningTimestamp),
524                 SK_PNMI_RO, SensorStat, 0},
525         {OID_SKGE_SENSOR_ERR_TIME,
526                 SK_PNMI_SENSOR_ENTRIES,
527                 sizeof(SK_PNMI_SENSOR),
528                 SK_PNMI_OFF(Sensor) + SK_PNMI_SEN_OFF(SensorErrorTimestamp),
529                 SK_PNMI_RO, SensorStat, 0},
530         {OID_SKGE_CHKSM_NUMBER,
531                 1,
532                 0,
533                 SK_PNMI_MAI_OFF(ChecksumNumber),
534                 SK_PNMI_RO, General, 0},
535         {OID_SKGE_CHKSM_RX_OK_CTS,
536                 SKCS_NUM_PROTOCOLS,
537                 sizeof(SK_PNMI_CHECKSUM),
538                 SK_PNMI_OFF(Checksum) + SK_PNMI_CHK_OFF(ChecksumRxOkCts),
539                 SK_PNMI_RO, CsumStat, 0},
540         {OID_SKGE_CHKSM_RX_UNABLE_CTS,
541                 SKCS_NUM_PROTOCOLS,
542                 sizeof(SK_PNMI_CHECKSUM),
543                 SK_PNMI_OFF(Checksum) + SK_PNMI_CHK_OFF(ChecksumRxUnableCts),
544                 SK_PNMI_RO, CsumStat, 0},
545         {OID_SKGE_CHKSM_RX_ERR_CTS,
546                 SKCS_NUM_PROTOCOLS,
547                 sizeof(SK_PNMI_CHECKSUM),
548                 SK_PNMI_OFF(Checksum) + SK_PNMI_CHK_OFF(ChecksumRxErrCts),
549                 SK_PNMI_RO, CsumStat, 0},
550         {OID_SKGE_CHKSM_TX_OK_CTS,
551                 SKCS_NUM_PROTOCOLS,
552                 sizeof(SK_PNMI_CHECKSUM),
553                 SK_PNMI_OFF(Checksum) + SK_PNMI_CHK_OFF(ChecksumTxOkCts),
554                 SK_PNMI_RO, CsumStat, 0},
555         {OID_SKGE_CHKSM_TX_UNABLE_CTS,
556                 SKCS_NUM_PROTOCOLS,
557                 sizeof(SK_PNMI_CHECKSUM),
558                 SK_PNMI_OFF(Checksum) + SK_PNMI_CHK_OFF(ChecksumTxUnableCts),
559                 SK_PNMI_RO, CsumStat, 0},
560         {OID_SKGE_STAT_TX,
561                 SK_PNMI_MAC_ENTRIES,
562                 sizeof(SK_PNMI_STAT),
563                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxOkCts),
564                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX},
565         {OID_SKGE_STAT_TX_OCTETS,
566                 SK_PNMI_MAC_ENTRIES,
567                 sizeof(SK_PNMI_STAT),
568                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxOctetsOkCts),
569                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_OCTET},
570         {OID_SKGE_STAT_TX_BROADCAST,
571                 SK_PNMI_MAC_ENTRIES,
572                 sizeof(SK_PNMI_STAT),
573                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxBroadcastOkCts),
574                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_BROADCAST},
575         {OID_SKGE_STAT_TX_MULTICAST,
576                 SK_PNMI_MAC_ENTRIES,
577                 sizeof(SK_PNMI_STAT),
578                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxMulticastOkCts),
579                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_MULTICAST},
580         {OID_SKGE_STAT_TX_UNICAST,
581                 SK_PNMI_MAC_ENTRIES,
582                 sizeof(SK_PNMI_STAT),
583                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxUnicastOkCts),
584                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_UNICAST},
585         {OID_SKGE_STAT_TX_LONGFRAMES,
586                 SK_PNMI_MAC_ENTRIES,
587                 sizeof(SK_PNMI_STAT),
588                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxLongFramesCts),
589                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_LONGFRAMES},
590         {OID_SKGE_STAT_TX_BURST,
591                 SK_PNMI_MAC_ENTRIES,
592                 sizeof(SK_PNMI_STAT),
593                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxBurstCts),
594                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_BURST},
595         {OID_SKGE_STAT_TX_PFLOWC,
596                 SK_PNMI_MAC_ENTRIES,
597                 sizeof(SK_PNMI_STAT),
598                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxPauseMacCtrlCts),
599                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_PMACC},
600         {OID_SKGE_STAT_TX_FLOWC,
601                 SK_PNMI_MAC_ENTRIES,
602                 sizeof(SK_PNMI_STAT),
603                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxMacCtrlCts),
604                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_MACC},
605         {OID_SKGE_STAT_TX_SINGLE_COL,
606                 SK_PNMI_MAC_ENTRIES,
607                 sizeof(SK_PNMI_STAT),
608                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxSingleCollisionCts),
609                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_SINGLE_COL},
610         {OID_SKGE_STAT_TX_MULTI_COL,
611                 SK_PNMI_MAC_ENTRIES,
612                 sizeof(SK_PNMI_STAT),
613                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxMultipleCollisionCts),
614                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_MULTI_COL},
615         {OID_SKGE_STAT_TX_EXCESS_COL,
616                 SK_PNMI_MAC_ENTRIES,
617                 sizeof(SK_PNMI_STAT),
618                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxExcessiveCollisionCts),
619                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_EXCESS_COL},
620         {OID_SKGE_STAT_TX_LATE_COL,
621                 SK_PNMI_MAC_ENTRIES,
622                 sizeof(SK_PNMI_STAT),
623                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxLateCollisionCts),
624                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_LATE_COL},
625         {OID_SKGE_STAT_TX_DEFFERAL,
626                 SK_PNMI_MAC_ENTRIES,
627                 sizeof(SK_PNMI_STAT),
628                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxDeferralCts),
629                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_DEFFERAL},
630         {OID_SKGE_STAT_TX_EXCESS_DEF,
631                 SK_PNMI_MAC_ENTRIES,
632                 sizeof(SK_PNMI_STAT),
633                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxExcessiveDeferralCts),
634                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_EXCESS_DEF},
635         {OID_SKGE_STAT_TX_UNDERRUN,
636                 SK_PNMI_MAC_ENTRIES,
637                 sizeof(SK_PNMI_STAT),
638                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxFifoUnderrunCts),
639                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_UNDERRUN},
640         {OID_SKGE_STAT_TX_CARRIER,
641                 SK_PNMI_MAC_ENTRIES,
642                 sizeof(SK_PNMI_STAT),
643                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxCarrierCts),
644                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_CARRIER},
645 /*      {OID_SKGE_STAT_TX_UTIL,
646                 SK_PNMI_MAC_ENTRIES,
647                 sizeof(SK_PNMI_STAT),
648                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxUtilization),
649                 SK_PNMI_RO, MacPrivateStat, (SK_U16)(-1)}, */
650         {OID_SKGE_STAT_TX_64,
651                 SK_PNMI_MAC_ENTRIES,
652                 sizeof(SK_PNMI_STAT),
653                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTx64Cts),
654                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_64},
655         {OID_SKGE_STAT_TX_127,
656                 SK_PNMI_MAC_ENTRIES,
657                 sizeof(SK_PNMI_STAT),
658                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTx127Cts),
659                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_127},
660         {OID_SKGE_STAT_TX_255,
661                 SK_PNMI_MAC_ENTRIES,
662                 sizeof(SK_PNMI_STAT),
663                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTx255Cts),
664                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_255},
665         {OID_SKGE_STAT_TX_511,
666                 SK_PNMI_MAC_ENTRIES,
667                 sizeof(SK_PNMI_STAT),
668                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTx511Cts),
669                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_511},
670         {OID_SKGE_STAT_TX_1023,
671                 SK_PNMI_MAC_ENTRIES,
672                 sizeof(SK_PNMI_STAT),
673                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTx1023Cts),
674                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_1023},
675         {OID_SKGE_STAT_TX_MAX,
676                 SK_PNMI_MAC_ENTRIES,
677                 sizeof(SK_PNMI_STAT),
678                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxMaxCts),
679                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_MAX},
680         {OID_SKGE_STAT_TX_SYNC,
681                 SK_PNMI_MAC_ENTRIES,
682                 sizeof(SK_PNMI_STAT),
683                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxSyncCts),
684                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_SYNC},
685         {OID_SKGE_STAT_TX_SYNC_OCTETS,
686                 SK_PNMI_MAC_ENTRIES,
687                 sizeof(SK_PNMI_STAT),
688                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatTxSyncOctetsCts),
689                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HTX_SYNC_OCTET},
690         {OID_SKGE_STAT_RX,
691                 SK_PNMI_MAC_ENTRIES,
692                 sizeof(SK_PNMI_STAT),
693                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxOkCts),
694                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX},
695         {OID_SKGE_STAT_RX_OCTETS,
696                 SK_PNMI_MAC_ENTRIES,
697                 sizeof(SK_PNMI_STAT),
698                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxOctetsOkCts),
699                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_OCTET},
700         {OID_SKGE_STAT_RX_BROADCAST,
701                 SK_PNMI_MAC_ENTRIES,
702                 sizeof(SK_PNMI_STAT),
703                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxBroadcastOkCts),
704                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_BROADCAST},
705         {OID_SKGE_STAT_RX_MULTICAST,
706                 SK_PNMI_MAC_ENTRIES,
707                 sizeof(SK_PNMI_STAT),
708                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxMulticastOkCts),
709                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_MULTICAST},
710         {OID_SKGE_STAT_RX_UNICAST,
711                 SK_PNMI_MAC_ENTRIES,
712                 sizeof(SK_PNMI_STAT),
713                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxUnicastOkCts),
714                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_UNICAST},
715         {OID_SKGE_STAT_RX_LONGFRAMES,
716                 SK_PNMI_MAC_ENTRIES,
717                 sizeof(SK_PNMI_STAT),
718                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxLongFramesCts),
719                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_LONGFRAMES},
720         {OID_SKGE_STAT_RX_PFLOWC,
721                 SK_PNMI_MAC_ENTRIES,
722                 sizeof(SK_PNMI_STAT),
723                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxPauseMacCtrlCts),
724                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_PMACC},
725         {OID_SKGE_STAT_RX_FLOWC,
726                 SK_PNMI_MAC_ENTRIES,
727                 sizeof(SK_PNMI_STAT),
728                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxMacCtrlCts),
729                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_MACC},
730         {OID_SKGE_STAT_RX_PFLOWC_ERR,
731                 SK_PNMI_MAC_ENTRIES,
732                 sizeof(SK_PNMI_STAT),
733                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxPauseMacCtrlErrorCts),
734                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_PMACC_ERR},
735         {OID_SKGE_STAT_RX_FLOWC_UNKWN,
736                 SK_PNMI_MAC_ENTRIES,
737                 sizeof(SK_PNMI_STAT),
738                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxMacCtrlUnknownCts),
739                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_MACC_UNKWN},
740         {OID_SKGE_STAT_RX_BURST,
741                 SK_PNMI_MAC_ENTRIES,
742                 sizeof(SK_PNMI_STAT),
743                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxBurstCts),
744                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_BURST},
745         {OID_SKGE_STAT_RX_MISSED,
746                 SK_PNMI_MAC_ENTRIES,
747                 sizeof(SK_PNMI_STAT),
748                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxMissedCts),
749                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_MISSED},
750         {OID_SKGE_STAT_RX_FRAMING,
751                 SK_PNMI_MAC_ENTRIES,
752                 sizeof(SK_PNMI_STAT),
753                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxFramingCts),
754                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_FRAMING},
755         {OID_SKGE_STAT_RX_OVERFLOW,
756                 SK_PNMI_MAC_ENTRIES,
757                 sizeof(SK_PNMI_STAT),
758                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxFifoOverflowCts),
759                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_OVERFLOW},
760         {OID_SKGE_STAT_RX_JABBER,
761                 SK_PNMI_MAC_ENTRIES,
762                 sizeof(SK_PNMI_STAT),
763                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxJabberCts),
764                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_JABBER},
765         {OID_SKGE_STAT_RX_CARRIER,
766                 SK_PNMI_MAC_ENTRIES,
767                 sizeof(SK_PNMI_STAT),
768                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxCarrierCts),
769                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_CARRIER},
770         {OID_SKGE_STAT_RX_IR_LENGTH,
771                 SK_PNMI_MAC_ENTRIES,
772                 sizeof(SK_PNMI_STAT),
773                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxIRLengthCts),
774                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_IRLENGTH},
775         {OID_SKGE_STAT_RX_SYMBOL,
776                 SK_PNMI_MAC_ENTRIES,
777                 sizeof(SK_PNMI_STAT),
778                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxSymbolCts),
779                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_SYMBOL},
780         {OID_SKGE_STAT_RX_SHORTS,
781                 SK_PNMI_MAC_ENTRIES,
782                 sizeof(SK_PNMI_STAT),
783                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxShortsCts),
784                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_SHORTS},
785         {OID_SKGE_STAT_RX_RUNT,
786                 SK_PNMI_MAC_ENTRIES,
787                 sizeof(SK_PNMI_STAT),
788                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxRuntCts),
789                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_RUNT},
790         {OID_SKGE_STAT_RX_CEXT,
791                 SK_PNMI_MAC_ENTRIES,
792                 sizeof(SK_PNMI_STAT),
793                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxCextCts),
794                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_CEXT},
795         {OID_SKGE_STAT_RX_TOO_LONG,
796                 SK_PNMI_MAC_ENTRIES,
797                 sizeof(SK_PNMI_STAT),
798                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxTooLongCts),
799                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_TOO_LONG},
800         {OID_SKGE_STAT_RX_FCS,
801                 SK_PNMI_MAC_ENTRIES,
802                 sizeof(SK_PNMI_STAT),
803                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxFcsCts),
804                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_FCS},
805 /*      {OID_SKGE_STAT_RX_UTIL,
806                 SK_PNMI_MAC_ENTRIES,
807                 sizeof(SK_PNMI_STAT),
808                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxUtilization),
809                 SK_PNMI_RO, MacPrivateStat, (SK_U16)(-1)}, */
810         {OID_SKGE_STAT_RX_64,
811                 SK_PNMI_MAC_ENTRIES,
812                 sizeof(SK_PNMI_STAT),
813                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRx64Cts),
814                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_64},
815         {OID_SKGE_STAT_RX_127,
816                 SK_PNMI_MAC_ENTRIES,
817                 sizeof(SK_PNMI_STAT),
818                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRx127Cts),
819                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_127},
820         {OID_SKGE_STAT_RX_255,
821                 SK_PNMI_MAC_ENTRIES,
822                 sizeof(SK_PNMI_STAT),
823                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRx255Cts),
824                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_255},
825         {OID_SKGE_STAT_RX_511,
826                 SK_PNMI_MAC_ENTRIES,
827                 sizeof(SK_PNMI_STAT),
828                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRx511Cts),
829                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_511},
830         {OID_SKGE_STAT_RX_1023,
831                 SK_PNMI_MAC_ENTRIES,
832                 sizeof(SK_PNMI_STAT),
833                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRx1023Cts),
834                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_1023},
835         {OID_SKGE_STAT_RX_MAX,
836                 SK_PNMI_MAC_ENTRIES,
837                 sizeof(SK_PNMI_STAT),
838                 SK_PNMI_OFF(Stat) + SK_PNMI_STA_OFF(StatRxMaxCts),
839                 SK_PNMI_RO, MacPrivateStat, SK_PNMI_HRX_MAX},
840         {OID_SKGE_PHYS_CUR_ADDR,
841                 SK_PNMI_MAC_ENTRIES,
842                 sizeof(SK_PNMI_CONF),
843                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfMacCurrentAddr),
844                 SK_PNMI_RW, Addr, 0},
845         {OID_SKGE_PHYS_FAC_ADDR,
846                 SK_PNMI_MAC_ENTRIES,
847                 sizeof(SK_PNMI_CONF),
848                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfMacFactoryAddr),
849                 SK_PNMI_RO, Addr, 0},
850         {OID_SKGE_PMD,
851                 SK_PNMI_MAC_ENTRIES,
852                 sizeof(SK_PNMI_CONF),
853                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfPMD),
854                 SK_PNMI_RO, MacPrivateConf, 0},
855         {OID_SKGE_CONNECTOR,
856                 SK_PNMI_MAC_ENTRIES,
857                 sizeof(SK_PNMI_CONF),
858                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfConnector),
859                 SK_PNMI_RO, MacPrivateConf, 0},
860         {OID_SKGE_LINK_CAP,
861                 SK_PNMI_MAC_ENTRIES,
862                 sizeof(SK_PNMI_CONF),
863                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfLinkCapability),
864                 SK_PNMI_RO, MacPrivateConf, 0},
865         {OID_SKGE_LINK_MODE,
866                 SK_PNMI_MAC_ENTRIES,
867                 sizeof(SK_PNMI_CONF),
868                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfLinkMode),
869                 SK_PNMI_RW, MacPrivateConf, 0},
870         {OID_SKGE_LINK_MODE_STATUS,
871                 SK_PNMI_MAC_ENTRIES,
872                 sizeof(SK_PNMI_CONF),
873                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfLinkModeStatus),
874                 SK_PNMI_RO, MacPrivateConf, 0},
875         {OID_SKGE_LINK_STATUS,
876                 SK_PNMI_MAC_ENTRIES,
877                 sizeof(SK_PNMI_CONF),
878                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfLinkStatus),
879                 SK_PNMI_RO, MacPrivateConf, 0},
880         {OID_SKGE_FLOWCTRL_CAP,
881                 SK_PNMI_MAC_ENTRIES,
882                 sizeof(SK_PNMI_CONF),
883                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfFlowCtrlCapability),
884                 SK_PNMI_RO, MacPrivateConf, 0},
885         {OID_SKGE_FLOWCTRL_MODE,
886                 SK_PNMI_MAC_ENTRIES,
887                 sizeof(SK_PNMI_CONF),
888                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfFlowCtrlMode),
889                 SK_PNMI_RW, MacPrivateConf, 0},
890         {OID_SKGE_FLOWCTRL_STATUS,
891                 SK_PNMI_MAC_ENTRIES,
892                 sizeof(SK_PNMI_CONF),
893                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfFlowCtrlStatus),
894                 SK_PNMI_RO, MacPrivateConf, 0},
895         {OID_SKGE_PHY_OPERATION_CAP,
896                 SK_PNMI_MAC_ENTRIES,
897                 sizeof(SK_PNMI_CONF),
898                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfPhyOperationCapability),
899                 SK_PNMI_RO, MacPrivateConf, 0},
900         {OID_SKGE_PHY_OPERATION_MODE,
901                 SK_PNMI_MAC_ENTRIES,
902                 sizeof(SK_PNMI_CONF),
903                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfPhyOperationMode),
904                 SK_PNMI_RW, MacPrivateConf, 0},
905         {OID_SKGE_PHY_OPERATION_STATUS,
906                 SK_PNMI_MAC_ENTRIES,
907                 sizeof(SK_PNMI_CONF),
908                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfPhyOperationStatus),
909                 SK_PNMI_RO, MacPrivateConf, 0},
910         {OID_SKGE_SPEED_CAP,
911                 SK_PNMI_MAC_ENTRIES,
912                 sizeof(SK_PNMI_CONF),
913                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfSpeedCapability),
914                 SK_PNMI_RO, MacPrivateConf, 0},
915         {OID_SKGE_SPEED_MODE,
916                 SK_PNMI_MAC_ENTRIES,
917                 sizeof(SK_PNMI_CONF),
918                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfSpeedMode),
919                 SK_PNMI_RW, MacPrivateConf, 0},
920         {OID_SKGE_SPEED_STATUS,
921                 SK_PNMI_MAC_ENTRIES,
922                 sizeof(SK_PNMI_CONF),
923                 SK_PNMI_OFF(Conf) + SK_PNMI_CNF_OFF(ConfSpeedStatus),
924                 SK_PNMI_RO, MacPrivateConf, 0},
925         {OID_SKGE_TRAP,
926                 1,
927                 0,
928                 SK_PNMI_MAI_OFF(Trap),
929                 SK_PNMI_RO, General, 0},
930         {OID_SKGE_TRAP_NUMBER,
931                 1,
932                 0,
933                 SK_PNMI_MAI_OFF(TrapNumber),
934                 SK_PNMI_RO, General, 0},
935         {OID_SKGE_RLMT_MODE,
936                 1,
937                 0,
938                 SK_PNMI_MAI_OFF(RlmtMode),
939                 SK_PNMI_RW, Rlmt, 0},
940         {OID_SKGE_RLMT_PORT_NUMBER,
941                 1,
942                 0,
943                 SK_PNMI_MAI_OFF(RlmtPortNumber),
944                 SK_PNMI_RO, Rlmt, 0},
945         {OID_SKGE_RLMT_PORT_ACTIVE,
946                 1,
947                 0,
948                 SK_PNMI_MAI_OFF(RlmtPortActive),
949                 SK_PNMI_RO, Rlmt, 0},
950         {OID_SKGE_RLMT_PORT_PREFERRED,
951                 1,
952                 0,
953                 SK_PNMI_MAI_OFF(RlmtPortPreferred),
954                 SK_PNMI_RW, Rlmt, 0},
955         {OID_SKGE_RLMT_CHANGE_CTS,
956                 1,
957                 0,
958                 SK_PNMI_MAI_OFF(RlmtChangeCts),
959                 SK_PNMI_RO, Rlmt, 0},
960         {OID_SKGE_RLMT_CHANGE_TIME,
961                 1,
962                 0,
963                 SK_PNMI_MAI_OFF(RlmtChangeTime),
964                 SK_PNMI_RO, Rlmt, 0},
965         {OID_SKGE_RLMT_CHANGE_ESTIM,
966                 1,
967                 0,
968                 SK_PNMI_MAI_OFF(RlmtChangeEstimate),
969                 SK_PNMI_RO, Rlmt, 0},
970         {OID_SKGE_RLMT_CHANGE_THRES,
971                 1,
972                 0,
973                 SK_PNMI_MAI_OFF(RlmtChangeThreshold),
974                 SK_PNMI_RW, Rlmt, 0},
975         {OID_SKGE_RLMT_PORT_INDEX,
976                 SK_PNMI_MAC_ENTRIES,
977                 sizeof(SK_PNMI_RLMT),
978                 SK_PNMI_OFF(Rlmt) + SK_PNMI_RLM_OFF(RlmtIndex),
979                 SK_PNMI_RO, RlmtStat, 0},
980         {OID_SKGE_RLMT_STATUS,
981                 SK_PNMI_MAC_ENTRIES,
982                 sizeof(SK_PNMI_RLMT),
983                 SK_PNMI_OFF(Rlmt) + SK_PNMI_RLM_OFF(RlmtStatus),
984                 SK_PNMI_RO, RlmtStat, 0},
985         {OID_SKGE_RLMT_TX_HELLO_CTS,
986                 SK_PNMI_MAC_ENTRIES,
987                 sizeof(SK_PNMI_RLMT),
988                 SK_PNMI_OFF(Rlmt) + SK_PNMI_RLM_OFF(RlmtTxHelloCts),
989                 SK_PNMI_RO, RlmtStat, 0},
990         {OID_SKGE_RLMT_RX_HELLO_CTS,
991                 SK_PNMI_MAC_ENTRIES,
992                 sizeof(SK_PNMI_RLMT),
993                 SK_PNMI_OFF(Rlmt) + SK_PNMI_RLM_OFF(RlmtRxHelloCts),
994                 SK_PNMI_RO, RlmtStat, 0},
995         {OID_SKGE_RLMT_TX_SP_REQ_CTS,
996                 SK_PNMI_MAC_ENTRIES,
997                 sizeof(SK_PNMI_RLMT),
998                 SK_PNMI_OFF(Rlmt) + SK_PNMI_RLM_OFF(RlmtTxSpHelloReqCts),
999                 SK_PNMI_RO, RlmtStat, 0},
1000         {OID_SKGE_RLMT_RX_SP_CTS,
1001                 SK_PNMI_MAC_ENTRIES,
1002                 sizeof(SK_PNMI_RLMT),
1003                 SK_PNMI_OFF(Rlmt) + SK_PNMI_RLM_OFF(RlmtRxSpHelloCts),
1004                 SK_PNMI_RO, RlmtStat, 0},
1005         {OID_SKGE_RLMT_MONITOR_NUMBER,
1006                 1,
1007                 0,
1008                 SK_PNMI_MAI_OFF(RlmtMonitorNumber),
1009                 SK_PNMI_RO, General, 0},
1010         {OID_SKGE_RLMT_MONITOR_INDEX,
1011                 SK_PNMI_MONITOR_ENTRIES,
1012                 sizeof(SK_PNMI_RLMT_MONITOR),
1013                 SK_PNMI_OFF(RlmtMonitor) + SK_PNMI_MON_OFF(RlmtMonitorIndex),
1014                 SK_PNMI_RO, Monitor, 0},
1015         {OID_SKGE_RLMT_MONITOR_ADDR,
1016                 SK_PNMI_MONITOR_ENTRIES,
1017                 sizeof(SK_PNMI_RLMT_MONITOR),
1018                 SK_PNMI_OFF(RlmtMonitor) + SK_PNMI_MON_OFF(RlmtMonitorAddr),
1019                 SK_PNMI_RO, Monitor, 0},
1020         {OID_SKGE_RLMT_MONITOR_ERRS,
1021                 SK_PNMI_MONITOR_ENTRIES,
1022                 sizeof(SK_PNMI_RLMT_MONITOR),
1023                 SK_PNMI_OFF(RlmtMonitor) + SK_PNMI_MON_OFF(RlmtMonitorErrorCts),
1024                 SK_PNMI_RO, Monitor, 0},
1025         {OID_SKGE_RLMT_MONITOR_TIMESTAMP,
1026                 SK_PNMI_MONITOR_ENTRIES,
1027                 sizeof(SK_PNMI_RLMT_MONITOR),
1028                 SK_PNMI_OFF(RlmtMonitor) + SK_PNMI_MON_OFF(RlmtMonitorTimestamp),
1029                 SK_PNMI_RO, Monitor, 0},
1030         {OID_SKGE_RLMT_MONITOR_ADMIN,
1031                 SK_PNMI_MONITOR_ENTRIES,
1032                 sizeof(SK_PNMI_RLMT_MONITOR),
1033                 SK_PNMI_OFF(RlmtMonitor) + SK_PNMI_MON_OFF(RlmtMonitorAdmin),
1034                 SK_PNMI_RW, Monitor, 0},
1035         {OID_SKGE_MTU,
1036                 1,
1037                 0,
1038                 SK_PNMI_MAI_OFF(MtuSize),
1039                 SK_PNMI_RW, MacPrivateConf, 0},
1040         {OID_SKGE_VCT_GET,
1041                 0,
1042                 0,
1043                 0,
1044                 SK_PNMI_RO, Vct, 0},
1045         {OID_SKGE_VCT_SET,
1046                 0,
1047                 0,
1048                 0,
1049                 SK_PNMI_WO, Vct, 0},
1050         {OID_SKGE_VCT_STATUS,
1051                 0,
1052                 0,
1053                 0,
1054                 SK_PNMI_RO, Vct, 0},
1055 };
1056