1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
|
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License (the "License").
* You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
#ifndef _SYS_FM_IO_DDI_H
#define _SYS_FM_IO_DDI_H
#ifdef __cplusplus
extern "C" {
#endif
#define DDI_DVR_MAX_CLASS 32
/* IO-specific FMA ereport class defintions */
#define DDI_IO_CLASS "io"
/* leaf driver detected ereport definitions */
#define DDI_FM_DEVICE "device"
#define DDI_FM_DEVICE_INVAL_STATE "inval_state"
#define DDI_FM_DEVICE_NO_RESPONSE "no_response"
#define DDI_FM_DEVICE_STALL "stall"
#define DDI_FM_DEVICE_BADINT_LIMIT "badint_limit"
#define DDI_FM_DEVICE_INTERN_CORR "intern_corr"
#define DDI_FM_DEVICE_INTERN_UNCORR "intern_uncorr"
#define DDI_FM_DEVICE_FW_CORRUPT "fw_corrupt"
#define DDI_FM_DEVICE_FW_MISMATCH "fw_mismatch"
/* service impact ereport definitions */
#define DDI_FM_SERVICE_IMPACT "service"
#define DDI_FM_SERVICE_LOST "lost"
#define DDI_FM_SERVICE_DEGRADED "degraded"
#define DDI_FM_SERVICE_RESTORED "restored"
#define DDI_FM_SERVICE_UNAFFECTED "unaffected"
/* Driver defect ereport specifications */
#define DVR_ERPT "ddi."
#define DVR_ECONTEXT "context" /* Invalid calling context */
#define DVR_EINVAL "einval" /* Invalid calling semantic */
#define DVR_EFMCAP "fm-capability" /* Improper FM capability */
#define DVR_EVER "version" /* Invalid structure version */
/* Required payload member names */
#define DVR_NAME "dvr-name"
#define DVR_STACK "dvr-stack"
#define DVR_STACK_DEPTH "dvr-stack-depth"
#define DVR_ERR_SPECIFIC "dvr-error-specific"
/* Generic NIC driver ereports. */
#define DDI_FM_NIC "nic"
#define DDI_FM_TXR_ERROR "txr-err"
/* Valid values of the "error" field in txr-err ereports */
#define DDI_FM_TXR_ERROR_WHITELIST "whitelist"
#define DDI_FM_TXR_ERROR_NOTSUPP "notsupp"
#define DDI_FM_TXR_ERROR_OVERTEMP "overtemp"
#define DDI_FM_TXR_ERROR_HWFAIL "hwfail"
#define DDI_FM_TXR_ERROR_UNKNOWN "unknown"
#ifdef __cplusplus
}
#endif
#endif /* _SYS_FM_IO_DDI_H */
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License (the "License").
* You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2007 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
* Copyright 2016 Nexenta Systems, Inc. All rights reserved.
*/
#ifndef _SYS_FM_IO_DISK_H
#define _SYS_FM_IO_DISK_H
#ifdef __cplusplus
extern "C" {
#endif
#define DISK_ERROR_CLASS "io.disk"
#define FM_FAULT_DISK_PREDFAIL "predictive-failure"
#define FM_FAULT_DISK_OVERTEMP "over-temperature"
#define FM_FAULT_DISK_TESTFAIL "self-test-failure"
#define FM_FAULT_SSM_WEAROUT "ssm-wearout"
#ifdef __cplusplus
}
#endif
#endif /* _SYS_FM_IO_DISK_H */
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License (the "License").
* You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2007 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
#ifndef _SYS_FM_IO_OPL_MC_FM_H
#define _SYS_FM_IO_OPL_MC_FM_H
#ifdef __cplusplus
extern "C" {
#endif
/* mc-opl ereport components */
#define MC_OPL_ERROR_CLASS "asic.mac"
#define MC_OPL_PTRL_SUBCLASS "ptrl"
#define MC_OPL_MI_SUBCLASS "mi"
/*
* ereport definition
*/
#define MC_OPL_UE "ue"
#define MC_OPL_CE "ce"
#define MC_OPL_ICE "ice"
#define MC_OPL_CMPE "cmpe"
#define MC_OPL_MUE "mue"
#define MC_OPL_SUE "sue"
/* mc-opl payload name fields */
#define MC_OPL_BOARD "board"
#define MC_OPL_BANK "bank"
#define MC_OPL_STATUS "status"
#define MC_OPL_ERR_ADD "err-add"
#define MC_OPL_ERR_LOG "err-log"
#define MC_OPL_ERR_SYND "syndrome"
#define MC_OPL_ERR_DIMMSLOT "dimm-slot"
#define MC_OPL_ERR_DRAM "dram-place"
#define MC_OPL_PA "pa"
#define MC_OPL_FLT_TYPE "flt-type"
#define MC_OPL_RESOURCE "resource"
#define MC_OPL_NO_UNUM ""
#ifdef __cplusplus
}
#endif
#endif /* _SYS_FM_IO_OPL_MC_FM_H */
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License (the "License").
* You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2008 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
#ifndef _SYS_FM_IO_PCI_H
#define _SYS_FM_IO_PCI_H
#ifdef __cplusplus
extern "C" {
#endif
#define PCI_ERROR_SUBCLASS "pci"
#define PCI_SEC_ERROR_SUBCLASS "sec"
/* Common PCI ereport classes */
#define PCI_DET_PERR "dpe"
#define PCI_MDPE "mdpe"
#define PCI_REC_SERR "rserr"
#define PCI_SIG_SERR "sserr"
#define PCI_MA "ma"
#define PCI_REC_TA "rta"
#define PCI_SIG_TA "sta"
#define PCI_DTO "dto"
#define PCI_TARG_MDPE "target-mdpe"
#define PCI_TARG_MA "target-ma"
#define PCI_TARG_REC_TA "target-rta"
#define PCI_NR "nr"
/* PCI Error payload name fields */
#define PCI_CONFIG_STATUS "pci-status"
#define PCI_CONFIG_COMMAND "pci-command"
#define PCI_SEC_CONFIG_STATUS "pci-sec-status"
#define PCI_BCNTRL "pci-bdg-ctrl"
#define PCI_PA "pci-pa"
/*
* PCI-X extensions
*/
#define PCIX_ERROR_SUBCLASS "pcix"
#define PCIX_SEC_ERROR_SUBCLASS "sec-"
/* Common PCI-X ereport classes */
#define PCIX_ECC_CE_ADDR "ecc.ce-addr"
#define PCIX_ECC_CE_ATTR "ecc.ce-attr"
#define PCIX_ECC_CE_DATA "ecc.ce-data"
#define PCIX_ECC_UE_ADDR "ecc.ue-addr"
#define PCIX_ECC_UE_ATTR "ecc.ue-attr"
#define PCIX_ECC_UE_DATA "ecc.ue-data"
#define PCIX_RX_SPL_MSG "rx-spl"
#define PCIX_ECC_S_CE "s-ce"
#define PCIX_ECC_S_UE "s-ue"
#define PCIX_SPL_DIS "spl-dis"
#define PCIX_BSS_SPL_DLY "spl-dly"
#define PCIX_BSS_SPL_OR "spl-or"
#define PCIX_UNEX_SPL "unex-spl"
#define PCIX_SEC_STATUS "pcix-sec-status"
#define PCIX_BDG_STAT "pcix-bdg-stat"
#define PCIX_COMMAND "pcix-command"
#define PCIX_STATUS "pcix-status"
#define PCIX_ECC_CTLSTAT "pcix-ecc-ctlstat"
#define PCIX_ECC_ATTR "pcix-ecc-attr"
/*
* PCI Express extensions
*/
#define PCIEX_ERROR_SUBCLASS "pciex"
/* Common PCI Express ereport classes */
#define PCIEX_RE "pl.re"
#define PCIEX_TE "pl.te"
#define PCIEX_SD "dl.sd"
#define PCIEX_BDP "dl.bdllp"
#define PCIEX_BTP "dl.btlp"
#define PCIEX_DLP "dl.dllp"
#define PCIEX_RNR "dl.rnr"
#define PCIEX_RTO "dl.rto"
#define PCIEX_CA "tl.ca"
#define PCIEX_CTO "tl.cto"
#define PCIEX_ECRC "tl.ecrc"
#define PCIEX_FCP "tl.fcp"
#define PCIEX_MFP "tl.mtlp"
#define PCIEX_POIS "tl.ptlp"
#define PCIEX_ROF "tl.rof"
#define PCIEX_UC "tl.uc"
#define PCIEX_UR "tl.ur"
#define PCIEX_INTERR "bdg.sec-interr"
#define PCIEX_S_MA_SC "bdg.sec-ma-sc"
#define PCIEX_S_PERR "bdg.sec-perr"
#define PCIEX_S_RMA "bdg.sec-rma"
#define PCIEX_S_RTA "bdg.sec-rta"
#define PCIEX_S_SERR "bdg.sec-serr"
#define PCIEX_S_TA_SC "bdg.sec-ta-sc"
#define PCIEX_S_TEX "bdg.sec-tex"
#define PCIEX_S_UADR "bdg.sec-uadr"
#define PCIEX_S_UAT "bdg.sec-uat"
#define PCIEX_S_UDE "bdg.sec-ude"
#define PCIEX_S_USC "bdg.usc"
#define PCIEX_S_USCMD "bdg.uscmd"
#define PCIEX_RC_FE_MSG "rc.fe-msg"
#define PCIEX_RC_NFE_MSG "rc.nfe-msg"
#define PCIEX_RC_CE_MSG "rc.ce-msg"
#define PCIEX_RC_MCE_MSG "rc.mce-msg"
#define PCIEX_RC_MUE_MSG "rc.mue-msg"
#define PCIEX_CORR "correctable"
#define PCIEX_FAT "fatal"
#define PCIEX_NONFAT "nonfatal"
#define PCIEX_NADV "noadverr"
#define PCIEX_ANFE "a-nonfatal"
/* PCI Express payload name fields */
#define PCIEX_DEVSTS_REG "dev-status"
#define PCIEX_LINKSTS_REG "link-status"
#define PCIEX_ROOT_ERRSTS_REG "rc-status"
#define PCIEX_CE_STATUS_REG "ce-status"
#define PCIEX_UE_STATUS_REG "ue-status"
#define PCIEX_UE_SEV_REG "ue-severity"
#define PCIEX_SEC_UE_STATUS "sue-status"
#define PCIEX_SRC_ID "source-id"
#define PCIEX_SRC_VALID "source-valid"
#define PCIEX_ADV_CTL "adv-ctl"
#define PCIEX_UE_HDR0 "ue_hdr0"
#define PCIEX_UE_HDR1 "ue_hdr1"
#define PCIEX_UE_HDR2 "ue_hdr2"
#define PCIEX_UE_HDR3 "ue_hdr3"
#define PCIEX_SUE_HDR0 "sue_hdr0"
#define PCIEX_SUE_HDR1 "sue_hdr1"
#define PCIEX_SUE_HDR2 "sue_hdr2"
#define PCIEX_SUE_HDR3 "sue_hdr3"
/* Common fabric class names */
#define PCIEX_FABRIC "fabric"
#ifdef __cplusplus
}
#endif
#endif /* _SYS_FM_IO_PCI_H */
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License (the "License").
* You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2007 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
* Copyright 2016 Nexenta Systems, Inc. All rights reserved.
*/
#ifndef _SYS_FM_IO_SCSI_H
#define _SYS_FM_IO_SCSI_H
#ifdef __cplusplus
extern "C" {
#endif
/*
* The following ereports are generated by the userland disk-transport module in
* response to errors reported by the disks.
*/
#define SCSI_ERROR_CLASS "io.scsi"
#define SCSI_DISK_CLASS "disk"
#define FM_EREPORT_SCSI_PREDFAIL "predictive-failure"
#define FM_EREPORT_PAYLOAD_SCSI_ASC "additional-sense-code"
#define FM_EREPORT_PAYLOAD_SCSI_ASCQ "additional-sense-code-qualifier"
#define FM_EREPORT_SCSI_OVERTEMP "over-temperature"
#define FM_EREPORT_PAYLOAD_SCSI_CURTEMP "current-temperature"
#define FM_EREPORT_PAYLOAD_SCSI_THRESHTEMP "threshold-temperature"
#define FM_EREPORT_SCSI_SSMWEAROUT "ssm-wearout"
#define FM_EREPORT_PAYLOAD_SCSI_CURSSMWEAROUT "current-ssm-wearout"
#define FM_EREPORT_PAYLOAD_SCSI_THRSHSSMWEAROUT "threshold-ssm-wearout"
#define FM_EREPORT_SCSI_TESTFAIL "self-test-failure"
#define FM_EREPORT_PAYLOAD_SCSI_RESULTCODE "result-code"
#define FM_EREPORT_PAYLOAD_SCSI_ADDRESS "address"
#define FM_EREPORT_PAYLOAD_SCSI_TIMESTAMP "timestamp"
#define FM_EREPORT_PAYLOAD_SCSI_SEGMENT "segment"
#ifdef __cplusplus
}
#endif
#endif /* _SYS_FM_IO_SCSI_H */
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License (the "License").
* You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2006 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
#ifndef _SYS_FM_IO_SUN4_FIRE_H
#define _SYS_FM_IO_SUN4_FIRE_H
#ifdef __cplusplus
extern "C" {
#endif
/*
* Fire Ereport Classes
*/
#define PCIEX_FIRE "fire"
#define PCIEX_OBERON "oberon"
/* FIRE's JBUS ereport classes */
#define FIRE_JBC_MB_PEA "jbc.mb_pea"
#define FIRE_JBC_CPE "jbc.cpe"
#define FIRE_JBC_APE "jbc.ape"
#define FIRE_JBC_PIO_CPE "jbc.pio_cpe"
#define FIRE_JBC_JTCEEW "jbc.jtceew"
#define FIRE_JBC_JTCEEI "jbc.jtceei"
#define FIRE_JBC_JTCEER "jbc.jtceer"
#define FIRE_JBC_MB_PER "jbc.mb_per"
#define FIRE_JBC_MB_PEW "jbc.mb_pew"
#define FIRE_JBC_UE_ASYN "jbc.ue_asyn"
#define FIRE_JBC_CE_ASYN "jbc.ce_asyn"
#define FIRE_JBC_JTE "jbc.jte"
#define FIRE_JBC_JBE "jbc.jbe"
#define FIRE_JBC_JUE "jbc.jue"
#define FIRE_JBC_ICISE "jbc.icise"
#define FIRE_JBC_WR_DPE "jbc.wr_dpe"
#define FIRE_JBC_RD_DPE "jbc.rd_dpe"
#define FIRE_JBC_ILL_BMW "jbc.ill_bmw"
#define FIRE_JBC_ILL_BMR "jbc.ill_bmr"
#define FIRE_JBC_BJC "jbc.bjc"
#define FIRE_JBC_IJP "jbc.ijp"
#define FIRE_JBC_PIO_UNMAP_RD "jbc.pio_unmap_rd"
#define FIRE_JBC_PIO_UNMAP "jbc.pio_unmap"
#define FIRE_JBC_PIO_DPE "jbc.pio_dpe"
#define FIRE_JBC_ILL_ACC "jbc.ill_acc"
#define FIRE_JBC_ILL_ACC_RD "jbc.ill_acc_rd"
#define FIRE_JBC_UNSOL_RD "jbc.unsol_rd"
#define FIRE_JBC_UNSOL_INTR "jbc.unsol_intr"
#define FIRE_JBC_EBUS_TO "jbc.ebus_to"
/* OBERON's UBC ereport classes */
#define FIRE_UBC_DMARDUEA "ubc.dmarduea"
#define FIRE_UBC_DMAWTUEA "ubc.dmawtuea"
#define FIRE_UBC_MEMRDAXA "ubc.memrdaxa"
#define FIRE_UBC_MEMWTAXA "ubc.memwtaxa"
#define FIRE_UBC_DMARDUEB "ubc.dmardueb"
#define FIRE_UBC_DMAWTUEB "ubc.dmawtueb"
#define FIRE_UBC_MEMRDAXB "ubc.memrdaxb"
#define FIRE_UBC_MEMWTAXB "ubc.memwtaxb"
#define FIRE_UBC_PIOWTUE "ubc.piowtue"
#define FIRE_UBC_PIOWBEUE "ubc.piowbeue"
#define FIRE_UBC_PIORBEUE "ubc.piorbeue"
/* FIRE's DMC ereport classes */
#define FIRE_DMC_MSI_NOT_EN "dmc.msi_not_en"
#define FIRE_DMC_MSI_PAR_ERR "dmc.msi_par_err"
#define FIRE_DMC_MSI_MAL_ERR "dmc.msi_mal_err"
#define FIRE_DMC_COR_MES_NOT_EN "dmc.cor_not_en"
#define FIRE_DMC_NONFATAL_MES_NOT_EN "dmc.nonfatal_not_en"
#define FIRE_DMC_FATAL_MES_NOT_EN "dmc.fatal_not_en"
#define FIRE_DMC_PMPME_MES_NOT_EN "dmc.pmpme_not_en"
#define FIRE_DMC_PMEACK_MES_NOT_EN "dmc.pmeack_not_en"
#define FIRE_DMC_EQ_NOT_EN "dmc.eq_not_en"
#define FIRE_DMC_EQ_OVER "dmc.eq_over"
#define FIRE_DMC_BYP_ERR "dmc.byp_err"
#define FIRE_DMC_BYP_OOR "dmc.byp_oor"
#define FIRE_DMC_TRN_ERR "dmc.trn_err"
#define FIRE_DMC_TRN_OOR "dmc.trn_oor"
#define FIRE_DMC_TTE_INV "dmc.tte_inv"
#define FIRE_DMC_TTE_PRT "dmc.tte_prt"
#define FIRE_DMC_TTC_DPE "dmc.ttc_dpe"
#define FIRE_DMC_TBW_DME "dmc.tbw_dme"
#define FIRE_DMC_TBW_UDE "dmc.tbw_ude"
#define FIRE_DMC_TBW_ERR "dmc.tbw_err"
#define FIRE_DMC_TBW_DPE "dmc.tbw_dpe"
#define FIRE_DMC_TTC_CAE "dmc.ttc_cae"
#define FIRE_DMC_TTC_DUE "dmc.ttc_due"
/* FIRE's PEC ereport classes */
#define FIRE_PEC_IHB_PE "pec.ihb_pe"
#define FIRE_PEC_MRC "pec.mrc"
#define FIRE_PEC_WUC "pec.wuc"
#define FIRE_PEC_RUC "pec.ruc"
#define FIRE_PEC_CRS "pec.crs"
#define FIRE_PEC_IIP "pec.iip"
#define FIRE_PEC_EDP "pec.edp"
#define FIRE_PEC_EHP "pec.ehp"
#define FIRE_PEC_LIN "pec.lin"
#define FIRE_PEC_LRS "pec.lrs"
#define FIRE_PEC_LDN "pec.ldn"
#define FIRE_PEC_LUP "pec.lup"
#define FIRE_PEC_ERU "pec.eru"
#define FIRE_PEC_ERO "pec.ero"
#define FIRE_PEC_EMP "pec.emp"
#define FIRE_PEC_EPE "pec.epe"
#define FIRE_PEC_ERP "pec.erp"
#define FIRE_PEC_EIP "pec.eip"
#define FIRE_PEC_UR "pec.ur"
#define FIRE_PEC_ROF "pec.rof"
#define FIRE_PEC_UC "pec.uc"
#define FIRE_PEC_CTO "pec.cto"
#define FIRE_PEC_MFP "pec.mfp"
#define FIRE_PEC_PP "pec.pois"
#define FIRE_PEC_FCP "pec.fcp"
#define FIRE_PEC_DLP "pec.dlp"
#define FIRE_PEC_TE "pec.te"
#define FIRE_PEC_CA "pec.ca"
#define FIRE_PEC_RTO "pec.rto"
#define FIRE_PEC_RNR "pec.rnr"
#define FIRE_PEC_BDP "pec.bdp"
#define FIRE_PEC_BTP "pec.btp"
#define FIRE_PEC_RE "pec.re"
#define FIRE_PEC_IHB_UE "pec.ihb_ue"
#define FIRE_PEC_ECRC "pec.ecrc"
#define FIRE_PEC_EIUE "pec.eiue"
#define FIRE_PEC_ERBUE "pec.erbue"
#define FIRE_PEC_EHBUE "pec.ehbue"
#define FIRE_PEC_EDBUE "pec.edbue"
#define FIRE_PEC_TLUEITMO "pec.tlueitmo"
/* Primary error */
#define FIRE_PRIMARY "primary"
/* PEC ereport payload */
#define FIRE_ILU_ELE "ilu-ele"
#define FIRE_ILU_ESS "ilu-ess"
#define FIRE_ILU_IE "ilu-ie"
#define FIRE_ILU_IS "ilu-is"
#define FIRE_TLU_CELE "tlu-cele"
#define FIRE_TLU_CESS "tlu-cess"
#define FIRE_TLU_CIE "tlu-cie"
#define FIRE_TLU_CIS "tlu-cis"
#define FIRE_TLU_OEELE "tlu-oeele"
#define FIRE_TLU_OEESS "tlu-oeess"
#define FIRE_TLU_OEIE "tlu-oeie"
#define FIRE_TLU_OEIS "tlu-oeis"
#define FIRE_TLU_ROEEH1L "tlu-roeeh1l"
#define FIRE_TLU_ROEEH2L "tlu-roeeh2l"
#define FIRE_TLU_RUEH1L "tlu-rueh1l"
#define FIRE_TLU_RUEH2L "tlu-rueh2l"
#define FIRE_TLU_TOEEH1L "tlu-toeeh1l"
#define FIRE_TLU_TOEEH2L "tlu-toeeh2l"
#define FIRE_TLU_TUEH1L "tlu-tueh1l"
#define FIRE_TLU_TUEH2L "tlu-tueh2l"
#define FIRE_TLU_UELE "tlu-uele"
#define FIRE_TLU_UESS "tlu-uess"
#define FIRE_TLU_UIE "tlu-uie"
#define FIRE_TLU_UIS "tlu-uis"
/* DMC ereport payload */
#define FIRE_IMU_ELE "imu-ele"
#define FIRE_IMU_ESS "imu-ess"
#define FIRE_IMU_IE "imu-ie"
#define FIRE_IMU_IS "imu-is"
#define FIRE_IMU_RDS "imu-rds"
#define FIRE_IMU_SCS "imu-scs"
#define FIRE_MMU_ELE "mmu-ele"
#define FIRE_MMU_ESS "mmu-ess"
#define FIRE_MMU_IE "mmu-ie"
#define FIRE_MMU_IS "mmu-is"
#define FIRE_MMU_TFAR "mmu-tfar"
#define FIRE_MMU_TFSR "mmu-tfsr"
/* JBC ereport payload */
#define FIRE_JBC_DMC_IDC "jbc-dmc-idc"
#define FIRE_JBC_DMC_ODCD "jbc-dmc-odcd"
#define FIRE_JBC_ELE "jbc-ele"
#define FIRE_JBC_ESS "jbc-ess"
#define FIRE_JBC_FEL1 "jbc-fel1"
#define FIRE_JBC_FEL2 "jbc-fel2"
#define FIRE_JBC_IE "jbc-ie"
#define FIRE_JBC_IS "jbc-is"
#define FIRE_JBC_JITEL1 "jbc-jitel1"
#define FIRE_JBC_JITEL2 "jbc-jitel2"
#define FIRE_JBC_JOTEL1 "jbc-jotel1"
#define FIRE_JBC_JOTEL2 "jbc-jotel2"
#define FIRE_JBC_MTEL "jbc-mtel"
/* UBC ereport payload */
#define OBERON_UBC_ELE "ubc-ele"
#define OBERON_UBC_IE "ubc-ie"
#define OBERON_UBC_IS "ubc-is"
#define OBERON_UBC_ESS "ubc-ess"
#define OBERON_UBC_MUE "ubc-mue"
#define OBERON_UBC_UNUM "ubc-unum"
#define OBERON_UBC_DID "ubc-did"
#define OBERON_UBC_CPUV "ubc-cpuv"
#define OBERON_UBC_RESOURCE "resource"
#ifdef __cplusplus
}
#endif
#endif /* _SYS_FM_IO_SUN4_FIRE_H */
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License, Version 1.0 only
* (the "License"). You may not use this file except in compliance
* with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2006 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
#ifndef _SYS_FM_IO_SUN4UPCI_H
#define _SYS_FM_IO_SUN4UPCI_H
#ifdef __cplusplus
extern "C" {
#endif
/* Sun4u PCI FMA Event Protocol definitions */
#define PCI_PSYCHO "psy"
#define PCI_SCHIZO "sch"
#define PCI_TOMATILLO "tom"
#define PCI_XMITS "xmits"
/* PBM ereport classes */
#define PCI_PBM_TTO "pbm.tto"
#define PCI_PBM_RETRY "pbm.rl"
#define PCI_SEC_PBM_TTO "pbm.s-tto"
#define PCI_SEC_PBM_RETRY "pbm.s-rl"
#define PCI_SEC_MA "pbm.s-ma"
#define PCI_SEC_REC_TA "pbm.s-rta"
#define PCI_SEC_MDPE "pbm.s-mdpe"
#define PCI_PBM_TARG_TTO "pbm.target-tto"
#define PCI_PBM_TARG_RETRY "pbm.target-rl"
/* Schizo/Tomatillo ereport classes */
#define PCI_SCH_MMU_ERR "mmu"
#define PCI_SCH_BUS_UNUSABLE_ERR "bu"
#define PCI_SEC_SCH_BUS_UNUSABLE_ERR "s-bu"
#define PCI_SCH_SLOT_LOCK_ERR "sl"
#define PCI_SCH_SBH "sbh"
#define PCI_TOM_MMU_BAD_TSBTBW "mmu.btt"
#define PCI_TOM_MMU_BAD_VA "mmu.bva"
#define PCI_TOM_MMU_PROT_ERR "mmu.prot"
#define PCI_TOM_MMU_INVAL_ERR "mmu.inval"
#define PCI_TOM_MMU_TO_ERR "mmu.to"
#define PCI_TOM_MMU_UE "mmu.ue"
/* Psycho ereport classes */
#define PCI_PSY_SBH "sbh"
/* IO detected memory ereport classes */
#define PCI_ECC_DRD_UE "ecc.drue"
#define PCI_ECC_DRD_CE "ecc.drce"
#define PCI_ECC_DWR_UE "ecc.dwue"
#define PCI_ECC_DWR_CE "ecc.dwce"
#define PCI_ECC_PIO_UE "ecc.pue"
#define PCI_ECC_PIO_CE "ecc.pce"
#define PCI_ECC_SEC_DRD_UE "ecc.s-drue"
#define PCI_ECC_SEC_DRD_CE "ecc.s-drce"
#define PCI_ECC_SEC_DWR_UE "ecc.s-dwue"
#define PCI_ECC_SEC_DWR_CE "ecc.s-dwce"
#define PCI_ECC_SEC_PIO_UE "ecc.s-pue"
#define PCI_ECC_SEC_PIO_CE "ecc.s-pce"
/* Safari ereport classes */
#define SAFARI_APERR "saf.ape"
#define SAFARI_UNMAP_ERR "saf.um"
#define SAFARI_TO_ERR "saf.to"
#define SAFARI_BUS_ERR "saf.bus"
#define SAFARI_DSTAT_ERR "saf.dstat"
#define SAFARI_BAD_CMD "saf.bc"
#define SAFARI_SSM_DIS "saf.smm-dis"
#define SAFARI_BAD_CMD_PCIA "saf.bca"
#define SAFARI_BAD_CMD_PCIB "saf.bcb"
#define SAFARI_PAR_ERR_INT_PCIB "saf.parb"
#define SAFARI_PAR_ERR_INT_PCIA "saf.para"
#define SAFARI_PAR_ERR_INT_SAF "saf.pars"
#define SAFARI_PLL_ERR_PCIB "saf.pllb"
#define SAFARI_PLL_ERR_PCIA "saf.plla"
#define SAFARI_PLL_ERR_SAF "saf.plls"
#define SAFARI_SAF_CIQ_TO "saf.ciq-to"
#define SAFARI_SAF_LPQ_TO "saf.lpq-to"
#define SAFARI_SAF_SFPQ_TO "saf.sfpq-to"
#define SAFARI_SAF_UFPQ_TO "saf.ufpq-to"
#define SAFARI_CPU0_PAR_SINGLE "saf.cpu0-par"
#define SAFARI_CPU0_PAR_BIDI "saf.cpu0-bidi"
#define SAFARI_CPU1_PAR_SINGLE "saf.cpu1-par"
#define SAFARI_CPU1_PAR_BIDI "saf.cpu1-bidi"
/* Jbus ereport classes */
#define JBUS_APERR "jbus.ape"
#define JBUS_PWR_DATA_PERR "jbus.pwpe"
#define JBUS_DRD_DATA_PERR "jbus.drpe"
#define JBUS_DWR_DATA_PERR "jbus.dwpe"
#define JBUS_CTL_PERR "jbus.cpe"
#define JBUS_ILL_BYTE_EN "jbus.ibe"
#define JBUS_ILL_COH_IN "jbus.iis"
#define JBUS_SNOOP_ERR_RD "jbus.srd"
#define JBUS_SNOOP_ERR_RDS "jbus.srds"
#define JBUS_SNOOP_ERR_RDSA "jbus.srdsa"
#define JBUS_SNOOP_ERR_OWN "jbus.sown"
#define JBUS_SNOOP_ERR_RDO "jbus.srdo"
#define JBUS_BAD_CMD "jbus.bc"
#define JBUS_UNMAP_ERR "jbus.um"
#define JBUS_TO_ERR "jbus.to"
#define JBUS_BUS_ERR "jbus.bus"
#define JBUS_TO_EXP_ERR "jbus.to-exp"
#define JBUS_SNOOP_ERR_GR "jbus.sgr"
#define JBUS_SNOOP_ERR_PCI "jbus.spci"
#define JBUS_SNOOP_ERR "jbus.snp"
/* PBM ereport payload */
#define PCI_PBM_CSR "pbm-csr"
#define PCI_PBM_AFSR "pbm-afsr"
#define PCI_PBM_AFAR "pbm-afar"
#define PCI_PBM_SLOT "errant-slot"
#define PCI_PBM_VALOG "pbm-valog"
/* IOMMU ereport payload */
#define PCI_PBM_IOMMU_CTRL "iommu-csr"
#define PCI_PBM_IOMMU_TFAR "iommu-tfar"
/* IO detected memory error payload */
#define PCI_ECC_AFSR "ecc-afsr"
#define PCI_ECC_AFAR "ecc-afar"
#define PCI_ECC_CTRL "ecc-ctrl"
#define PCI_ECC_SYND "ecc-syndrome"
#define PCI_ECC_TYPE "ecc-err-type"
#define PCI_ECC_DISP "ecc-err-disposition"
#define PCI_ECC_UNUM "mem-unum"
#define PCI_ECC_RESOURCE "mem-resource"
/* Safari ereport payload */
#define SAFARI_CSR "safari-csr"
#define SAFARI_ERR "safari-err"
#define SAFARI_INTR "safari-intr"
#define SAFARI_ELOG "safari-elog"
#define SAFARI_PCR "safari-pcr"
#define SAFARI_RESOURCE "safari-resource"
#define PCI_PBM_LOG_1 "pbm-log1"
#define PCI_PBM_LOG_2 "pbm-log2"
/* Jbus ereport payload */
#define JBUS_CSR "jbus-csr"
#define JBUS_ERR "jbus-err"
#define JBUS_INTR "jbus-intr"
#define JBUS_ELOG "jbus-elog"
#define JBUS_PCR "jbus-pcr"
#define JBUS_RESOURCE "jbus-resource"
#ifdef __cplusplus
}
#endif
#endif /* _SYS_FM_IO_SUN4UPCI_H */
|