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