xref: /illumos-gate/usr/src/uts/intel/sys/mc_intel.h (revision 4098eb523a777727850a4f4b366aa59c0d52e622)
1 /*
2  * CDDL HEADER START
3  *
4  * The contents of this file are subject to the terms of the
5  * Common Development and Distribution License (the "License").
6  * You may not use this file except in compliance with the License.
7  *
8  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9  * or http://www.opensolaris.org/os/licensing.
10  * See the License for the specific language governing permissions
11  * and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL HEADER in each
14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15  * If applicable, add the following below this CDDL HEADER, with the
16  * fields enclosed by brackets "[]" replaced with your own identifying
17  * information: Portions Copyright [yyyy] [name of copyright owner]
18  *
19  * CDDL HEADER END
20  */
21 
22 /*
23  * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
24  * Use is subject to license terms.
25  */
26 
27 #ifndef _MC_INTEL_H
28 #define	_MC_INTEL_H
29 
30 #pragma ident	"%Z%%M%	%I%	%E% SMI"
31 
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35 
36 #define	FM_EREPORT_CPU_INTEL	"intel"
37 
38 #define	MCINTEL_NVLIST_VERSTR	"mcintel-nvlist-version"
39 #define	MCINTEL_NVLIST_VERS0	0
40 
41 #define	MCINTEL_NVLIST_VERS	MCINTEL_NVLIST_VERS0
42 
43 #define	MCINTEL_NVLIST_MC	"memory-channels"
44 #define	MCINTEL_NVLIST_DIMMS	"memory-dimms"
45 #define	MCINTEL_NVLIST_DIMMSZ	"memory-dimm-size"
46 #define	MCINTEL_NVLIST_RANKS	"dimm-ranks"
47 #define	MCINTEL_NVLIST_ROWS	"dimm-rows"
48 #define	MCINTEL_NVLIST_COL	"dimm-column"
49 #define	MCINTEL_NVLIST_BANK	"dimm-banks"
50 #define	MCINTEL_NVLIST_WIDTH	"dimm-width"
51 #define	MCINTEL_NVLIST_MID	"dimm-manufacture-id"
52 #define	MCINTEL_NVLIST_MLOC	"dimm-manufacture-location"
53 #define	MCINTEL_NVLIST_MWEEK	"dimm-manufacture-week"
54 #define	MCINTEL_NVLIST_MYEAR	"dimm-manufacture-year"
55 #define	MCINTEL_NVLIST_SERIALNO	"dimm-serial-number"
56 #define	MCINTEL_NVLIST_PARTNO	"dimm-part-number"
57 #define	MCINTEL_NVLIST_REV	"dimm-part-rev"
58 
59 #define	FM_EREPORT_PAYLOAD_NAME_FERR_GLOBAL		"ferr_global"
60 #define	FM_EREPORT_PAYLOAD_NAME_NERR_GLOBAL		"nerr_global"
61 #define	FM_EREPORT_PAYLOAD_NAME_FSB			"fsb"
62 #define	FM_EREPORT_PAYLOAD_NAME_FERR_FAT_FSB		"ferr_fat_fsb"
63 #define	FM_EREPORT_PAYLOAD_NAME_NERR_FAT_FSB		"nerr_fat_fsb"
64 #define	FM_EREPORT_PAYLOAD_NAME_FERR_NF_FSB		"ferr_nf_fsb"
65 #define	FM_EREPORT_PAYLOAD_NAME_NERR_NF_FSB		"nerr_nf_fsb"
66 #define	FM_EREPORT_PAYLOAD_NAME_NRECFSB			"nrecfsb"
67 #define	FM_EREPORT_PAYLOAD_NAME_NRECFSB_ADDR		"nrecfsb_addr"
68 #define	FM_EREPORT_PAYLOAD_NAME_RECFSB			"recfsb"
69 #define	FM_EREPORT_PAYLOAD_NAME_PEX			"pex"
70 #define	FM_EREPORT_PAYLOAD_NAME_PEX_FAT_FERR		"pex_fat_ferr"
71 #define	FM_EREPORT_PAYLOAD_NAME_PEX_FAT_NERR		"pex_fat_nerr"
72 #define	FM_EREPORT_PAYLOAD_NAME_PEX_NF_CORR_FERR	"pex_nf_corr_ferr"
73 #define	FM_EREPORT_PAYLOAD_NAME_PEX_NF_CORR_NERR	"pex_nf_corr_nerr"
74 #define	FM_EREPORT_PAYLOAD_NAME_UNCERRSEV		"uncerrsev"
75 #define	FM_EREPORT_PAYLOAD_NAME_RPERRSTS		"rperrsts"
76 #define	FM_EREPORT_PAYLOAD_NAME_RPERRSID		"rperrsid"
77 #define	FM_EREPORT_PAYLOAD_NAME_UNCERRSTS		"uncerrsts"
78 #define	FM_EREPORT_PAYLOAD_NAME_AERRCAPCTRL		"aerrcapctrl"
79 #define	FM_EREPORT_PAYLOAD_NAME_CORERRSTS		"corerrsts"
80 #define	FM_EREPORT_PAYLOAD_NAME_PEXDEVSTS		"pexdevsts"
81 #define	FM_EREPORT_PAYLOAD_NAME_FERR_FAT_INT		"ferr_fat_int"
82 #define	FM_EREPORT_PAYLOAD_NAME_FERR_NF_INT		"ferr_nf_int"
83 #define	FM_EREPORT_PAYLOAD_NAME_NERR_FAT_INT		"nerr_fat_int"
84 #define	FM_EREPORT_PAYLOAD_NAME_NERR_NF_INT		"nerr_nf_int"
85 #define	FM_EREPORT_PAYLOAD_NAME_NRECINT			"nrecint"
86 #define	FM_EREPORT_PAYLOAD_NAME_RECINT			"recint"
87 #define	FM_EREPORT_PAYLOAD_NAME_NRECSF			"nrecsf"
88 #define	FM_EREPORT_PAYLOAD_NAME_RECSF			"recsf"
89 #define	FM_EREPORT_PAYLOAD_NAME_RANK			"rank"
90 #define	FM_EREPORT_PAYLOAD_NAME_BANK			"bank"
91 #define	FM_EREPORT_PAYLOAD_NAME_CAS			"cas"
92 #define	FM_EREPORT_PAYLOAD_NAME_RAS			"ras"
93 #define	FM_EREPORT_PAYLOAD_NAME_FERR_FAT_FBD		"ferr_fat_fbd"
94 #define	FM_EREPORT_PAYLOAD_NAME_NERR_FAT_FBD		"nerr_fat_fbd"
95 #define	FM_EREPORT_PAYLOAD_NAME_NRECMEMA		"nrecmema"
96 #define	FM_EREPORT_PAYLOAD_NAME_NRECMEMB		"nrecmemb"
97 #define	FM_EREPORT_PAYLOAD_NAME_NRECFGLOG		"nrecfglog"
98 #define	FM_EREPORT_PAYLOAD_NAME_NRECFBDA		"nrecfbda"
99 #define	FM_EREPORT_PAYLOAD_NAME_NRECFBDB		"nrecfbdb"
100 #define	FM_EREPORT_PAYLOAD_NAME_NRECFBDC		"nrecfbdc"
101 #define	FM_EREPORT_PAYLOAD_NAME_NRECFBDD		"nrecfbdd"
102 #define	FM_EREPORT_PAYLOAD_NAME_NRECFBDE		"nrecfbde"
103 #define	FM_EREPORT_PAYLOAD_NAME_SPCPC			"spcpc"
104 #define	FM_EREPORT_PAYLOAD_NAME_SPCPS			"spcps"
105 #define	FM_EREPORT_PAYLOAD_NAME_UERRCNT			"uerrcnt"
106 #define	FM_EREPORT_PAYLOAD_NAME_UERRCNT_LAST		"uerrcnt_last"
107 #define	FM_EREPORT_PAYLOAD_NAME_BADRAMA			"badrama"
108 #define	FM_EREPORT_PAYLOAD_NAME_BADRAMB			"badramb"
109 #define	FM_EREPORT_PAYLOAD_NAME_BADCNT			"badcnt"
110 #define	FM_EREPORT_PAYLOAD_NAME_MC			"mc"
111 #define	FM_EREPORT_PAYLOAD_NAME_MCA			"mca"
112 #define	FM_EREPORT_PAYLOAD_NAME_TOLM			"tolm"
113 #define	FM_EREPORT_PAYLOAD_NAME_MIR			"mir"
114 #define	FM_EREPORT_PAYLOAD_NAME_MTR			"mtr"
115 #define	FM_EREPORT_PAYLOAD_NAME_DMIR			"dmir"
116 #define	FM_EREPORT_PAYLOAD_NAME_FERR_NF_FBD		"ferr_nf_fbd"
117 #define	FM_EREPORT_PAYLOAD_NAME_NERR_NF_FBD		"nerr_nf_fbd"
118 #define	FM_EREPORT_PAYLOAD_NAME_RECMEMA			"recmema"
119 #define	FM_EREPORT_PAYLOAD_NAME_RECMEMB			"recmemb"
120 #define	FM_EREPORT_PAYLOAD_NAME_RECFGLOG		"recfglog"
121 #define	FM_EREPORT_PAYLOAD_NAME_RECFBDA			"recfbda"
122 #define	FM_EREPORT_PAYLOAD_NAME_RECFBDB			"recfbdb"
123 #define	FM_EREPORT_PAYLOAD_NAME_RECFBDC			"recfbdc"
124 #define	FM_EREPORT_PAYLOAD_NAME_RECFBDD			"recfbdd"
125 #define	FM_EREPORT_PAYLOAD_NAME_RECFBDE			"recfbde"
126 #define	FM_EREPORT_PAYLOAD_NAME_CERRCNT			"cerrcnt"
127 #define	FM_EREPORT_PAYLOAD_NAME_CERRCNT_LAST		"cerrcnt_last"
128 #define	FM_EREPORT_PAYLOAD_NAME_PCISTS			"pcists"
129 #define	FM_EREPORT_PAYLOAD_NAME_PEXDEVSTS		"pexdevsts"
130 #define	FM_EREPORT_PAYLOAD_NAME_ERROR_NO		"intel-error-list"
131 
132 #define	FM_EREPORT_PAYLOAD_NAME_ADDR			"addr"
133 #define	FM_EREPORT_PAYLOAD_NAME_BANK_NUM		"bank-number"
134 #define	FM_EREPORT_PAYLOAD_NAME_BANK_MISC		"bank-misc"
135 #define	FM_EREPORT_PAYLOAD_NAME_BANK_STAT		"bank-status"
136 #define	FM_EREPORT_PAYLOAD_NAME_BANK_OFFSET		"bank-offset"
137 #define	FM_EREPORT_PAYLOAD_NAME_MC_TYPE			"mc-type"
138 #define	FM_EREPORT_PAYLOAD_CPUID			"cpuid"
139 
140 #define	FM_EREPORT_PAYLOAD_BQR				"Bus-queue-request"
141 #define	FM_EREPORT_PAYLOAD_BQET				"Bus-queue-error-type"
142 #define	FM_EREPORT_PAYLOAD_FRC				"FRC-error"
143 #define	FM_EREPORT_PAYLOAD_BERR				"BERR"
144 #define	FM_EREPORT_PAYLOAD_INT_BINT			"Internal-BINT"
145 #define	FM_EREPORT_PAYLOAD_EXT_BINT			"External-BINT"
146 #define	FM_EREPORT_PAYLOAD_BUS_BINT			"Bus-BINT"
147 #define	FM_EREPORT_PAYLOAD_TO_BINT			"Timeout-BINT"
148 #define	FM_EREPORT_PAYLOAD_HARD				"Hard-error"
149 #define	FM_EREPORT_PAYLOAD_IERR				"IERR"
150 #define	FM_EREPORT_PAYLOAD_AERR				"AERR"
151 #define	FM_EREPORT_PAYLOAD_UERR				"UERR"
152 #define	FM_EREPORT_PAYLOAD_CECC				"CECC"
153 #define	FM_EREPORT_PAYLOAD_UECC				"UECC"
154 #define	FM_EREPORT_PAYLOAD_ECC_SYND			"ECC-syndrome"
155 
156 #define	FM_EREPORT_PAYLOAD_FSB_PARITY			"fsb-address-parity"
157 #define	FM_EREPORT_PAYLOAD_RESP_HF			"response-hard-fail"
158 #define	FM_EREPORT_PAYLOAD_RESP_PARITY			"response-parity"
159 #define	FM_EREPORT_PAYLOAD_DATA_PARITY			"bus-data-parity"
160 #define	FM_EREPORT_PAYLOAD_INV_PIC			"invalid-pic-request"
161 #define	FM_EREPORT_PAYLOAD_PAD_SM			"pad-state-machine"
162 #define	FM_EREPORT_PAYLOAD_PAD_SG			"pad-strobe-glitch"
163 
164 #define	FM_EREPORT_PAYLOAD_TAG				"tag-error"
165 #define	FM_EREPORT_PAYLOAD_TAG_CLEAN			"clean"
166 #define	FM_EREPORT_PAYLOAD_TAG_HIT			"hit"
167 #define	FM_EREPORT_PAYLOAD_TAG_MISS			"miss"
168 #define	FM_EREPORT_PAYLOAD_DATA				"data-error"
169 #define	FM_EREPORT_PAYLOAD_DATA_SINGLE			"single-bit"
170 #define	FM_EREPORT_PAYLOAD_DATA_DBL_CLEAN		"double-bit-clean"
171 #define	FM_EREPORT_PAYLOAD_DATA_DBL_MOD			"double-bit-modified"
172 #define	FM_EREPORT_PAYLOAD_L3				"l3-cache"
173 #define	FM_EREPORT_PAYLOAD_INV_PIC			"invalid-pic-request"
174 #define	FM_EREPORT_PAYLOAD_CACHE_NERRORS		"cache-error-count"
175 
176 #define	INTEL_NB_5000P	0x25d88086
177 #define	INTEL_NB_5000V	0x25d48086
178 #define	INTEL_NB_5000X	0x25c08086
179 #define	INTEL_NB_5000Z	0x25d08086
180 #define	INTEL_NB_7300	0x36008086
181 
182 #ifdef __cplusplus
183 }
184 #endif
185 
186 #endif /* _MC_INTEL_H */
187