xref: /titanic_51/usr/src/uts/sparc/sys/fm/cpu/UltraSPARC-III.h (revision 38e9bdff89ac3db1d2adb25900776c2cbb6a3438)
17aec1d6eScindi /*
27aec1d6eScindi  * CDDL HEADER START
37aec1d6eScindi  *
47aec1d6eScindi  * The contents of this file are subject to the terms of the
5*38e9bdffSmikechr  * Common Development and Distribution License (the "License").
6*38e9bdffSmikechr  * You may not use this file except in compliance with the License.
77aec1d6eScindi  *
87aec1d6eScindi  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
97aec1d6eScindi  * or http://www.opensolaris.org/os/licensing.
107aec1d6eScindi  * See the License for the specific language governing permissions
117aec1d6eScindi  * and limitations under the License.
127aec1d6eScindi  *
137aec1d6eScindi  * When distributing Covered Code, include this CDDL HEADER in each
147aec1d6eScindi  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
157aec1d6eScindi  * If applicable, add the following below this CDDL HEADER, with the
167aec1d6eScindi  * fields enclosed by brackets "[]" replaced with your own identifying
177aec1d6eScindi  * information: Portions Copyright [yyyy] [name of copyright owner]
187aec1d6eScindi  *
197aec1d6eScindi  * CDDL HEADER END
207aec1d6eScindi  */
217aec1d6eScindi /*
22*38e9bdffSmikechr  * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
237aec1d6eScindi  * Use is subject to license terms.
247aec1d6eScindi  */
257aec1d6eScindi 
267aec1d6eScindi #ifndef	_SYS_FM_ULTRASPARC_III_H
277aec1d6eScindi #define	_SYS_FM_ULTRASPARC_III_H
287aec1d6eScindi 
297aec1d6eScindi #pragma ident	"%Z%%M%	%I%	%E% SMI"
307aec1d6eScindi 
317aec1d6eScindi #ifdef	__cplusplus
327aec1d6eScindi extern "C" {
337aec1d6eScindi #endif
347aec1d6eScindi 
357aec1d6eScindi /* Ereport class subcategories for UltraSPARC III and IV families */
367aec1d6eScindi #define	FM_EREPORT_CPU_USIII		"ultraSPARC-III"
377aec1d6eScindi #define	FM_EREPORT_CPU_USIIIplus	"ultraSPARC-IIIplus"
387aec1d6eScindi #define	FM_EREPORT_CPU_USIIIi		"ultraSPARC-IIIi"
397aec1d6eScindi #define	FM_EREPORT_CPU_USIIIiplus	"ultraSPARC-IIIiplus"
407aec1d6eScindi #define	FM_EREPORT_CPU_USIV		"ultraSPARC-IV"
417aec1d6eScindi #define	FM_EREPORT_CPU_USIVplus		"ultraSPARC-IVplus"
427aec1d6eScindi #define	FM_EREPORT_CPU_UNSUPPORTED	"unsupported"
437aec1d6eScindi 
447aec1d6eScindi /*
457aec1d6eScindi  * Ereport payload definitions.
467aec1d6eScindi  */
477aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_AFSR		"afsr"
487aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_AFAR		"afar"
497aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_AFAR_STATUS	"afar-status"
507aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_PC		"pc"
517aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_TL		"tl"
527aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_TT		"tt"
537aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_PRIV		"privileged"
547aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_ME		"multiple"
557aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_SYND		"syndrome"
567aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_SYND_STATUS	"syndrome-status"
577aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_EMU_EMR_SIZE	"emu-mask-size"
587aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_EMU_EMR_DATA	"emu-mask-data"
597aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_EMU_ESR_SIZE	"emu-shadow-size"
607aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_EMU_ESR_DATA	"emu-shadow-data"
617aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_L2_WAYS		"l2-cache-ways"
627aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_L2_DATA		"l2-cache-data"
637aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_L3_WAYS		"l3-cache-ways"
647aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_L3_DATA		"l3-cache-data"
657aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_L1D_WAYS	"dcache-ways"
667aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_L1D_DATA	"dcache-data"
677aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_L1I_WAYS	"icache-ways"
687aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_L1I_DATA	"icache-data"
697aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_L1P_WAYS	"pcache-ways"
707aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_L1P_DATA	"pcache-data"
717aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_ITLB_ENTRIES	"itlb-entries"
727aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_ITLB_DATA	"itlb-data"
737aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_DTLB_ENTRIES	"dtlb-entries"
747aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_DTLB_DATA	"dtlb-data"
757aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_ERR_TYPE	"error-type"
767aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_RESOURCE	"resource"
777aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_VA		"va"
787aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_AFSR_EXT	"afsr-ext"
797aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_COPYFUNCTION	"copy-function"
807aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_INSTRBLOCK	"instr-block"
817aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_HOWDETECTED	"how-detected"
827aec1d6eScindi #define	FM_EREPORT_PAYLOAD_NAME_ERR_DISP	"error-disposition"
837aec1d6eScindi 
847aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_AFSR		0x0000000000000001
857aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_AFAR_STATUS	0x0000000000000002
867aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_AFAR		0x0000000000000004
877aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_PC		0x0000000000000008
887aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_TL		0x0000000000000010
897aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_TT		0x0000000000000020
907aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_PRIV		0x0000000000000040
917aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_ME		0x0000000000000080
927aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_SYND		0x0000000000000100
937aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_SYND_STATUS	0x0000000000000200
947aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_EMU_EMR_SIZE	0x0000000000000400
957aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_EMU_EMR_DATA	0x0000000000000800
967aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_EMU_ESR_SIZE	0x0000000000001000
977aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_EMU_ESR_DATA	0x0000000000002000
987aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_L2_WAYS		0x0000000000004000
997aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_L2_DATA		0x0000000000008000
1007aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_L1D_WAYS	0x0000000000010000
1017aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_L1D_DATA	0x0000000000020000
1027aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_L1I_WAYS	0x0000000000040000
1037aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_L1I_DATA	0x0000000000080000
1047aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_ERR_TYPE	0x0000000000100000
1057aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_RESOURCE	0x0000000000200000
1067aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_AFSR_EXT	0x0000000000400000
1077aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_L1P_WAYS	0x0000000000800000
1087aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_L1P_DATA	0x0000000001000000
1097aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_ITLB_ENTRIES	0x0000000002000000
1107aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_ITLB_DATA	0x0000000004000000
1117aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_DTLB_ENTRIES	0x0000000008000000
1127aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_DTLB_DATA	0x0000000010000000
1137aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_FAULT_VA	0x0000000020000000
1147aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_L3_WAYS		0x0000000040000000
1157aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_L3_DATA		0x0000000080000000
1167aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_COPYFUNCTION	0x0000000100000000
1177aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_INSTRBLOCK	0x0000000200000000
1187aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_HOWDETECTED	0x0000000400000000
1197aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_ERR_DISP	0x0000000800000000
1207aec1d6eScindi 
1217aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAGS_AFAR \
1227aec1d6eScindi 				(FM_EREPORT_PAYLOAD_FLAG_AFAR | \
1237aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAG_AFAR_STATUS)
1247aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAGS_TRAP \
1257aec1d6eScindi 				(FM_EREPORT_PAYLOAD_FLAG_TL | \
1267aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAG_TT)
1277aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAGS_SYND \
1287aec1d6eScindi 				(FM_EREPORT_PAYLOAD_FLAG_SYND | \
1297aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAG_SYND_STATUS)
1307aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAGS_EMU \
1317aec1d6eScindi 				(FM_EREPORT_PAYLOAD_FLAG_EMU_EMR_SIZE | \
1327aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAG_EMU_EMR_DATA | \
1337aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAG_EMU_ESR_SIZE | \
1347aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAG_EMU_ESR_DATA)
1357aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAGS_L2 \
1367aec1d6eScindi 				(FM_EREPORT_PAYLOAD_FLAG_L2_WAYS | \
1377aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAG_L2_DATA)
1387aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAGS_L3 \
1397aec1d6eScindi 				(FM_EREPORT_PAYLOAD_FLAG_L3_WAYS | \
1407aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAG_L3_DATA)
1417aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAGS_L1D \
1427aec1d6eScindi 				(FM_EREPORT_PAYLOAD_FLAG_L1D_WAYS | \
1437aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAG_L1D_DATA)
1447aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAGS_L1I \
1457aec1d6eScindi 				(FM_EREPORT_PAYLOAD_FLAG_L1I_WAYS | \
1467aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAG_L1I_DATA)
1477aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAGS_L1P \
1487aec1d6eScindi 				(FM_EREPORT_PAYLOAD_FLAG_L1P_WAYS | \
1497aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAG_L1P_DATA)
1507aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAGS_L1 \
1517aec1d6eScindi 				(FM_EREPORT_PAYLOAD_FLAGS_L1D | \
1527aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAGS_L1I)
1537aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAGS_L1L2 \
1547aec1d6eScindi 				(FM_EREPORT_PAYLOAD_FLAGS_L1 | \
1557aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAGS_L2)
1567aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAGS_ITLB \
1577aec1d6eScindi 				(FM_EREPORT_PAYLOAD_FLAG_ITLB_ENTRIES | \
1587aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAG_ITLB_DATA)
1597aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAGS_DTLB \
1607aec1d6eScindi 				(FM_EREPORT_PAYLOAD_FLAG_DTLB_ENTRIES | \
1617aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAG_DTLB_DATA)
1627aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAGS_TLB \
1637aec1d6eScindi 				(FM_EREPORT_PAYLOAD_FLAGS_ITLB | \
1647aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAGS_DTLB)
1657aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FLAG_AFSRS \
1667aec1d6eScindi 				(FM_EREPORT_PAYLOAD_FLAG_AFSR | \
1677aec1d6eScindi 				    FM_EREPORT_PAYLOAD_FLAG_AFSR_EXT)
1687aec1d6eScindi 
1697aec1d6eScindi 
1707aec1d6eScindi #define	FM_EREPORT_PAYLOAD_UNKNOWN	0
1717aec1d6eScindi #define	FM_EREPORT_PAYLOAD_INVALID_AFSR	(FM_EREPORT_PAYLOAD_FLAG_AFSRS | \
1727aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_AFAR | \
1737aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PC | \
1747aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
1757aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
1767aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_ME)
1777aec1d6eScindi #define	FM_EREPORT_PAYLOAD_SYSTEM1	 (FM_EREPORT_PAYLOAD_FLAG_AFSRS | \
1787aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PC | \
1797aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
1807aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
1817aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_ME)
1827aec1d6eScindi #define	FM_EREPORT_PAYLOAD_SYSTEM2	 (FM_EREPORT_PAYLOAD_FLAG_AFSRS | \
1837aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_AFAR | \
1847aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PC | \
1857aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
1867aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
1877aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_ME | \
1887aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_EMU)
1897aec1d6eScindi #define	FM_EREPORT_PAYLOAD_SYSTEM3	 (FM_EREPORT_PAYLOAD_FLAG_AFSR | \
1907aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_AFAR | \
1917aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PC | \
1927aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
1937aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
1947aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_ME | \
1957aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_L2)
1967aec1d6eScindi #define	FM_EREPORT_PAYLOAD_IO		(FM_EREPORT_PAYLOAD_FLAG_AFSR | \
1977aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_AFAR | \
1987aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PC | \
1997aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
2007aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
2017aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_ME)
2027aec1d6eScindi #define	FM_EREPORT_PAYLOAD_L2_TAG_PE	(FM_EREPORT_PAYLOAD_FLAG_AFSR | \
2037aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_AFAR | \
2047aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PC | \
2057aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
2067aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
2077aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_ME | \
208*38e9bdffSmikechr 					    FM_EREPORT_PAYLOAD_FLAGS_L1L2 | \
209*38e9bdffSmikechr 					    FM_EREPORT_PAYLOAD_FLAG_RESOURCE)
2107aec1d6eScindi #define	FM_EREPORT_PAYLOAD_L2_TAG_ECC	(FM_EREPORT_PAYLOAD_FLAG_AFSRS | \
2117aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_AFAR | \
2127aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PC | \
2137aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
2147aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
2157aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_ME | \
2167aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_L1L2 | \
217*38e9bdffSmikechr 					    FM_EREPORT_PAYLOAD_FLAG_RESOURCE | \
2187aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_L3)
2197aec1d6eScindi #define	FM_EREPORT_PAYLOAD_L3_TAG_ECC	(FM_EREPORT_PAYLOAD_FLAG_AFSRS | \
2207aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_AFAR | \
2217aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PC | \
2227aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
2237aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
2247aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_ME | \
2257aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_L1L2 | \
226*38e9bdffSmikechr 					    FM_EREPORT_PAYLOAD_FLAG_RESOURCE | \
2277aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_L3)
2287aec1d6eScindi #define	FM_EREPORT_PAYLOAD_L2_DATA	(FM_EREPORT_PAYLOAD_FLAG_AFSRS | \
2297aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_AFAR | \
2307aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PC | \
2317aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
2327aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
2337aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_ME | \
2347aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_SYND | \
2357aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_L1L2 | \
2367aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_RESOURCE | \
2377aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_L3)
2387aec1d6eScindi #define	FM_EREPORT_PAYLOAD_L3_DATA	(FM_EREPORT_PAYLOAD_FLAG_AFSRS | \
2397aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_AFAR | \
2407aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PC | \
2417aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
2427aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
2437aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_ME | \
2447aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_SYND | \
2457aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_L1L2 | \
2467aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_RESOURCE | \
2477aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_L3)
2487aec1d6eScindi #define	FM_EREPORT_PAYLOAD_MEMORY	(FM_EREPORT_PAYLOAD_FLAG_AFSRS | \
2497aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_AFAR | \
2507aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PC | \
2517aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
2527aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
2537aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_ME | \
2547aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_SYND | \
2557aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_ERR_TYPE | \
2567aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_ERR_DISP | \
2577aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_L1L2 | \
2587aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_RESOURCE | \
2597aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_L3)
2607aec1d6eScindi #define	FM_EREPORT_PAYLOAD_ICACHE_PE	(FM_EREPORT_PAYLOAD_FLAG_PC | \
2617aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
2627aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
263*38e9bdffSmikechr 					    FM_EREPORT_PAYLOAD_FLAGS_L1I| \
264*38e9bdffSmikechr 					    FM_EREPORT_PAYLOAD_FLAG_RESOURCE)
2657aec1d6eScindi #define	FM_EREPORT_PAYLOAD_DCACHE_PE	(FM_EREPORT_PAYLOAD_FLAG_PC | \
2667aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
2677aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
268*38e9bdffSmikechr 					    FM_EREPORT_PAYLOAD_FLAGS_L1D| \
269*38e9bdffSmikechr 					    FM_EREPORT_PAYLOAD_FLAG_RESOURCE)
2707aec1d6eScindi #define	FM_EREPORT_PAYLOAD_PCACHE_PE	(FM_EREPORT_PAYLOAD_FLAG_PC | \
2717aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
2727aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
273*38e9bdffSmikechr 					    FM_EREPORT_PAYLOAD_FLAGS_L1P| \
274*38e9bdffSmikechr 					    FM_EREPORT_PAYLOAD_FLAG_RESOURCE)
2757aec1d6eScindi #define	FM_EREPORT_PAYLOAD_ITLB_PE	(FM_EREPORT_PAYLOAD_FLAG_PC | \
2767aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
2777aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
278*38e9bdffSmikechr 					    FM_EREPORT_PAYLOAD_FLAGS_ITLB| \
279*38e9bdffSmikechr 					    FM_EREPORT_PAYLOAD_FLAG_RESOURCE)
2807aec1d6eScindi #define	FM_EREPORT_PAYLOAD_DTLB_PE	(FM_EREPORT_PAYLOAD_FLAG_PC | \
2817aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_TRAP | \
2827aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_PRIV | \
2837aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAGS_DTLB | \
284*38e9bdffSmikechr 					    FM_EREPORT_PAYLOAD_FLAG_FAULT_VA| \
285*38e9bdffSmikechr 					    FM_EREPORT_PAYLOAD_FLAG_RESOURCE)
2867aec1d6eScindi #define	FM_EREPORT_PAYLOAD_FPU_HWCOPY	(FM_EREPORT_PAYLOAD_FLAG_COPYFUNCTION |\
2877aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_INSTRBLOCK|\
288*38e9bdffSmikechr 					    FM_EREPORT_PAYLOAD_FLAG_RESOURCE | \
2897aec1d6eScindi 					    FM_EREPORT_PAYLOAD_FLAG_HOWDETECTED)
2907aec1d6eScindi /*
2917aec1d6eScindi  * FM_EREPORT_PAYLOAD_UNKNOWN
2927aec1d6eScindi  */
2937aec1d6eScindi #define	FM_EREPORT_CPU_USIII_UNKNOWN		"unknown"
2947aec1d6eScindi 
2957aec1d6eScindi /*
2967aec1d6eScindi  * FM_EREPORT_PAYLOAD_INVALID_AFSR
2977aec1d6eScindi  */
2987aec1d6eScindi #define	FM_EREPORT_CPU_USIII_INVALID_AFSR	"invalid-afsr"
2997aec1d6eScindi 
3007aec1d6eScindi /*
3017aec1d6eScindi  * FM_EREPORT_PAYLOAD_SYSTEM1
3027aec1d6eScindi  */
3037aec1d6eScindi #define	FM_EREPORT_CPU_USIII_IVC		"ivc"
3047aec1d6eScindi #define	FM_EREPORT_CPU_USIII_IVU		"ivu"
3057aec1d6eScindi #define	FM_EREPORT_CPU_USIII_IMC		"imc"
3067aec1d6eScindi #define	FM_EREPORT_CPU_USIII_IMU		"imu"
3077aec1d6eScindi #define	FM_EREPORT_CPU_USIII_JETO		"jeto"
3087aec1d6eScindi #define	FM_EREPORT_CPU_USIII_SCE		"sce"
3097aec1d6eScindi #define	FM_EREPORT_CPU_USIII_JEIC		"jeic"
3107aec1d6eScindi #define	FM_EREPORT_CPU_USIII_JEIT		"jeit"
3117aec1d6eScindi #define	FM_EREPORT_CPU_USIII_JEIS		"jeis"
3127aec1d6eScindi #define	FM_EREPORT_CPU_USIII_ISAP		"isap"
3137aec1d6eScindi #define	FM_EREPORT_CPU_USIII_IVPE		"ivpe"
3147aec1d6eScindi 
3157aec1d6eScindi /*
3167aec1d6eScindi  * FM_EREPORT_PAYLOAD_SYSTEM2
3177aec1d6eScindi  */
3187aec1d6eScindi #define	FM_EREPORT_CPU_USIII_PERR		"perr"
3197aec1d6eScindi #define	FM_EREPORT_CPU_USIII_IERR		"ierr"
3207aec1d6eScindi 
3217aec1d6eScindi /*
3227aec1d6eScindi  * FM_EREPORT_PAYLOAD_SYSTEM3
3237aec1d6eScindi  */
3247aec1d6eScindi #define	FM_EREPORT_CPU_USIII_BP			"bp"
3257aec1d6eScindi #define	FM_EREPORT_CPU_USIII_WBP		"wbp"
3267aec1d6eScindi 
3277aec1d6eScindi /*
3287aec1d6eScindi  * FM_EREPORT_PAYLOAD_IO
3297aec1d6eScindi  */
3307aec1d6eScindi #define	FM_EREPORT_CPU_USIII_TO			"to"
3317aec1d6eScindi #define	FM_EREPORT_CPU_USIII_BERR		"berr"
3327aec1d6eScindi #define	FM_EREPORT_CPU_USIII_DTO		"dto"
3337aec1d6eScindi #define	FM_EREPORT_CPU_USIII_DBERR		"dberr"
3347aec1d6eScindi #define	FM_EREPORT_CPU_USIII_OM			"om"
3357aec1d6eScindi #define	FM_EREPORT_CPU_USIII_UMS		"ums"
3367aec1d6eScindi 
3377aec1d6eScindi /*
3387aec1d6eScindi  * FM_EREPORT_PAYLOAD_L2_TAG_PE
3397aec1d6eScindi  */
3407aec1d6eScindi #define	FM_EREPORT_CPU_USIII_ETP		"etp"
3417aec1d6eScindi 
3427aec1d6eScindi /*
3437aec1d6eScindi  * FM_EREPORT_PAYLOAD_L2_TAG_ECC
3447aec1d6eScindi  */
3457aec1d6eScindi #define	FM_EREPORT_CPU_USIII_THCE		"thce"
3467aec1d6eScindi #define	FM_EREPORT_CPU_USIII_TSCE		"tsce"
3477aec1d6eScindi #define	FM_EREPORT_CPU_USIII_TUE		"tue"
3487aec1d6eScindi #define	FM_EREPORT_CPU_USIII_TUE_SH		"tue-sh"
3497aec1d6eScindi #define	FM_EREPORT_CPU_USIII_ETU		"etu"
3507aec1d6eScindi #define	FM_EREPORT_CPU_USIII_ETC		"etc"
3517aec1d6eScindi #define	FM_EREPORT_CPU_USIII_ETI		"eti"
3527aec1d6eScindi #define	FM_EREPORT_CPU_USIII_ETS		"ets"
3537aec1d6eScindi 
3547aec1d6eScindi /*
3557aec1d6eScindi  * FM_EREPORT_PAYLOAD_L3_TAG_ECC
3567aec1d6eScindi  */
3577aec1d6eScindi #define	FM_EREPORT_CPU_USIII_L3_THCE		"l3-thce"
3587aec1d6eScindi #define	FM_EREPORT_CPU_USIII_L3_TUE		"l3-tue"
3597aec1d6eScindi #define	FM_EREPORT_CPU_USIII_L3_TUE_SH		"l3-tue-sh"
3607aec1d6eScindi 
3617aec1d6eScindi /*
3627aec1d6eScindi  * FM_EREPORT_PAYLOAD_L2_DATA
3637aec1d6eScindi  */
3647aec1d6eScindi #define	FM_EREPORT_CPU_USIII_UCC		"ucc"
3657aec1d6eScindi #define	FM_EREPORT_CPU_USIII_UCU		"ucu"
3667aec1d6eScindi #define	FM_EREPORT_CPU_USIII_CPC		"cpc"
3677aec1d6eScindi #define	FM_EREPORT_CPU_USIII_CPU		"cpu"
3687aec1d6eScindi #define	FM_EREPORT_CPU_USIII_WDC		"wdc"
3697aec1d6eScindi #define	FM_EREPORT_CPU_USIII_WDU		"wdu"
3707aec1d6eScindi #define	FM_EREPORT_CPU_USIII_EDC		"edc"
3717aec1d6eScindi #define	FM_EREPORT_CPU_USIII_EDUBL		"edu-bl"
3727aec1d6eScindi #define	FM_EREPORT_CPU_USIII_EDUST		"edu-st"
3737aec1d6eScindi 
3747aec1d6eScindi /*
3757aec1d6eScindi  * FM_EREPORT_PAYLOAD_L3_DATA
3767aec1d6eScindi  */
3777aec1d6eScindi #define	FM_EREPORT_CPU_USIII_L3_UCC		"l3-ucc"
3787aec1d6eScindi #define	FM_EREPORT_CPU_USIII_L3_UCU		"l3-ucu"
3797aec1d6eScindi #define	FM_EREPORT_CPU_USIII_L3_CPC		"l3-cpc"
3807aec1d6eScindi #define	FM_EREPORT_CPU_USIII_L3_CPU		"l3-cpu"
3817aec1d6eScindi #define	FM_EREPORT_CPU_USIII_L3_WDC		"l3-wdc"
3827aec1d6eScindi #define	FM_EREPORT_CPU_USIII_L3_WDU		"l3-wdu"
3837aec1d6eScindi #define	FM_EREPORT_CPU_USIII_L3_EDC		"l3-edc"
3847aec1d6eScindi #define	FM_EREPORT_CPU_USIII_L3_EDUBL		"l3-edu-bl"
3857aec1d6eScindi #define	FM_EREPORT_CPU_USIII_L3_EDUST		"l3-edu-st"
3867aec1d6eScindi #define	FM_EREPORT_CPU_USIII_L3_MECC		"l3-mecc"
3877aec1d6eScindi 
3887aec1d6eScindi /*
3897aec1d6eScindi  * FM_EREPORT_PAYLOAD_MEMORY
3907aec1d6eScindi  */
3917aec1d6eScindi #define	FM_EREPORT_CPU_USIII_CE			"ce"
3927aec1d6eScindi #define	FM_EREPORT_CPU_USIII_RCE		"rce"
3937aec1d6eScindi #define	FM_EREPORT_CPU_USIII_FRC		"frc"
3947aec1d6eScindi #define	FM_EREPORT_CPU_USIII_EMC		"emc"
3957aec1d6eScindi #define	FM_EREPORT_CPU_USIII_UE			"ue"
3967aec1d6eScindi #define	FM_EREPORT_CPU_USIII_DUE		"due"
3977aec1d6eScindi #define	FM_EREPORT_CPU_USIII_RUE		"rue"
3987aec1d6eScindi #define	FM_EREPORT_CPU_USIII_FRU		"fru"
3997aec1d6eScindi #define	FM_EREPORT_CPU_USIII_EMU		"emu"
4007aec1d6eScindi 
4017aec1d6eScindi /*
4027aec1d6eScindi  * FM_EREPORT_PAYLOAD_ICACHE_PE
4037aec1d6eScindi  */
4047aec1d6eScindi #define	FM_EREPORT_CPU_USIII_IPE		"ipe"
4057aec1d6eScindi #define	FM_EREPORT_CPU_USIII_IDSPE		"idspe"
4067aec1d6eScindi #define	FM_EREPORT_CPU_USIII_ITSPE		"itspe"
4077aec1d6eScindi 
4087aec1d6eScindi /*
4097aec1d6eScindi  * FM_EREPORT_PAYLOAD_DCACHE_PE
4107aec1d6eScindi  */
4117aec1d6eScindi #define	FM_EREPORT_CPU_USIII_DPE		"dpe"
4127aec1d6eScindi #define	FM_EREPORT_CPU_USIII_DDSPE		"ddspe"
4137aec1d6eScindi #define	FM_EREPORT_CPU_USIII_DTSPE		"dtspe"
4147aec1d6eScindi 
4157aec1d6eScindi /*
4167aec1d6eScindi  * FM_EREPORT_PAYLOAD_PCACHE_PE
4177aec1d6eScindi  */
4187aec1d6eScindi #define	FM_EREPORT_CPU_USIII_PDSPE		"pdspe"
4197aec1d6eScindi 
4207aec1d6eScindi 
4217aec1d6eScindi /*
4227aec1d6eScindi  * FM_EREPORT_PAYLOAD_DTLB_PE
4237aec1d6eScindi  */
4247aec1d6eScindi #define	FM_EREPORT_CPU_USIII_DTLBPE		"dtlbpe"
4257aec1d6eScindi 
4267aec1d6eScindi /*
4277aec1d6eScindi  * FM_EREPORT_PAYLOAD_ITLB_PE
4287aec1d6eScindi  */
4297aec1d6eScindi #define	FM_EREPORT_CPU_USIII_ITLBPE		"itlbpe"
4307aec1d6eScindi 
4317aec1d6eScindi /*
4327aec1d6eScindi  * FM_EREPORT_PAYLOAD_FPU_HWCOPY
4337aec1d6eScindi  */
4347aec1d6eScindi #define	FM_EREPORT_CPU_USIII_FPU_HWCOPY		"fpu.hwcopy"
4357aec1d6eScindi 
4367aec1d6eScindi /*
4377aec1d6eScindi  * Magic values for cache dump logflags.
4387aec1d6eScindi  * These flags are used to indicate that the structures
4397aec1d6eScindi  * defined in cheetahregs.h to capture cache data contain
4407aec1d6eScindi  * valid information.
4417aec1d6eScindi  */
4427aec1d6eScindi #define	EC_LOGFLAG_MAGIC	0xEC0106F1A6	/* =~ EC_LOGFLAG */
4437aec1d6eScindi #define	DC_LOGFLAG_MAGIC	0xDC0106F1A6	/* =~ DC_LOGFLAG */
4447aec1d6eScindi #define	IC_LOGFLAG_MAGIC	0x1C0106F1A6	/* =~ IC_LOGFLAG */
4457aec1d6eScindi #define	PC_LOGFLAG_MAGIC	0x9C0106F1A6	/* =~ PC_LOGFLAG */
4467aec1d6eScindi #define	IT_LOGFLAG_MAGIC	0x170106F1A6	/* =~ IT_LOGFLAG */
4477aec1d6eScindi #define	DT_LOGFLAG_MAGIC	0xD70106F1A6	/* =~ DT_LOGFLAG */
4487aec1d6eScindi 
4497aec1d6eScindi 
4507aec1d6eScindi #ifdef	__cplusplus
4517aec1d6eScindi }
4527aec1d6eScindi #endif
4537aec1d6eScindi 
4547aec1d6eScindi #endif	/* _SYS_FM_ULTRASPARC_III_H */
455