1*d0e58ef5SRobert Mustacchi /*
2*d0e58ef5SRobert Mustacchi  * CDDL HEADER START
3*d0e58ef5SRobert Mustacchi  *
4*d0e58ef5SRobert Mustacchi  * The contents of this file are subject to the terms of the
5*d0e58ef5SRobert Mustacchi  * Common Development and Distribution License (the "License").
6*d0e58ef5SRobert Mustacchi  * You may not use this file except in compliance with the License.
7*d0e58ef5SRobert Mustacchi  *
8*d0e58ef5SRobert Mustacchi  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9*d0e58ef5SRobert Mustacchi  * or http://www.opensolaris.org/os/licensing.
10*d0e58ef5SRobert Mustacchi  * See the License for the specific language governing permissions
11*d0e58ef5SRobert Mustacchi  * and limitations under the License.
12*d0e58ef5SRobert Mustacchi  *
13*d0e58ef5SRobert Mustacchi  * When distributing Covered Code, include this CDDL HEADER in each
14*d0e58ef5SRobert Mustacchi  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15*d0e58ef5SRobert Mustacchi  * If applicable, add the following below this CDDL HEADER, with the
16*d0e58ef5SRobert Mustacchi  * fields enclosed by brackets "[]" replaced with your own identifying
17*d0e58ef5SRobert Mustacchi  * information: Portions Copyright [yyyy] [name of copyright owner]
18*d0e58ef5SRobert Mustacchi  *
19*d0e58ef5SRobert Mustacchi  * CDDL HEADER END
20*d0e58ef5SRobert Mustacchi  */
21*d0e58ef5SRobert Mustacchi /*
22*d0e58ef5SRobert Mustacchi  * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
23*d0e58ef5SRobert Mustacchi  * Use is subject to license terms.
24*d0e58ef5SRobert Mustacchi  */
25*d0e58ef5SRobert Mustacchi 
26*d0e58ef5SRobert Mustacchi /*
27*d0e58ef5SRobert Mustacchi  * This file contains preset event names from the Performance Application
28*d0e58ef5SRobert Mustacchi  * Programming Interface v3.5 which included the following notice:
29*d0e58ef5SRobert Mustacchi  *
30*d0e58ef5SRobert Mustacchi  *                             Copyright (c) 2005,6
31*d0e58ef5SRobert Mustacchi  *                           Innovative Computing Labs
32*d0e58ef5SRobert Mustacchi  *                         Computer Science Department,
33*d0e58ef5SRobert Mustacchi  *                            University of Tennessee,
34*d0e58ef5SRobert Mustacchi  *                                 Knoxville, TN.
35*d0e58ef5SRobert Mustacchi  *                              All Rights Reserved.
36*d0e58ef5SRobert Mustacchi  *
37*d0e58ef5SRobert Mustacchi  *
38*d0e58ef5SRobert Mustacchi  * Redistribution and use in source and binary forms, with or without
39*d0e58ef5SRobert Mustacchi  * modification, are permitted provided that the following conditions are met:
40*d0e58ef5SRobert Mustacchi  *
41*d0e58ef5SRobert Mustacchi  *    * Redistributions of source code must retain the above copyright notice,
42*d0e58ef5SRobert Mustacchi  *      this list of conditions and the following disclaimer.
43*d0e58ef5SRobert Mustacchi  *    * Redistributions in binary form must reproduce the above copyright
44*d0e58ef5SRobert Mustacchi  *	notice, this list of conditions and the following disclaimer in the
45*d0e58ef5SRobert Mustacchi  *	documentation and/or other materials provided with the distribution.
46*d0e58ef5SRobert Mustacchi  *    * Neither the name of the University of Tennessee nor the names of its
47*d0e58ef5SRobert Mustacchi  *      contributors may be used to endorse or promote products derived from
48*d0e58ef5SRobert Mustacchi  *	this software without specific prior written permission.
49*d0e58ef5SRobert Mustacchi  *
50*d0e58ef5SRobert Mustacchi  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
51*d0e58ef5SRobert Mustacchi  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
52*d0e58ef5SRobert Mustacchi  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
53*d0e58ef5SRobert Mustacchi  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
54*d0e58ef5SRobert Mustacchi  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
55*d0e58ef5SRobert Mustacchi  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
56*d0e58ef5SRobert Mustacchi  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
57*d0e58ef5SRobert Mustacchi  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
58*d0e58ef5SRobert Mustacchi  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
59*d0e58ef5SRobert Mustacchi  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
60*d0e58ef5SRobert Mustacchi  * POSSIBILITY OF SUCH DAMAGE.
61*d0e58ef5SRobert Mustacchi  *
62*d0e58ef5SRobert Mustacchi  *
63*d0e58ef5SRobert Mustacchi  * This open source software license conforms to the BSD License template.
64*d0e58ef5SRobert Mustacchi  */
65*d0e58ef5SRobert Mustacchi 
66*d0e58ef5SRobert Mustacchi /*
67*d0e58ef5SRobert Mustacchi  * Portions Copyright 2009 Advanced Micro Devices, Inc.
68*d0e58ef5SRobert Mustacchi  * Copyright 2019 Joyent, Inc.
69*d0e58ef5SRobert Mustacchi  */
70*d0e58ef5SRobert Mustacchi 
71*d0e58ef5SRobert Mustacchi /*
72*d0e58ef5SRobert Mustacchi  * Structure definition for AMD PCBE events.
73*d0e58ef5SRobert Mustacchi  */
74*d0e58ef5SRobert Mustacchi 
75*d0e58ef5SRobert Mustacchi #ifndef _OPTERON_PCBE_TABLE_H
76*d0e58ef5SRobert Mustacchi #define	_OPTERON_PCBE_TABLE_H
77*d0e58ef5SRobert Mustacchi 
78*d0e58ef5SRobert Mustacchi /*
79*d0e58ef5SRobert Mustacchi  * Structure definition for PCBE events.
80*d0e58ef5SRobert Mustacchi  */
81*d0e58ef5SRobert Mustacchi 
82*d0e58ef5SRobert Mustacchi #ifdef __cplusplus
83*d0e58ef5SRobert Mustacchi extern "C" {
84*d0e58ef5SRobert Mustacchi #endif
85*d0e58ef5SRobert Mustacchi 
86*d0e58ef5SRobert Mustacchi #include <sys/types.h>
87*d0e58ef5SRobert Mustacchi 
88*d0e58ef5SRobert Mustacchi 
89*d0e58ef5SRobert Mustacchi typedef struct _amd_event {
90*d0e58ef5SRobert Mustacchi 	char		*name;
91*d0e58ef5SRobert Mustacchi 	uint16_t	emask;		/* Event mask setting */
92*d0e58ef5SRobert Mustacchi 	uint8_t		unit;
93*d0e58ef5SRobert Mustacchi } amd_event_t;
94*d0e58ef5SRobert Mustacchi 
95*d0e58ef5SRobert Mustacchi typedef struct _amd_generic_event {
96*d0e58ef5SRobert Mustacchi 	char *name;
97*d0e58ef5SRobert Mustacchi 	char *event;
98*d0e58ef5SRobert Mustacchi 	uint8_t umask;
99*d0e58ef5SRobert Mustacchi } amd_generic_event_t;
100*d0e58ef5SRobert Mustacchi 
101*d0e58ef5SRobert Mustacchi #ifdef __cplusplus
102*d0e58ef5SRobert Mustacchi }
103*d0e58ef5SRobert Mustacchi #endif
104*d0e58ef5SRobert Mustacchi 
105*d0e58ef5SRobert Mustacchi #endif /* _OPTERON_PCBE_TABLE_H */
106