xref: /onnv-gate/usr/src/uts/intel/sys/fm/cpu/GENAMD.h (revision 5254:38162db71c7d)
1*5254Sgavinm /*
2*5254Sgavinm  * CDDL HEADER START
3*5254Sgavinm  *
4*5254Sgavinm  * The contents of this file are subject to the terms of the
5*5254Sgavinm  * Common Development and Distribution License (the "License").
6*5254Sgavinm  * You may not use this file except in compliance with the License.
7*5254Sgavinm  *
8*5254Sgavinm  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9*5254Sgavinm  * or http://www.opensolaris.org/os/licensing.
10*5254Sgavinm  * See the License for the specific language governing permissions
11*5254Sgavinm  * and limitations under the License.
12*5254Sgavinm  *
13*5254Sgavinm  * When distributing Covered Code, include this CDDL HEADER in each
14*5254Sgavinm  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15*5254Sgavinm  * If applicable, add the following below this CDDL HEADER, with the
16*5254Sgavinm  * fields enclosed by brackets "[]" replaced with your own identifying
17*5254Sgavinm  * information: Portions Copyright [yyyy] [name of copyright owner]
18*5254Sgavinm  *
19*5254Sgavinm  * CDDL HEADER END
20*5254Sgavinm  */
21*5254Sgavinm 
22*5254Sgavinm /*
23*5254Sgavinm  * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
24*5254Sgavinm  * Use is subject to license terms.
25*5254Sgavinm  */
26*5254Sgavinm 
27*5254Sgavinm #ifndef	_SYS_FM_CPU_GENAMD_H
28*5254Sgavinm #define	_SYS_FM_CPU_GENAMD_H
29*5254Sgavinm 
30*5254Sgavinm #pragma ident	"%Z%%M%	%I%	%E% SMI"
31*5254Sgavinm 
32*5254Sgavinm /* Ereport class subcategory - same as in GMCA.h */
33*5254Sgavinm #define	FM_EREPORT_CPU_GENAMD	"generic-x86"
34*5254Sgavinm 
35*5254Sgavinm /* Ereport leaf classes */
36*5254Sgavinm #define	FM_EREPORT_CPU_GENAMD_MEM_CE		"mem_ce"
37*5254Sgavinm #define	FM_EREPORT_CPU_GENAMD_MEM_UE		"mem_ue"
38*5254Sgavinm #define	FM_EREPORT_CPU_GENAMD_CKMEM_CE		"mem_ce"
39*5254Sgavinm #define	FM_EREPORT_CPU_GENAMD_CKMEM_UE		"mem_ue"
40*5254Sgavinm #define	FM_EREPORT_CPU_GENADM_GARTTBLWLK	"gart_tbl_walk"
41*5254Sgavinm 
42*5254Sgavinm #define	_FM_EREPORT_FLAG(n) (1ULL << (n))
43*5254Sgavinm 
44*5254Sgavinm #define	FM_EREPORT_GENAMD_PAYLOAD_NAME_SYND		"syndrome"
45*5254Sgavinm #define	FM_EREPORT_GENAMD_PAYLOAD_FLAG_SYND		_FM_EREPORT_FLAG(1)
46*5254Sgavinm 
47*5254Sgavinm #define	FM_EREPORT_GENAMD_PAYLOAD_NAME_CKSYND		"syndrome"
48*5254Sgavinm #define	FM_EREPORT_GENAMD_PAYLOAD_FLAG_CKSYND		_FM_EREPORT_FLAG(2)
49*5254Sgavinm 
50*5254Sgavinm #define	FM_EREPORT_GENAMD_PAYLOAD_NAME_SYNDTYPE		"syndrome-type"
51*5254Sgavinm #define	FM_EREPORT_GENAMD_PAYLOAD_FLAG_SYNDTYPE		_FM_EREPORT_FLAG(3)
52*5254Sgavinm 
53*5254Sgavinm #define	FM_EREPORT_GENAMD_PAYLOAD_NAME_RESOURCE		"resource"
54*5254Sgavinm #define	FM_EREPORT_GENAMD_PAYLOAD_FLAG_RESOURCE		_FM_EREPORT_FLAG(4)
55*5254Sgavinm 
56*5254Sgavinm #define	FM_EREPORT_GENAMD_PAYLOAD_NAME_RESOURCECNT	"resource_counts"
57*5254Sgavinm #define	FM_EREPORT_GENAMD_PAYLOAD_FLAG_RESOURCECNT	_FM_EREPORT_FLAG(5)
58*5254Sgavinm 
59*5254Sgavinm #define	FM_EREPORT_GENAMD_PAYLOAD_FLAGS_MEM_CE \
60*5254Sgavinm 	(FM_EREPORT_GENAMD_PAYLOAD_FLAG_SYND | \
61*5254Sgavinm 	FM_EREPORT_GENAMD_PAYLOAD_FLAG_SYNDTYPE | \
62*5254Sgavinm 	FM_EREPORT_GENAMD_PAYLOAD_FLAG_RESOURCE | \
63*5254Sgavinm 	FM_EREPORT_GENAMD_PAYLOAD_FLAG_RESOURCECNT)
64*5254Sgavinm 
65*5254Sgavinm #define	FM_EREPORT_GENAMD_PAYLOAD_FLAGS_MEM_UE \
66*5254Sgavinm 	(FM_EREPORT_GENAMD_PAYLOAD_FLAG_SYND | \
67*5254Sgavinm 	FM_EREPORT_GENAMD_PAYLOAD_FLAG_SYNDTYPE | \
68*5254Sgavinm 	FM_EREPORT_GENAMD_PAYLOAD_FLAG_RESOURCE | \
69*5254Sgavinm 	FM_EREPORT_GENAMD_PAYLOAD_FLAG_RESOURCECNT)
70*5254Sgavinm 
71*5254Sgavinm #define	FM_EREPORT_GENAMD_PAYLOAD_FLAGS_CKMEM_CE \
72*5254Sgavinm 	(FM_EREPORT_GENAMD_PAYLOAD_FLAG_CKSYND | \
73*5254Sgavinm 	FM_EREPORT_GENAMD_PAYLOAD_FLAG_SYNDTYPE | \
74*5254Sgavinm 	FM_EREPORT_GENAMD_PAYLOAD_FLAG_RESOURCE | \
75*5254Sgavinm 	FM_EREPORT_GENAMD_PAYLOAD_FLAG_RESOURCECNT)
76*5254Sgavinm 
77*5254Sgavinm #define	FM_EREPORT_GENAMD_PAYLOAD_FLAGS_CKMEM_UE \
78*5254Sgavinm 	(FM_EREPORT_GENAMD_PAYLOAD_FLAG_CKSYND | \
79*5254Sgavinm 	FM_EREPORT_GENAMD_PAYLOAD_FLAG_SYNDTYPE | \
80*5254Sgavinm 	FM_EREPORT_GENAMD_PAYLOAD_FLAG_RESOURCE | \
81*5254Sgavinm 	FM_EREPORT_GENAMD_PAYLOAD_FLAG_RESOURCECNT)
82*5254Sgavinm 
83*5254Sgavinm #ifdef __cplusplus
84*5254Sgavinm extern "C" {
85*5254Sgavinm #endif
86*5254Sgavinm 
87*5254Sgavinm #ifdef __cplusplus
88*5254Sgavinm }
89*5254Sgavinm #endif
90*5254Sgavinm 
91*5254Sgavinm #endif /* _SYS_FM_CPU_GENAMD_H */
92