Blame src/libpfm4/lib/events/ppc970mp_events.h

Packit Service a1973e
/****************************/
Packit Service a1973e
/* THIS IS OPEN SOURCE CODE */
Packit Service a1973e
/****************************/
Packit Service a1973e
Packit Service a1973e
#ifndef __PPC970MP_EVENTS_H__
Packit Service a1973e
#define __PPC970MP_EVENTS_H__
Packit Service a1973e
Packit Service a1973e
/*
Packit Service a1973e
* File:    ppc970mp_events.h
Packit Service a1973e
* CVS:
Packit Service a1973e
* Author:  Corey Ashford
Packit Service a1973e
*          cjashfor@us.ibm.com
Packit Service a1973e
* Mods:    <your name here>
Packit Service a1973e
*          <your email address>
Packit Service a1973e
*
Packit Service a1973e
* (C) Copyright IBM Corporation, 2009.  All Rights Reserved.
Packit Service a1973e
* Contributed by Corey Ashford <cjashfor.ibm.com>
Packit Service a1973e
*
Packit Service a1973e
* Note: This code was automatically generated and should not be modified by
Packit Service a1973e
* hand.
Packit Service a1973e
*
Packit Service a1973e
*/
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_REJECT_RELOAD_CDF 0
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_LSU_SRQ_INST_VALID 1
Packit Service a1973e
#define PPC970MP_PME_PM_FPU1_SINGLE 2
Packit Service a1973e
#define PPC970MP_PME_PM_FPU0_STALL3 3
Packit Service a1973e
#define PPC970MP_PME_PM_TB_BIT_TRANS 4
Packit Service a1973e
#define PPC970MP_PME_PM_GPR_MAP_FULL_CYC 5
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_ST_CMPL 6
Packit Service a1973e
#define PPC970MP_PME_PM_FPU0_STF 7
Packit Service a1973e
#define PPC970MP_PME_PM_FPU1_FMA 8
Packit Service a1973e
#define PPC970MP_PME_PM_LSU1_FLUSH_ULD 9
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_INST_FIN 10
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_LSU0_FLUSH_UST 11
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_LRQ_S0_ALLOC 12
Packit Service a1973e
#define PPC970MP_PME_PM_FPU_FDIV 13
Packit Service a1973e
#define PPC970MP_PME_PM_FPU0_FULL_CYC 14
Packit Service a1973e
#define PPC970MP_PME_PM_FPU_SINGLE 15
Packit Service a1973e
#define PPC970MP_PME_PM_FPU0_FMA 16
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_LSU1_FLUSH_ULD 17
Packit Service a1973e
#define PPC970MP_PME_PM_LSU1_FLUSH_LRQ 18
Packit Service a1973e
#define PPC970MP_PME_PM_DTLB_MISS 19
Packit Service a1973e
#define PPC970MP_PME_PM_CMPLU_STALL_FXU 20
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_ST_MISS_L1 21
Packit Service a1973e
#define PPC970MP_PME_PM_EXT_INT 22
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_LSU1_FLUSH_LRQ 23
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_ST_GPS 24
Packit Service a1973e
#define PPC970MP_PME_PM_GRP_DISP_SUCCESS 25
Packit Service a1973e
#define PPC970MP_PME_PM_LSU1_LDF 26
Packit Service a1973e
#define PPC970MP_PME_PM_LSU0_SRQ_STFWD 27
Packit Service a1973e
#define PPC970MP_PME_PM_CR_MAP_FULL_CYC 28
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_LSU0_FLUSH_ULD 29
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_DERAT_MISS 30
Packit Service a1973e
#define PPC970MP_PME_PM_FPU0_SINGLE 31
Packit Service a1973e
#define PPC970MP_PME_PM_FPU1_FDIV 32
Packit Service a1973e
#define PPC970MP_PME_PM_FPU1_FEST 33
Packit Service a1973e
#define PPC970MP_PME_PM_FPU0_FRSP_FCONV 34
Packit Service a1973e
#define PPC970MP_PME_PM_GCT_EMPTY_SRQ_FULL 35
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_ST_CMPL_INT 36
Packit Service a1973e
#define PPC970MP_PME_PM_FLUSH_BR_MPRED 37
Packit Service a1973e
#define PPC970MP_PME_PM_FXU_FIN 38
Packit Service a1973e
#define PPC970MP_PME_PM_FPU_STF 39
Packit Service a1973e
#define PPC970MP_PME_PM_DSLB_MISS 40
Packit Service a1973e
#define PPC970MP_PME_PM_FXLS1_FULL_CYC 41
Packit Service a1973e
#define PPC970MP_PME_PM_CMPLU_STALL_FPU 42
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_LMQ_LHR_MERGE 43
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_STCX_FAIL 44
Packit Service a1973e
#define PPC970MP_PME_PM_FXU0_BUSY_FXU1_IDLE 45
Packit Service a1973e
#define PPC970MP_PME_PM_CMPLU_STALL_LSU 46
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_DATA_FROM_L25_SHR 47
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_FLUSH_ULD 48
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_BRU_FIN 49
Packit Service a1973e
#define PPC970MP_PME_PM_IERAT_XLATE_WR 50
Packit Service a1973e
#define PPC970MP_PME_PM_GCT_EMPTY_BR_MPRED 51
Packit Service a1973e
#define PPC970MP_PME_PM_LSU0_BUSY 52
Packit Service a1973e
#define PPC970MP_PME_PM_DATA_FROM_MEM 53
Packit Service a1973e
#define PPC970MP_PME_PM_FPR_MAP_FULL_CYC 54
Packit Service a1973e
#define PPC970MP_PME_PM_FPU1_FULL_CYC 55
Packit Service a1973e
#define PPC970MP_PME_PM_FPU0_FIN 56
Packit Service a1973e
#define PPC970MP_PME_PM_GRP_BR_REDIR 57
Packit Service a1973e
#define PPC970MP_PME_PM_GCT_EMPTY_IC_MISS 58
Packit Service a1973e
#define PPC970MP_PME_PM_THRESH_TIMEO 59
Packit Service a1973e
#define PPC970MP_PME_PM_FPU_FSQRT 60
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_LSU0_FLUSH_LRQ 61
Packit Service a1973e
#define PPC970MP_PME_PM_PMC1_OVERFLOW 62
Packit Service a1973e
#define PPC970MP_PME_PM_FXLS0_FULL_CYC 63
Packit Service a1973e
#define PPC970MP_PME_PM_FPU0_ALL 64
Packit Service a1973e
#define PPC970MP_PME_PM_DATA_TABLEWALK_CYC 65
Packit Service a1973e
#define PPC970MP_PME_PM_FPU0_FEST 66
Packit Service a1973e
#define PPC970MP_PME_PM_DATA_FROM_L25_MOD 67
Packit Service a1973e
#define PPC970MP_PME_PM_LSU0_REJECT_ERAT_MISS 68
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_LMQ_SRQ_EMPTY_CYC 69
Packit Service a1973e
#define PPC970MP_PME_PM_LSU0_REJECT_RELOAD_CDF 70
Packit Service a1973e
#define PPC970MP_PME_PM_FPU_FEST 71
Packit Service a1973e
#define PPC970MP_PME_PM_0INST_FETCH 72
Packit Service a1973e
#define PPC970MP_PME_PM_LD_MISS_L1_LSU0 73
Packit Service a1973e
#define PPC970MP_PME_PM_LSU1_REJECT_RELOAD_CDF 74
Packit Service a1973e
#define PPC970MP_PME_PM_L1_PREF 75
Packit Service a1973e
#define PPC970MP_PME_PM_FPU1_STALL3 76
Packit Service a1973e
#define PPC970MP_PME_PM_BRQ_FULL_CYC 77
Packit Service a1973e
#define PPC970MP_PME_PM_PMC8_OVERFLOW 78
Packit Service a1973e
#define PPC970MP_PME_PM_PMC7_OVERFLOW 79
Packit Service a1973e
#define PPC970MP_PME_PM_WORK_HELD 80
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_LD_MISS_L1_LSU0 81
Packit Service a1973e
#define PPC970MP_PME_PM_FXU_IDLE 82
Packit Service a1973e
#define PPC970MP_PME_PM_INST_CMPL 83
Packit Service a1973e
#define PPC970MP_PME_PM_LSU1_FLUSH_UST 84
Packit Service a1973e
#define PPC970MP_PME_PM_LSU0_FLUSH_ULD 85
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_FLUSH 86
Packit Service a1973e
#define PPC970MP_PME_PM_INST_FROM_L2 87
Packit Service a1973e
#define PPC970MP_PME_PM_LSU1_REJECT_LMQ_FULL 88
Packit Service a1973e
#define PPC970MP_PME_PM_PMC2_OVERFLOW 89
Packit Service a1973e
#define PPC970MP_PME_PM_FPU0_DENORM 90
Packit Service a1973e
#define PPC970MP_PME_PM_FPU1_FMOV_FEST 91
Packit Service a1973e
#define PPC970MP_PME_PM_INST_FETCH_CYC 92
Packit Service a1973e
#define PPC970MP_PME_PM_GRP_DISP_REJECT 93
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_LDF 94
Packit Service a1973e
#define PPC970MP_PME_PM_INST_DISP 95
Packit Service a1973e
#define PPC970MP_PME_PM_DATA_FROM_L25_SHR 96
Packit Service a1973e
#define PPC970MP_PME_PM_L1_DCACHE_RELOAD_VALID 97
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_GRP_ISSUED 98
Packit Service a1973e
#define PPC970MP_PME_PM_FPU_FMA 99
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_CRU_FIN 100
Packit Service a1973e
#define PPC970MP_PME_PM_CMPLU_STALL_REJECT 101
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_LSU1_FLUSH_UST 102
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_FXU_FIN 103
Packit Service a1973e
#define PPC970MP_PME_PM_LSU1_REJECT_ERAT_MISS 104
Packit Service a1973e
#define PPC970MP_PME_PM_BR_ISSUED 105
Packit Service a1973e
#define PPC970MP_PME_PM_PMC4_OVERFLOW 106
Packit Service a1973e
#define PPC970MP_PME_PM_EE_OFF 107
Packit Service a1973e
#define PPC970MP_PME_PM_INST_FROM_L25_MOD 108
Packit Service a1973e
#define PPC970MP_PME_PM_CMPLU_STALL_ERAT_MISS 109
Packit Service a1973e
#define PPC970MP_PME_PM_ITLB_MISS 110
Packit Service a1973e
#define PPC970MP_PME_PM_FXU1_BUSY_FXU0_IDLE 111
Packit Service a1973e
#define PPC970MP_PME_PM_GRP_DISP_VALID 112
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_GRP_DISP 113
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_FLUSH_UST 114
Packit Service a1973e
#define PPC970MP_PME_PM_FXU1_FIN 115
Packit Service a1973e
#define PPC970MP_PME_PM_GRP_CMPL 116
Packit Service a1973e
#define PPC970MP_PME_PM_FPU_FRSP_FCONV 117
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_LSU0_FLUSH_SRQ 118
Packit Service a1973e
#define PPC970MP_PME_PM_CMPLU_STALL_OTHER 119
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_LMQ_FULL_CYC 120
Packit Service a1973e
#define PPC970MP_PME_PM_ST_REF_L1_LSU0 121
Packit Service a1973e
#define PPC970MP_PME_PM_LSU0_DERAT_MISS 122
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_SRQ_SYNC_CYC 123
Packit Service a1973e
#define PPC970MP_PME_PM_FPU_STALL3 124
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_REJECT_ERAT_MISS 125
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_DATA_FROM_L2 126
Packit Service a1973e
#define PPC970MP_PME_PM_LSU0_FLUSH_SRQ 127
Packit Service a1973e
#define PPC970MP_PME_PM_FPU0_FMOV_FEST 128
Packit Service a1973e
#define PPC970MP_PME_PM_IOPS_CMPL 129
Packit Service a1973e
#define PPC970MP_PME_PM_LD_REF_L1_LSU0 130
Packit Service a1973e
#define PPC970MP_PME_PM_LSU1_FLUSH_SRQ 131
Packit Service a1973e
#define PPC970MP_PME_PM_CMPLU_STALL_DIV 132
Packit Service a1973e
#define PPC970MP_PME_PM_GRP_BR_MPRED 133
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_LMQ_S0_ALLOC 134
Packit Service a1973e
#define PPC970MP_PME_PM_LSU0_REJECT_LMQ_FULL 135
Packit Service a1973e
#define PPC970MP_PME_PM_ST_REF_L1 136
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_VMX_FIN 137
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_SRQ_EMPTY_CYC 138
Packit Service a1973e
#define PPC970MP_PME_PM_FPU1_STF 139
Packit Service a1973e
#define PPC970MP_PME_PM_RUN_CYC 140
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_LMQ_S0_VALID 141
Packit Service a1973e
#define PPC970MP_PME_PM_LSU0_LDF 142
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_LRQ_S0_VALID 143
Packit Service a1973e
#define PPC970MP_PME_PM_PMC3_OVERFLOW 144
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_IMR_RELOAD 145
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_GRP_TIMEO 146
Packit Service a1973e
#define PPC970MP_PME_PM_FPU_FMOV_FEST 147
Packit Service a1973e
#define PPC970MP_PME_PM_GRP_DISP_BLK_SB_CYC 148
Packit Service a1973e
#define PPC970MP_PME_PM_XER_MAP_FULL_CYC 149
Packit Service a1973e
#define PPC970MP_PME_PM_ST_MISS_L1 150
Packit Service a1973e
#define PPC970MP_PME_PM_STOP_COMPLETION 151
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_GRP_CMPL 152
Packit Service a1973e
#define PPC970MP_PME_PM_ISLB_MISS 153
Packit Service a1973e
#define PPC970MP_PME_PM_SUSPENDED 154
Packit Service a1973e
#define PPC970MP_PME_PM_CYC 155
Packit Service a1973e
#define PPC970MP_PME_PM_LD_MISS_L1_LSU1 156
Packit Service a1973e
#define PPC970MP_PME_PM_STCX_FAIL 157
Packit Service a1973e
#define PPC970MP_PME_PM_LSU1_SRQ_STFWD 158
Packit Service a1973e
#define PPC970MP_PME_PM_GRP_DISP 159
Packit Service a1973e
#define PPC970MP_PME_PM_L2_PREF 160
Packit Service a1973e
#define PPC970MP_PME_PM_FPU1_DENORM 161
Packit Service a1973e
#define PPC970MP_PME_PM_DATA_FROM_L2 162
Packit Service a1973e
#define PPC970MP_PME_PM_FPU0_FPSCR 163
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_DATA_FROM_L25_MOD 164
Packit Service a1973e
#define PPC970MP_PME_PM_FPU0_FSQRT 165
Packit Service a1973e
#define PPC970MP_PME_PM_LD_REF_L1 166
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_L1_RELOAD_VALID 167
Packit Service a1973e
#define PPC970MP_PME_PM_1PLUS_PPC_CMPL 168
Packit Service a1973e
#define PPC970MP_PME_PM_INST_FROM_L1 169
Packit Service a1973e
#define PPC970MP_PME_PM_EE_OFF_EXT_INT 170
Packit Service a1973e
#define PPC970MP_PME_PM_PMC6_OVERFLOW 171
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_LRQ_FULL_CYC 172
Packit Service a1973e
#define PPC970MP_PME_PM_IC_PREF_INSTALL 173
Packit Service a1973e
#define PPC970MP_PME_PM_DC_PREF_OUT_OF_STREAMS 174
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_LSU1_FLUSH_SRQ 175
Packit Service a1973e
#define PPC970MP_PME_PM_GCT_FULL_CYC 176
Packit Service a1973e
#define PPC970MP_PME_PM_INST_FROM_MEM 177
Packit Service a1973e
#define PPC970MP_PME_PM_FLUSH_LSU_BR_MPRED 178
Packit Service a1973e
#define PPC970MP_PME_PM_FXU_BUSY 179
Packit Service a1973e
#define PPC970MP_PME_PM_ST_REF_L1_LSU1 180
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_LD_MISS_L1 181
Packit Service a1973e
#define PPC970MP_PME_PM_L1_WRITE_CYC 182
Packit Service a1973e
#define PPC970MP_PME_PM_LSU1_BUSY 183
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_REJECT_LMQ_FULL 184
Packit Service a1973e
#define PPC970MP_PME_PM_CMPLU_STALL_FDIV 185
Packit Service a1973e
#define PPC970MP_PME_PM_FPU_ALL 186
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_SRQ_S0_ALLOC 187
Packit Service a1973e
#define PPC970MP_PME_PM_INST_FROM_L25_SHR 188
Packit Service a1973e
#define PPC970MP_PME_PM_GRP_MRK 189
Packit Service a1973e
#define PPC970MP_PME_PM_BR_MPRED_CR 190
Packit Service a1973e
#define PPC970MP_PME_PM_DC_PREF_STREAM_ALLOC 191
Packit Service a1973e
#define PPC970MP_PME_PM_FPU1_FIN 192
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_REJECT_SRQ 193
Packit Service a1973e
#define PPC970MP_PME_PM_BR_MPRED_TA 194
Packit Service a1973e
#define PPC970MP_PME_PM_CRQ_FULL_CYC 195
Packit Service a1973e
#define PPC970MP_PME_PM_LD_MISS_L1 196
Packit Service a1973e
#define PPC970MP_PME_PM_INST_FROM_PREF 197
Packit Service a1973e
#define PPC970MP_PME_PM_STCX_PASS 198
Packit Service a1973e
#define PPC970MP_PME_PM_DC_INV_L2 199
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_SRQ_FULL_CYC 200
Packit Service a1973e
#define PPC970MP_PME_PM_LSU0_FLUSH_LRQ 201
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_SRQ_S0_VALID 202
Packit Service a1973e
#define PPC970MP_PME_PM_LARX_LSU0 203
Packit Service a1973e
#define PPC970MP_PME_PM_GCT_EMPTY_CYC 204
Packit Service a1973e
#define PPC970MP_PME_PM_FPU1_ALL 205
Packit Service a1973e
#define PPC970MP_PME_PM_FPU1_FSQRT 206
Packit Service a1973e
#define PPC970MP_PME_PM_FPU_FIN 207
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_SRQ_STFWD 208
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_LD_MISS_L1_LSU1 209
Packit Service a1973e
#define PPC970MP_PME_PM_FXU0_FIN 210
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_FPU_FIN 211
Packit Service a1973e
#define PPC970MP_PME_PM_PMC5_OVERFLOW 212
Packit Service a1973e
#define PPC970MP_PME_PM_SNOOP_TLBIE 213
Packit Service a1973e
#define PPC970MP_PME_PM_FPU1_FRSP_FCONV 214
Packit Service a1973e
#define PPC970MP_PME_PM_FPU0_FDIV 215
Packit Service a1973e
#define PPC970MP_PME_PM_LD_REF_L1_LSU1 216
Packit Service a1973e
#define PPC970MP_PME_PM_HV_CYC 217
Packit Service a1973e
#define PPC970MP_PME_PM_LR_CTR_MAP_FULL_CYC 218
Packit Service a1973e
#define PPC970MP_PME_PM_FPU_DENORM 219
Packit Service a1973e
#define PPC970MP_PME_PM_LSU0_REJECT_SRQ 220
Packit Service a1973e
#define PPC970MP_PME_PM_LSU1_REJECT_SRQ 221
Packit Service a1973e
#define PPC970MP_PME_PM_LSU1_DERAT_MISS 222
Packit Service a1973e
#define PPC970MP_PME_PM_IC_PREF_REQ 223
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_LSU_FIN 224
Packit Service a1973e
#define PPC970MP_PME_PM_MRK_DATA_FROM_MEM 225
Packit Service a1973e
#define PPC970MP_PME_PM_CMPLU_STALL_DCACHE_MISS 226
Packit Service a1973e
#define PPC970MP_PME_PM_LSU0_FLUSH_UST 227
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_FLUSH_LRQ 228
Packit Service a1973e
#define PPC970MP_PME_PM_LSU_FLUSH_SRQ 229
Packit Service a1973e
Packit Service a1973e
static const pme_power_entry_t ppc970mp_pe[] = {
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_REJECT_RELOAD_CDF ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_REJECT_RELOAD_CDF",
Packit Service a1973e
		.pme_code = 0x6920,
Packit Service a1973e
		.pme_short_desc = "LSU reject due to reload CDF or tag update collision",
Packit Service a1973e
		.pme_long_desc = "LSU reject due to reload CDF or tag update collision",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_LSU_SRQ_INST_VALID ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_LSU_SRQ_INST_VALID",
Packit Service a1973e
		.pme_code = 0x936,
Packit Service a1973e
		.pme_short_desc = "Marked instruction valid in SRQ",
Packit Service a1973e
		.pme_long_desc = "This signal is asserted every cycle when a marked request is resident in the Store Request Queue",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU1_SINGLE ] = {
Packit Service a1973e
		.pme_name = "PM_FPU1_SINGLE",
Packit Service a1973e
		.pme_code = 0x127,
Packit Service a1973e
		.pme_short_desc = "FPU1 executed single precision instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when fp1 is executing single precision instruction.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU0_STALL3 ] = {
Packit Service a1973e
		.pme_name = "PM_FPU0_STALL3",
Packit Service a1973e
		.pme_code = 0x121,
Packit Service a1973e
		.pme_short_desc = "FPU0 stalled in pipe3",
Packit Service a1973e
		.pme_long_desc = "This signal indicates that fp0 has generated a stall in pipe3 due to overflow, underflow, massive cancel, convert to integer (sometimes), or convert from integer (always). This signal is active during the entire duration of the stall. ",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_TB_BIT_TRANS ] = {
Packit Service a1973e
		.pme_name = "PM_TB_BIT_TRANS",
Packit Service a1973e
		.pme_code = 0x8005,
Packit Service a1973e
		.pme_short_desc = "Time Base bit transition",
Packit Service a1973e
		.pme_long_desc = "When the selected time base bit (as specified in MMCR0[TBSEL])transitions from 0 to 1 ",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_GPR_MAP_FULL_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_GPR_MAP_FULL_CYC",
Packit Service a1973e
		.pme_code = 0x335,
Packit Service a1973e
		.pme_short_desc = "Cycles GPR mapper full",
Packit Service a1973e
		.pme_long_desc = "The ISU sends a signal indicating that the gpr mapper cannot accept any more groups. Dispatch is stopped. Note: this condition indicates that a pool of mapper is full but the entire mapper may not be.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_ST_CMPL ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_ST_CMPL",
Packit Service a1973e
		.pme_code = 0x1003,
Packit Service a1973e
		.pme_short_desc = "Marked store instruction completed",
Packit Service a1973e
		.pme_long_desc = "A sampled store has completed (data home)",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU0_STF ] = {
Packit Service a1973e
		.pme_name = "PM_FPU0_STF",
Packit Service a1973e
		.pme_code = 0x122,
Packit Service a1973e
		.pme_short_desc = "FPU0 executed store instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when fp0 is executing a store instruction.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU1_FMA ] = {
Packit Service a1973e
		.pme_name = "PM_FPU1_FMA",
Packit Service a1973e
		.pme_code = 0x105,
Packit Service a1973e
		.pme_short_desc = "FPU1 executed multiply-add instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when fp1 is executing multiply-add kind of instruction. This could be fmadd*, fnmadd*, fmsub*, fnmsub* where XYZ* means XYZ, XYZs, XYZ., XYZs.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU1_FLUSH_ULD ] = {
Packit Service a1973e
		.pme_name = "PM_LSU1_FLUSH_ULD",
Packit Service a1973e
		.pme_code = 0x804,
Packit Service a1973e
		.pme_short_desc = "LSU1 unaligned load flushes",
Packit Service a1973e
		.pme_long_desc = "A load was flushed from unit 1 because it was unaligned (crossed a 64byte boundary, or 32 byte if it missed the L1)",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_INST_FIN ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_INST_FIN",
Packit Service a1973e
		.pme_code = 0x7005,
Packit Service a1973e
		.pme_short_desc = "Marked instruction finished",
Packit Service a1973e
		.pme_long_desc = "One of the execution units finished a marked instruction. Instructions that finish may not necessary complete",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_LSU0_FLUSH_UST ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_LSU0_FLUSH_UST",
Packit Service a1973e
		.pme_code = 0x711,
Packit Service a1973e
		.pme_short_desc = "LSU0 marked unaligned store flushes",
Packit Service a1973e
		.pme_long_desc = "A marked store was flushed from unit 0 because it was unaligned",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_LRQ_S0_ALLOC ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_LRQ_S0_ALLOC",
Packit Service a1973e
		.pme_code = 0x826,
Packit Service a1973e
		.pme_short_desc = "LRQ slot 0 allocated",
Packit Service a1973e
		.pme_long_desc = "LRQ slot zero was allocated",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU_FDIV ] = {
Packit Service a1973e
		.pme_name = "PM_FPU_FDIV",
Packit Service a1973e
		.pme_code = 0x1100,
Packit Service a1973e
		.pme_short_desc = "FPU executed FDIV instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle at the end of the microcode executed when FPU is executing a divide instruction. This could be fdiv, fdivs, fdiv. fdivs. Combined Unit 0 + Unit 1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU0_FULL_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_FPU0_FULL_CYC",
Packit Service a1973e
		.pme_code = 0x303,
Packit Service a1973e
		.pme_short_desc = "Cycles FPU0 issue queue full",
Packit Service a1973e
		.pme_long_desc = "The issue queue for FPU unit 0 cannot accept any more instructions. Issue is stopped",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU_SINGLE ] = {
Packit Service a1973e
		.pme_name = "PM_FPU_SINGLE",
Packit Service a1973e
		.pme_code = 0x5120,
Packit Service a1973e
		.pme_short_desc = "FPU executed single precision instruction",
Packit Service a1973e
		.pme_long_desc = "FPU is executing single precision instruction. Combined Unit 0 + Unit 1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU0_FMA ] = {
Packit Service a1973e
		.pme_name = "PM_FPU0_FMA",
Packit Service a1973e
		.pme_code = 0x101,
Packit Service a1973e
		.pme_short_desc = "FPU0 executed multiply-add instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when fp0 is executing multiply-add kind of instruction. This could be fmadd*, fnmadd*, fmsub*, fnmsub* where XYZ* means XYZ, XYZs, XYZ., XYZs.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_LSU1_FLUSH_ULD ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_LSU1_FLUSH_ULD",
Packit Service a1973e
		.pme_code = 0x714,
Packit Service a1973e
		.pme_short_desc = "LSU1 marked unaligned load flushes",
Packit Service a1973e
		.pme_long_desc = "A marked load was flushed from unit 1 because it was unaligned (crossed a 64byte boundary, or 32 byte if it missed the L1)",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU1_FLUSH_LRQ ] = {
Packit Service a1973e
		.pme_name = "PM_LSU1_FLUSH_LRQ",
Packit Service a1973e
		.pme_code = 0x806,
Packit Service a1973e
		.pme_short_desc = "LSU1 LRQ flushes",
Packit Service a1973e
		.pme_long_desc = "A load was flushed by unit 1 because a younger load executed before an older store executed and they had overlapping data OR two loads executed out of order and they have byte overlap and there was a snoop in between to an overlapped byte.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_DTLB_MISS ] = {
Packit Service a1973e
		.pme_name = "PM_DTLB_MISS",
Packit Service a1973e
		.pme_code = 0x704,
Packit Service a1973e
		.pme_short_desc = "Data TLB misses",
Packit Service a1973e
		.pme_long_desc = "A TLB miss for a data request occurred. Requests that miss the TLB may be retried until the instruction is in the next to complete group (unless HID4 is set to allow speculative tablewalks). This may result in multiple TLB misses for the same instruction.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_CMPLU_STALL_FXU ] = {
Packit Service a1973e
		.pme_name = "PM_CMPLU_STALL_FXU",
Packit Service a1973e
		.pme_code = 0x508b,
Packit Service a1973e
		.pme_short_desc = "Completion stall caused by FXU instruction",
Packit Service a1973e
		.pme_long_desc = "Completion stall caused by FXU instruction",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_ST_MISS_L1 ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_ST_MISS_L1",
Packit Service a1973e
		.pme_code = 0x723,
Packit Service a1973e
		.pme_short_desc = "Marked L1 D cache store misses",
Packit Service a1973e
		.pme_long_desc = "A marked store missed the dcache",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_EXT_INT ] = {
Packit Service a1973e
		.pme_name = "PM_EXT_INT",
Packit Service a1973e
		.pme_code = 0x8002,
Packit Service a1973e
		.pme_short_desc = "External interrupts",
Packit Service a1973e
		.pme_long_desc = "An external interrupt occurred",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_LSU1_FLUSH_LRQ ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_LSU1_FLUSH_LRQ",
Packit Service a1973e
		.pme_code = 0x716,
Packit Service a1973e
		.pme_short_desc = "LSU1 marked LRQ flushes",
Packit Service a1973e
		.pme_long_desc = "A marked load was flushed by unit 1 because a younger load executed before an older store executed and they had overlapping data OR two loads executed out of order and they have byte overlap and there was a snoop in between to an overlapped byte.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_ST_GPS ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_ST_GPS",
Packit Service a1973e
		.pme_code = 0x6003,
Packit Service a1973e
		.pme_short_desc = "Marked store sent to GPS",
Packit Service a1973e
		.pme_long_desc = "A sampled store has been sent to the memory subsystem",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_GRP_DISP_SUCCESS ] = {
Packit Service a1973e
		.pme_name = "PM_GRP_DISP_SUCCESS",
Packit Service a1973e
		.pme_code = 0x5001,
Packit Service a1973e
		.pme_short_desc = "Group dispatch success",
Packit Service a1973e
		.pme_long_desc = "Number of groups sucessfully dispatched (not rejected)",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU1_LDF ] = {
Packit Service a1973e
		.pme_name = "PM_LSU1_LDF",
Packit Service a1973e
		.pme_code = 0x734,
Packit Service a1973e
		.pme_short_desc = "LSU1 executed Floating Point load instruction",
Packit Service a1973e
		.pme_long_desc = "A floating point load was executed from LSU unit 1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU0_SRQ_STFWD ] = {
Packit Service a1973e
		.pme_name = "PM_LSU0_SRQ_STFWD",
Packit Service a1973e
		.pme_code = 0x820,
Packit Service a1973e
		.pme_short_desc = "LSU0 SRQ store forwarded",
Packit Service a1973e
		.pme_long_desc = "Data from a store instruction was forwarded to a load on unit 0",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_CR_MAP_FULL_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_CR_MAP_FULL_CYC",
Packit Service a1973e
		.pme_code = 0x304,
Packit Service a1973e
		.pme_short_desc = "Cycles CR logical operation mapper full",
Packit Service a1973e
		.pme_long_desc = "The ISU sends a signal indicating that the cr mapper cannot accept any more groups. Dispatch is stopped. Note: this condition indicates that a pool of mapper is full but the entire mapper may not be.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_LSU0_FLUSH_ULD ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_LSU0_FLUSH_ULD",
Packit Service a1973e
		.pme_code = 0x710,
Packit Service a1973e
		.pme_short_desc = "LSU0 marked unaligned load flushes",
Packit Service a1973e
		.pme_long_desc = "A marked load was flushed from unit 0 because it was unaligned (crossed a 64byte boundary, or 32 byte if it missed the L1)",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_DERAT_MISS ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_DERAT_MISS",
Packit Service a1973e
		.pme_code = 0x6700,
Packit Service a1973e
		.pme_short_desc = "DERAT misses",
Packit Service a1973e
		.pme_long_desc = "Total D-ERAT Misses (Unit 0 + Unit 1). Requests that miss the Derat are rejected and retried until the request hits in the Erat. This may result in multiple erat misses for the same instruction.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU0_SINGLE ] = {
Packit Service a1973e
		.pme_name = "PM_FPU0_SINGLE",
Packit Service a1973e
		.pme_code = 0x123,
Packit Service a1973e
		.pme_short_desc = "FPU0 executed single precision instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when fp0 is executing single precision instruction.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU1_FDIV ] = {
Packit Service a1973e
		.pme_name = "PM_FPU1_FDIV",
Packit Service a1973e
		.pme_code = 0x104,
Packit Service a1973e
		.pme_short_desc = "FPU1 executed FDIV instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle at the end of the microcode executed when fp1 is executing a divide instruction. This could be fdiv, fdivs, fdiv. fdivs.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU1_FEST ] = {
Packit Service a1973e
		.pme_name = "PM_FPU1_FEST",
Packit Service a1973e
		.pme_code = 0x116,
Packit Service a1973e
		.pme_short_desc = "FPU1 executed FEST instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when fp1 is executing one of the estimate instructions. This could be fres* or frsqrte* where XYZ* means XYZ or XYZ. ",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU0_FRSP_FCONV ] = {
Packit Service a1973e
		.pme_name = "PM_FPU0_FRSP_FCONV",
Packit Service a1973e
		.pme_code = 0x111,
Packit Service a1973e
		.pme_short_desc = "FPU0 executed FRSP or FCONV instructions",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when fp0 is executing frsp or convert kind of instruction. This could be frsp*, fcfid*, fcti* where XYZ* means XYZ, XYZs, XYZ., XYZs.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_GCT_EMPTY_SRQ_FULL ] = {
Packit Service a1973e
		.pme_name = "PM_GCT_EMPTY_SRQ_FULL",
Packit Service a1973e
		.pme_code = 0x200b,
Packit Service a1973e
		.pme_short_desc = "GCT empty caused by SRQ full",
Packit Service a1973e
		.pme_long_desc = "GCT empty caused by SRQ full",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_ST_CMPL_INT ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_ST_CMPL_INT",
Packit Service a1973e
		.pme_code = 0x3003,
Packit Service a1973e
		.pme_short_desc = "Marked store completed with intervention",
Packit Service a1973e
		.pme_long_desc = "A marked store previously sent to the memory subsystem completed (data home) after requiring intervention",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FLUSH_BR_MPRED ] = {
Packit Service a1973e
		.pme_name = "PM_FLUSH_BR_MPRED",
Packit Service a1973e
		.pme_code = 0x316,
Packit Service a1973e
		.pme_short_desc = "Flush caused by branch mispredict",
Packit Service a1973e
		.pme_long_desc = "Flush caused by branch mispredict",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FXU_FIN ] = {
Packit Service a1973e
		.pme_name = "PM_FXU_FIN",
Packit Service a1973e
		.pme_code = 0x3330,
Packit Service a1973e
		.pme_short_desc = "FXU produced a result",
Packit Service a1973e
		.pme_long_desc = "The fixed point unit (Unit 0 + Unit 1) finished an instruction. Instructions that finish may not necessary complete.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU_STF ] = {
Packit Service a1973e
		.pme_name = "PM_FPU_STF",
Packit Service a1973e
		.pme_code = 0x6120,
Packit Service a1973e
		.pme_short_desc = "FPU executed store instruction",
Packit Service a1973e
		.pme_long_desc = "FPU is executing a store instruction. Combined Unit 0 + Unit 1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_DSLB_MISS ] = {
Packit Service a1973e
		.pme_name = "PM_DSLB_MISS",
Packit Service a1973e
		.pme_code = 0x705,
Packit Service a1973e
		.pme_short_desc = "Data SLB misses",
Packit Service a1973e
		.pme_long_desc = "A SLB miss for a data request occurred. SLB misses trap to the operating system to resolve",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FXLS1_FULL_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_FXLS1_FULL_CYC",
Packit Service a1973e
		.pme_code = 0x314,
Packit Service a1973e
		.pme_short_desc = "Cycles FXU1/LS1 queue full",
Packit Service a1973e
		.pme_long_desc = "The issue queue for FXU/LSU unit 0 cannot accept any more instructions. Issue is stopped",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_CMPLU_STALL_FPU ] = {
Packit Service a1973e
		.pme_name = "PM_CMPLU_STALL_FPU",
Packit Service a1973e
		.pme_code = 0x704b,
Packit Service a1973e
		.pme_short_desc = "Completion stall caused by FPU instruction",
Packit Service a1973e
		.pme_long_desc = "Completion stall caused by FPU instruction",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_LMQ_LHR_MERGE ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_LMQ_LHR_MERGE",
Packit Service a1973e
		.pme_code = 0x935,
Packit Service a1973e
		.pme_short_desc = "LMQ LHR merges",
Packit Service a1973e
		.pme_long_desc = "A dcache miss occurred for the same real cache line address as an earlier request already in the Load Miss Queue and was merged into the LMQ entry.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_STCX_FAIL ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_STCX_FAIL",
Packit Service a1973e
		.pme_code = 0x726,
Packit Service a1973e
		.pme_short_desc = "Marked STCX failed",
Packit Service a1973e
		.pme_long_desc = "A marked stcx (stwcx or stdcx) failed",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FXU0_BUSY_FXU1_IDLE ] = {
Packit Service a1973e
		.pme_name = "PM_FXU0_BUSY_FXU1_IDLE",
Packit Service a1973e
		.pme_code = 0x7002,
Packit Service a1973e
		.pme_short_desc = "FXU0 busy FXU1 idle",
Packit Service a1973e
		.pme_long_desc = "FXU0 is busy while FXU1 was idle",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_CMPLU_STALL_LSU ] = {
Packit Service a1973e
		.pme_name = "PM_CMPLU_STALL_LSU",
Packit Service a1973e
		.pme_code = 0x504b,
Packit Service a1973e
		.pme_short_desc = "Completion stall caused by LSU instruction",
Packit Service a1973e
		.pme_long_desc = "Completion stall caused by LSU instruction",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_DATA_FROM_L25_SHR ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_DATA_FROM_L25_SHR",
Packit Service a1973e
		.pme_code = 0x5937,
Packit Service a1973e
		.pme_short_desc = "Marked data loaded from L2.5 shared",
Packit Service a1973e
		.pme_long_desc = "DL1 was reloaded with shared (T or SL) data from the L2 of a chip on this MCM due to a marked demand load",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_FLUSH_ULD ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_FLUSH_ULD",
Packit Service a1973e
		.pme_code = 0x1800,
Packit Service a1973e
		.pme_short_desc = "LRQ unaligned load flushes",
Packit Service a1973e
		.pme_long_desc = "A load was flushed because it was unaligned (crossed a 64byte boundary, or 32 byte if it missed the L1)",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_BRU_FIN ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_BRU_FIN",
Packit Service a1973e
		.pme_code = 0x2005,
Packit Service a1973e
		.pme_short_desc = "Marked instruction BRU processing finished",
Packit Service a1973e
		.pme_long_desc = "The branch unit finished a marked instruction. Instructions that finish may not necessary complete",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_IERAT_XLATE_WR ] = {
Packit Service a1973e
		.pme_name = "PM_IERAT_XLATE_WR",
Packit Service a1973e
		.pme_code = 0x430,
Packit Service a1973e
		.pme_short_desc = "Translation written to ierat",
Packit Service a1973e
		.pme_long_desc = "This signal will be asserted each time the I-ERAT is written. This indicates that an ERAT miss has been serviced. ERAT misses will initiate a sequence resulting in the ERAT being written. ERAT misses that are later ignored will not be counted unless the ERAT is written before the instruction stream is changed, This should be a fairly accurate count of ERAT missed (best available).",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_GCT_EMPTY_BR_MPRED ] = {
Packit Service a1973e
		.pme_name = "PM_GCT_EMPTY_BR_MPRED",
Packit Service a1973e
		.pme_code = 0x708c,
Packit Service a1973e
		.pme_short_desc = "GCT empty due to branch mispredict",
Packit Service a1973e
		.pme_long_desc = "GCT empty due to branch mispredict",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU0_BUSY ] = {
Packit Service a1973e
		.pme_name = "PM_LSU0_BUSY",
Packit Service a1973e
		.pme_code = 0x823,
Packit Service a1973e
		.pme_short_desc = "LSU0 busy",
Packit Service a1973e
		.pme_long_desc = "LSU unit 0 is busy rejecting instructions",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_DATA_FROM_MEM ] = {
Packit Service a1973e
		.pme_name = "PM_DATA_FROM_MEM",
Packit Service a1973e
		.pme_code = 0x2837,
Packit Service a1973e
		.pme_short_desc = "Data loaded from memory",
Packit Service a1973e
		.pme_long_desc = "Data loaded from memory",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPR_MAP_FULL_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_FPR_MAP_FULL_CYC",
Packit Service a1973e
		.pme_code = 0x301,
Packit Service a1973e
		.pme_short_desc = "Cycles FPR mapper full",
Packit Service a1973e
		.pme_long_desc = "The ISU sends a signal indicating that the FPR mapper cannot accept any more groups. Dispatch is stopped. Note: this condition indicates that a pool of mapper is full but the entire mapper may not be.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU1_FULL_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_FPU1_FULL_CYC",
Packit Service a1973e
		.pme_code = 0x307,
Packit Service a1973e
		.pme_short_desc = "Cycles FPU1 issue queue full",
Packit Service a1973e
		.pme_long_desc = "The issue queue for FPU unit 1 cannot accept any more instructions. Issue is stopped",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU0_FIN ] = {
Packit Service a1973e
		.pme_name = "PM_FPU0_FIN",
Packit Service a1973e
		.pme_code = 0x113,
Packit Service a1973e
		.pme_short_desc = "FPU0 produced a result",
Packit Service a1973e
		.pme_long_desc = "fp0 finished, produced a result This only indicates finish, not completion. ",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_GRP_BR_REDIR ] = {
Packit Service a1973e
		.pme_name = "PM_GRP_BR_REDIR",
Packit Service a1973e
		.pme_code = 0x326,
Packit Service a1973e
		.pme_short_desc = "Group experienced branch redirect",
Packit Service a1973e
		.pme_long_desc = "Group experienced branch redirect",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_GCT_EMPTY_IC_MISS ] = {
Packit Service a1973e
		.pme_name = "PM_GCT_EMPTY_IC_MISS",
Packit Service a1973e
		.pme_code = 0x508c,
Packit Service a1973e
		.pme_short_desc = "GCT empty due to I cache miss",
Packit Service a1973e
		.pme_long_desc = "GCT empty due to I cache miss",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_THRESH_TIMEO ] = {
Packit Service a1973e
		.pme_name = "PM_THRESH_TIMEO",
Packit Service a1973e
		.pme_code = 0x2003,
Packit Service a1973e
		.pme_short_desc = "Threshold timeout",
Packit Service a1973e
		.pme_long_desc = "The threshold timer expired",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU_FSQRT ] = {
Packit Service a1973e
		.pme_name = "PM_FPU_FSQRT",
Packit Service a1973e
		.pme_code = 0x6100,
Packit Service a1973e
		.pme_short_desc = "FPU executed FSQRT instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle at the end of the microcode executed when FPU is executing a square root instruction. This could be fsqrt* where XYZ* means XYZ, XYZs, XYZ., XYZs. Combined Unit 0 + Unit 1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_LSU0_FLUSH_LRQ ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_LSU0_FLUSH_LRQ",
Packit Service a1973e
		.pme_code = 0x712,
Packit Service a1973e
		.pme_short_desc = "LSU0 marked LRQ flushes",
Packit Service a1973e
		.pme_long_desc = "A marked load was flushed by unit 0 because a younger load executed before an older store executed and they had overlapping data OR two loads executed out of order and they have byte overlap and there was a snoop in between to an overlapped byte.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_PMC1_OVERFLOW ] = {
Packit Service a1973e
		.pme_name = "PM_PMC1_OVERFLOW",
Packit Service a1973e
		.pme_code = 0x200a,
Packit Service a1973e
		.pme_short_desc = "PMC1 Overflow",
Packit Service a1973e
		.pme_long_desc = "PMC1 Overflow",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FXLS0_FULL_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_FXLS0_FULL_CYC",
Packit Service a1973e
		.pme_code = 0x310,
Packit Service a1973e
		.pme_short_desc = "Cycles FXU0/LS0 queue full",
Packit Service a1973e
		.pme_long_desc = "The issue queue for FXU/LSU unit 0 cannot accept any more instructions. Issue is stopped",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU0_ALL ] = {
Packit Service a1973e
		.pme_name = "PM_FPU0_ALL",
Packit Service a1973e
		.pme_code = 0x103,
Packit Service a1973e
		.pme_short_desc = "FPU0 executed add, mult, sub, cmp or sel instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when fp0 is executing an add, mult, sub, compare, or fsel kind of instruction. This could be fadd*, fmul*, fsub*, fcmp**, fsel where XYZ* means XYZ, XYZs, XYZ., XYZs. and XYZ** means XYZu, XYZo",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_DATA_TABLEWALK_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_DATA_TABLEWALK_CYC",
Packit Service a1973e
		.pme_code = 0x707,
Packit Service a1973e
		.pme_short_desc = "Cycles doing data tablewalks",
Packit Service a1973e
		.pme_long_desc = "This signal is asserted every cycle when a tablewalk is active. While a tablewalk is active any request attempting to access the TLB will be rejected and retried.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU0_FEST ] = {
Packit Service a1973e
		.pme_name = "PM_FPU0_FEST",
Packit Service a1973e
		.pme_code = 0x112,
Packit Service a1973e
		.pme_short_desc = "FPU0 executed FEST instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when fp0 is executing one of the estimate instructions. This could be fres* or frsqrte* where XYZ* means XYZ or XYZ. ",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_DATA_FROM_L25_MOD ] = {
Packit Service a1973e
		.pme_name = "PM_DATA_FROM_L25_MOD",
Packit Service a1973e
		.pme_code = 0x6837,
Packit Service a1973e
		.pme_short_desc = "Data loaded from L2.5 modified",
Packit Service a1973e
		.pme_long_desc = "DL1 was reloaded with modified (M) data from the L2 of a chip on this MCM due to a demand load",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU0_REJECT_ERAT_MISS ] = {
Packit Service a1973e
		.pme_name = "PM_LSU0_REJECT_ERAT_MISS",
Packit Service a1973e
		.pme_code = 0x923,
Packit Service a1973e
		.pme_short_desc = "LSU0 reject due to ERAT miss",
Packit Service a1973e
		.pme_long_desc = "LSU0 reject due to ERAT miss",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_LMQ_SRQ_EMPTY_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_LMQ_SRQ_EMPTY_CYC",
Packit Service a1973e
		.pme_code = 0x2002,
Packit Service a1973e
		.pme_short_desc = "Cycles LMQ and SRQ empty",
Packit Service a1973e
		.pme_long_desc = "Cycles when both the LMQ and SRQ are empty (LSU is idle)",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU0_REJECT_RELOAD_CDF ] = {
Packit Service a1973e
		.pme_name = "PM_LSU0_REJECT_RELOAD_CDF",
Packit Service a1973e
		.pme_code = 0x922,
Packit Service a1973e
		.pme_short_desc = "LSU0 reject due to reload CDF or tag update collision",
Packit Service a1973e
		.pme_long_desc = "LSU0 reject due to reload CDF or tag update collision",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU_FEST ] = {
Packit Service a1973e
		.pme_name = "PM_FPU_FEST",
Packit Service a1973e
		.pme_code = 0x3110,
Packit Service a1973e
		.pme_short_desc = "FPU executed FEST instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when executing one of the estimate instructions. This could be fres* or frsqrte* where XYZ* means XYZ or XYZ. Combined Unit 0 + Unit 1.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_0INST_FETCH ] = {
Packit Service a1973e
		.pme_name = "PM_0INST_FETCH",
Packit Service a1973e
		.pme_code = 0x442d,
Packit Service a1973e
		.pme_short_desc = "No instructions fetched",
Packit Service a1973e
		.pme_long_desc = "No instructions were fetched this cycles (due to IFU hold, redirect, or icache miss)",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LD_MISS_L1_LSU0 ] = {
Packit Service a1973e
		.pme_name = "PM_LD_MISS_L1_LSU0",
Packit Service a1973e
		.pme_code = 0x812,
Packit Service a1973e
		.pme_short_desc = "LSU0 L1 D cache load misses",
Packit Service a1973e
		.pme_long_desc = "A load, executing on unit 0, missed the dcache",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU1_REJECT_RELOAD_CDF ] = {
Packit Service a1973e
		.pme_name = "PM_LSU1_REJECT_RELOAD_CDF",
Packit Service a1973e
		.pme_code = 0x926,
Packit Service a1973e
		.pme_short_desc = "LSU1 reject due to reload CDF or tag update collision",
Packit Service a1973e
		.pme_long_desc = "LSU1 reject due to reload CDF or tag update collision",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_L1_PREF ] = {
Packit Service a1973e
		.pme_name = "PM_L1_PREF",
Packit Service a1973e
		.pme_code = 0x731,
Packit Service a1973e
		.pme_short_desc = "L1 cache data prefetches",
Packit Service a1973e
		.pme_long_desc = "A request to prefetch data into the L1 was made",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU1_STALL3 ] = {
Packit Service a1973e
		.pme_name = "PM_FPU1_STALL3",
Packit Service a1973e
		.pme_code = 0x125,
Packit Service a1973e
		.pme_short_desc = "FPU1 stalled in pipe3",
Packit Service a1973e
		.pme_long_desc = "This signal indicates that fp1 has generated a stall in pipe3 due to overflow, underflow, massive cancel, convert to integer (sometimes), or convert from integer (always). This signal is active during the entire duration of the stall. ",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_BRQ_FULL_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_BRQ_FULL_CYC",
Packit Service a1973e
		.pme_code = 0x305,
Packit Service a1973e
		.pme_short_desc = "Cycles branch queue full",
Packit Service a1973e
		.pme_long_desc = "The ISU sends a signal indicating that the issue queue that feeds the ifu br unit cannot accept any more group (queue is full of groups).",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_PMC8_OVERFLOW ] = {
Packit Service a1973e
		.pme_name = "PM_PMC8_OVERFLOW",
Packit Service a1973e
		.pme_code = 0x100a,
Packit Service a1973e
		.pme_short_desc = "PMC8 Overflow",
Packit Service a1973e
		.pme_long_desc = "PMC8 Overflow",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_PMC7_OVERFLOW ] = {
Packit Service a1973e
		.pme_name = "PM_PMC7_OVERFLOW",
Packit Service a1973e
		.pme_code = 0x800a,
Packit Service a1973e
		.pme_short_desc = "PMC7 Overflow",
Packit Service a1973e
		.pme_long_desc = "PMC7 Overflow",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_WORK_HELD ] = {
Packit Service a1973e
		.pme_name = "PM_WORK_HELD",
Packit Service a1973e
		.pme_code = 0x2001,
Packit Service a1973e
		.pme_short_desc = "Work held",
Packit Service a1973e
		.pme_long_desc = "RAS Unit has signaled completion to stop and there are groups waiting to complete",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_LD_MISS_L1_LSU0 ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_LD_MISS_L1_LSU0",
Packit Service a1973e
		.pme_code = 0x720,
Packit Service a1973e
		.pme_short_desc = "LSU0 L1 D cache load misses",
Packit Service a1973e
		.pme_long_desc = "A marked load, executing on unit 0, missed the dcache",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FXU_IDLE ] = {
Packit Service a1973e
		.pme_name = "PM_FXU_IDLE",
Packit Service a1973e
		.pme_code = 0x5002,
Packit Service a1973e
		.pme_short_desc = "FXU idle",
Packit Service a1973e
		.pme_long_desc = "FXU0 and FXU1 are both idle",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_INST_CMPL ] = {
Packit Service a1973e
		.pme_name = "PM_INST_CMPL",
Packit Service a1973e
		.pme_code = 0x1,
Packit Service a1973e
		.pme_short_desc = "Instructions completed",
Packit Service a1973e
		.pme_long_desc = "Number of Eligible Instructions that completed. ",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU1_FLUSH_UST ] = {
Packit Service a1973e
		.pme_name = "PM_LSU1_FLUSH_UST",
Packit Service a1973e
		.pme_code = 0x805,
Packit Service a1973e
		.pme_short_desc = "LSU1 unaligned store flushes",
Packit Service a1973e
		.pme_long_desc = "A store was flushed from unit 1 because it was unaligned (crossed a 4k boundary)",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU0_FLUSH_ULD ] = {
Packit Service a1973e
		.pme_name = "PM_LSU0_FLUSH_ULD",
Packit Service a1973e
		.pme_code = 0x800,
Packit Service a1973e
		.pme_short_desc = "LSU0 unaligned load flushes",
Packit Service a1973e
		.pme_long_desc = "A load was flushed from unit 0 because it was unaligned (crossed a 64byte boundary, or 32 byte if it missed the L1)",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_FLUSH ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_FLUSH",
Packit Service a1973e
		.pme_code = 0x315,
Packit Service a1973e
		.pme_short_desc = "Flush initiated by LSU",
Packit Service a1973e
		.pme_long_desc = "Flush initiated by LSU",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_INST_FROM_L2 ] = {
Packit Service a1973e
		.pme_name = "PM_INST_FROM_L2",
Packit Service a1973e
		.pme_code = 0x1426,
Packit Service a1973e
		.pme_short_desc = "Instructions fetched from L2",
Packit Service a1973e
		.pme_long_desc = "An instruction fetch group was fetched from L2. Fetch Groups can contain up to 8 instructions",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU1_REJECT_LMQ_FULL ] = {
Packit Service a1973e
		.pme_name = "PM_LSU1_REJECT_LMQ_FULL",
Packit Service a1973e
		.pme_code = 0x925,
Packit Service a1973e
		.pme_short_desc = "LSU1 reject due to LMQ full or missed data coming",
Packit Service a1973e
		.pme_long_desc = "LSU1 reject due to LMQ full or missed data coming",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_PMC2_OVERFLOW ] = {
Packit Service a1973e
		.pme_name = "PM_PMC2_OVERFLOW",
Packit Service a1973e
		.pme_code = 0x300a,
Packit Service a1973e
		.pme_short_desc = "PMC2 Overflow",
Packit Service a1973e
		.pme_long_desc = "PMC2 Overflow",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU0_DENORM ] = {
Packit Service a1973e
		.pme_name = "PM_FPU0_DENORM",
Packit Service a1973e
		.pme_code = 0x120,
Packit Service a1973e
		.pme_short_desc = "FPU0 received denormalized data",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when one of the operands is denormalized.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU1_FMOV_FEST ] = {
Packit Service a1973e
		.pme_name = "PM_FPU1_FMOV_FEST",
Packit Service a1973e
		.pme_code = 0x114,
Packit Service a1973e
		.pme_short_desc = "FPU1 executing FMOV or FEST instructions",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when fp1 is executing a move kind of instruction or one of the estimate instructions.. This could be fmr*, fneg*, fabs*, fnabs* , fres* or frsqrte* where XYZ* means XYZ or XYZ",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_INST_FETCH_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_INST_FETCH_CYC",
Packit Service a1973e
		.pme_code = 0x424,
Packit Service a1973e
		.pme_short_desc = "Cycles at least 1 instruction fetched",
Packit Service a1973e
		.pme_long_desc = "Asserted each cycle when the IFU sends at least one instruction to the IDU. ",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_GRP_DISP_REJECT ] = {
Packit Service a1973e
		.pme_name = "PM_GRP_DISP_REJECT",
Packit Service a1973e
		.pme_code = 0x324,
Packit Service a1973e
		.pme_short_desc = "Group dispatch rejected",
Packit Service a1973e
		.pme_long_desc = "A group that previously attempted dispatch was rejected.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_LDF ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_LDF",
Packit Service a1973e
		.pme_code = 0x8730,
Packit Service a1973e
		.pme_short_desc = "LSU executed Floating Point load instruction",
Packit Service a1973e
		.pme_long_desc = "LSU executed Floating Point load instruction",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_INST_DISP ] = {
Packit Service a1973e
		.pme_name = "PM_INST_DISP",
Packit Service a1973e
		.pme_code = 0x320,
Packit Service a1973e
		.pme_short_desc = "Instructions dispatched",
Packit Service a1973e
		.pme_long_desc = "The ISU sends the number of instructions dispatched.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_DATA_FROM_L25_SHR ] = {
Packit Service a1973e
		.pme_name = "PM_DATA_FROM_L25_SHR",
Packit Service a1973e
		.pme_code = 0x5837,
Packit Service a1973e
		.pme_short_desc = "Data loaded from L2.5 shared",
Packit Service a1973e
		.pme_long_desc = "DL1 was reloaded with shared (T or SL) data from the L2 of a chip on this MCM due to a demand load",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_L1_DCACHE_RELOAD_VALID ] = {
Packit Service a1973e
		.pme_name = "PM_L1_DCACHE_RELOAD_VALID",
Packit Service a1973e
		.pme_code = 0x834,
Packit Service a1973e
		.pme_short_desc = "L1 reload data source valid",
Packit Service a1973e
		.pme_long_desc = "The data source information is valid",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_GRP_ISSUED ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_GRP_ISSUED",
Packit Service a1973e
		.pme_code = 0x6005,
Packit Service a1973e
		.pme_short_desc = "Marked group issued",
Packit Service a1973e
		.pme_long_desc = "A sampled instruction was issued",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU_FMA ] = {
Packit Service a1973e
		.pme_name = "PM_FPU_FMA",
Packit Service a1973e
		.pme_code = 0x2100,
Packit Service a1973e
		.pme_short_desc = "FPU executed multiply-add instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when FPU is executing multiply-add kind of instruction. This could be fmadd*, fnmadd*, fmsub*, fnmsub* where XYZ* means XYZ, XYZs, XYZ., XYZs. Combined Unit 0 + Unit 1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_CRU_FIN ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_CRU_FIN",
Packit Service a1973e
		.pme_code = 0x4005,
Packit Service a1973e
		.pme_short_desc = "Marked instruction CRU processing finished",
Packit Service a1973e
		.pme_long_desc = "The Condition Register Unit finished a marked instruction. Instructions that finish may not necessary complete",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_CMPLU_STALL_REJECT ] = {
Packit Service a1973e
		.pme_name = "PM_CMPLU_STALL_REJECT",
Packit Service a1973e
		.pme_code = 0x70cb,
Packit Service a1973e
		.pme_short_desc = "Completion stall caused by reject",
Packit Service a1973e
		.pme_long_desc = "Completion stall caused by reject",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_LSU1_FLUSH_UST ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_LSU1_FLUSH_UST",
Packit Service a1973e
		.pme_code = 0x715,
Packit Service a1973e
		.pme_short_desc = "LSU1 marked unaligned store flushes",
Packit Service a1973e
		.pme_long_desc = "A marked store was flushed from unit 1 because it was unaligned (crossed a 4k boundary)",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_FXU_FIN ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_FXU_FIN",
Packit Service a1973e
		.pme_code = 0x6004,
Packit Service a1973e
		.pme_short_desc = "Marked instruction FXU processing finished",
Packit Service a1973e
		.pme_long_desc = "Marked instruction FXU processing finished",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU1_REJECT_ERAT_MISS ] = {
Packit Service a1973e
		.pme_name = "PM_LSU1_REJECT_ERAT_MISS",
Packit Service a1973e
		.pme_code = 0x927,
Packit Service a1973e
		.pme_short_desc = "LSU1 reject due to ERAT miss",
Packit Service a1973e
		.pme_long_desc = "LSU1 reject due to ERAT miss",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_BR_ISSUED ] = {
Packit Service a1973e
		.pme_name = "PM_BR_ISSUED",
Packit Service a1973e
		.pme_code = 0x431,
Packit Service a1973e
		.pme_short_desc = "Branches issued",
Packit Service a1973e
		.pme_long_desc = "This signal will be asserted each time the ISU issues a branch instruction. This signal will be asserted each time the ISU selects a branch instruction to issue.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_PMC4_OVERFLOW ] = {
Packit Service a1973e
		.pme_name = "PM_PMC4_OVERFLOW",
Packit Service a1973e
		.pme_code = 0x500a,
Packit Service a1973e
		.pme_short_desc = "PMC4 Overflow",
Packit Service a1973e
		.pme_long_desc = "PMC4 Overflow",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_EE_OFF ] = {
Packit Service a1973e
		.pme_name = "PM_EE_OFF",
Packit Service a1973e
		.pme_code = 0x333,
Packit Service a1973e
		.pme_short_desc = "Cycles MSR(EE) bit off",
Packit Service a1973e
		.pme_long_desc = "The number of Cycles MSR(EE) bit was off.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_INST_FROM_L25_MOD ] = {
Packit Service a1973e
		.pme_name = "PM_INST_FROM_L25_MOD",
Packit Service a1973e
		.pme_code = 0x6426,
Packit Service a1973e
		.pme_short_desc = "Instruction fetched from L2.5 modified",
Packit Service a1973e
		.pme_long_desc = "Instruction fetched from L2.5 modified",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_CMPLU_STALL_ERAT_MISS ] = {
Packit Service a1973e
		.pme_name = "PM_CMPLU_STALL_ERAT_MISS",
Packit Service a1973e
		.pme_code = 0x704c,
Packit Service a1973e
		.pme_short_desc = "Completion stall caused by ERAT miss",
Packit Service a1973e
		.pme_long_desc = "Completion stall caused by ERAT miss",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_ITLB_MISS ] = {
Packit Service a1973e
		.pme_name = "PM_ITLB_MISS",
Packit Service a1973e
		.pme_code = 0x700,
Packit Service a1973e
		.pme_short_desc = "Instruction TLB misses",
Packit Service a1973e
		.pme_long_desc = "A TLB miss for an Instruction Fetch has occurred",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FXU1_BUSY_FXU0_IDLE ] = {
Packit Service a1973e
		.pme_name = "PM_FXU1_BUSY_FXU0_IDLE",
Packit Service a1973e
		.pme_code = 0x4002,
Packit Service a1973e
		.pme_short_desc = "FXU1 busy FXU0 idle",
Packit Service a1973e
		.pme_long_desc = "FXU0 was idle while FXU1 was busy",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_GRP_DISP_VALID ] = {
Packit Service a1973e
		.pme_name = "PM_GRP_DISP_VALID",
Packit Service a1973e
		.pme_code = 0x323,
Packit Service a1973e
		.pme_short_desc = "Group dispatch valid",
Packit Service a1973e
		.pme_long_desc = "Dispatch has been attempted for a valid group.  Some groups may be rejected.  The total number of successful dispatches is the number of dispatch valid minus dispatch reject.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_GRP_DISP ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_GRP_DISP",
Packit Service a1973e
		.pme_code = 0x1002,
Packit Service a1973e
		.pme_short_desc = "Marked group dispatched",
Packit Service a1973e
		.pme_long_desc = "A group containing a sampled instruction was dispatched",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_FLUSH_UST ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_FLUSH_UST",
Packit Service a1973e
		.pme_code = 0x2800,
Packit Service a1973e
		.pme_short_desc = "SRQ unaligned store flushes",
Packit Service a1973e
		.pme_long_desc = "A store was flushed because it was unaligned",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FXU1_FIN ] = {
Packit Service a1973e
		.pme_name = "PM_FXU1_FIN",
Packit Service a1973e
		.pme_code = 0x336,
Packit Service a1973e
		.pme_short_desc = "FXU1 produced a result",
Packit Service a1973e
		.pme_long_desc = "The Fixed Point unit 1 finished an instruction and produced a result",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_GRP_CMPL ] = {
Packit Service a1973e
		.pme_name = "PM_GRP_CMPL",
Packit Service a1973e
		.pme_code = 0x7003,
Packit Service a1973e
		.pme_short_desc = "Group completed",
Packit Service a1973e
		.pme_long_desc = "A group completed. Microcoded instructions that span multiple groups will generate this event once per group.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU_FRSP_FCONV ] = {
Packit Service a1973e
		.pme_name = "PM_FPU_FRSP_FCONV",
Packit Service a1973e
		.pme_code = 0x7110,
Packit Service a1973e
		.pme_short_desc = "FPU executed FRSP or FCONV instructions",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when executing frsp or convert kind of instruction. This could be frsp*, fcfid*, fcti* where XYZ* means XYZ, XYZs, XYZ., XYZs. Combined Unit 0 + Unit 1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_LSU0_FLUSH_SRQ ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_LSU0_FLUSH_SRQ",
Packit Service a1973e
		.pme_code = 0x713,
Packit Service a1973e
		.pme_short_desc = "LSU0 marked SRQ flushes",
Packit Service a1973e
		.pme_long_desc = "A marked store was flushed because younger load hits and older store that is already in the SRQ or in the same group.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_CMPLU_STALL_OTHER ] = {
Packit Service a1973e
		.pme_name = "PM_CMPLU_STALL_OTHER",
Packit Service a1973e
		.pme_code = 0x100b,
Packit Service a1973e
		.pme_short_desc = "Completion stall caused by other reason",
Packit Service a1973e
		.pme_long_desc = "Completion stall caused by other reason",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_LMQ_FULL_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_LMQ_FULL_CYC",
Packit Service a1973e
		.pme_code = 0x837,
Packit Service a1973e
		.pme_short_desc = "Cycles LMQ full",
Packit Service a1973e
		.pme_long_desc = "The LMQ was full",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_ST_REF_L1_LSU0 ] = {
Packit Service a1973e
		.pme_name = "PM_ST_REF_L1_LSU0",
Packit Service a1973e
		.pme_code = 0x811,
Packit Service a1973e
		.pme_short_desc = "LSU0 L1 D cache store references",
Packit Service a1973e
		.pme_long_desc = "A store executed on unit 0",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU0_DERAT_MISS ] = {
Packit Service a1973e
		.pme_name = "PM_LSU0_DERAT_MISS",
Packit Service a1973e
		.pme_code = 0x702,
Packit Service a1973e
		.pme_short_desc = "LSU0 DERAT misses",
Packit Service a1973e
		.pme_long_desc = "A data request (load or store) from LSU Unit 0 missed the ERAT and resulted in an ERAT reload. Multiple instructions may miss the ERAT entry for the same 4K page, but only one reload will occur.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_SRQ_SYNC_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_SRQ_SYNC_CYC",
Packit Service a1973e
		.pme_code = 0x735,
Packit Service a1973e
		.pme_short_desc = "SRQ sync duration",
Packit Service a1973e
		.pme_long_desc = "This signal is asserted every cycle when a sync is in the SRQ.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU_STALL3 ] = {
Packit Service a1973e
		.pme_name = "PM_FPU_STALL3",
Packit Service a1973e
		.pme_code = 0x2120,
Packit Service a1973e
		.pme_short_desc = "FPU stalled in pipe3",
Packit Service a1973e
		.pme_long_desc = "FPU has generated a stall in pipe3 due to overflow, underflow, massive cancel, convert to integer (sometimes), or convert from integer (always). This signal is active during the entire duration of the stall. Combined Unit 0 + Unit 1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_REJECT_ERAT_MISS ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_REJECT_ERAT_MISS",
Packit Service a1973e
		.pme_code = 0x5920,
Packit Service a1973e
		.pme_short_desc = "LSU reject due to ERAT miss",
Packit Service a1973e
		.pme_long_desc = "LSU reject due to ERAT miss",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_DATA_FROM_L2 ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_DATA_FROM_L2",
Packit Service a1973e
		.pme_code = 0x1937,
Packit Service a1973e
		.pme_short_desc = "Marked data loaded from L2",
Packit Service a1973e
		.pme_long_desc = "DL1 was reloaded from the local L2 due to a marked demand load",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU0_FLUSH_SRQ ] = {
Packit Service a1973e
		.pme_name = "PM_LSU0_FLUSH_SRQ",
Packit Service a1973e
		.pme_code = 0x803,
Packit Service a1973e
		.pme_short_desc = "LSU0 SRQ flushes",
Packit Service a1973e
		.pme_long_desc = "A store was flushed because younger load hits and older store that is already in the SRQ or in the same group.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU0_FMOV_FEST ] = {
Packit Service a1973e
		.pme_name = "PM_FPU0_FMOV_FEST",
Packit Service a1973e
		.pme_code = 0x110,
Packit Service a1973e
		.pme_short_desc = "FPU0 executed FMOV or FEST instructions",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when fp0 is executing a move kind of instruction or one of the estimate instructions.. This could be fmr*, fneg*, fabs*, fnabs* , fres* or frsqrte* where XYZ* means XYZ or XYZ",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_IOPS_CMPL ] = {
Packit Service a1973e
		.pme_name = "PM_IOPS_CMPL",
Packit Service a1973e
		.pme_code = 0x1001,
Packit Service a1973e
		.pme_short_desc = "IOPS instructions completed",
Packit Service a1973e
		.pme_long_desc = "Number of IOPS Instructions that completed.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LD_REF_L1_LSU0 ] = {
Packit Service a1973e
		.pme_name = "PM_LD_REF_L1_LSU0",
Packit Service a1973e
		.pme_code = 0x810,
Packit Service a1973e
		.pme_short_desc = "LSU0 L1 D cache load references",
Packit Service a1973e
		.pme_long_desc = "A load executed on unit 0",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU1_FLUSH_SRQ ] = {
Packit Service a1973e
		.pme_name = "PM_LSU1_FLUSH_SRQ",
Packit Service a1973e
		.pme_code = 0x807,
Packit Service a1973e
		.pme_short_desc = "LSU1 SRQ flushes",
Packit Service a1973e
		.pme_long_desc = "A store was flushed because younger load hits and older store that is already in the SRQ or in the same group. ",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_CMPLU_STALL_DIV ] = {
Packit Service a1973e
		.pme_name = "PM_CMPLU_STALL_DIV",
Packit Service a1973e
		.pme_code = 0x708b,
Packit Service a1973e
		.pme_short_desc = "Completion stall caused by DIV instruction",
Packit Service a1973e
		.pme_long_desc = "Completion stall caused by DIV instruction",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_GRP_BR_MPRED ] = {
Packit Service a1973e
		.pme_name = "PM_GRP_BR_MPRED",
Packit Service a1973e
		.pme_code = 0x327,
Packit Service a1973e
		.pme_short_desc = "Group experienced a branch mispredict",
Packit Service a1973e
		.pme_long_desc = "Group experienced a branch mispredict",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_LMQ_S0_ALLOC ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_LMQ_S0_ALLOC",
Packit Service a1973e
		.pme_code = 0x836,
Packit Service a1973e
		.pme_short_desc = "LMQ slot 0 allocated",
Packit Service a1973e
		.pme_long_desc = "The first entry in the LMQ was allocated.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU0_REJECT_LMQ_FULL ] = {
Packit Service a1973e
		.pme_name = "PM_LSU0_REJECT_LMQ_FULL",
Packit Service a1973e
		.pme_code = 0x921,
Packit Service a1973e
		.pme_short_desc = "LSU0 reject due to LMQ full or missed data coming",
Packit Service a1973e
		.pme_long_desc = "LSU0 reject due to LMQ full or missed data coming",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_ST_REF_L1 ] = {
Packit Service a1973e
		.pme_name = "PM_ST_REF_L1",
Packit Service a1973e
		.pme_code = 0x7810,
Packit Service a1973e
		.pme_short_desc = "L1 D cache store references",
Packit Service a1973e
		.pme_long_desc = "Total DL1 Store references",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_VMX_FIN ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_VMX_FIN",
Packit Service a1973e
		.pme_code = 0x3005,
Packit Service a1973e
		.pme_short_desc = "Marked instruction VMX processing finished",
Packit Service a1973e
		.pme_long_desc = "Marked instruction VMX processing finished",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_SRQ_EMPTY_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_SRQ_EMPTY_CYC",
Packit Service a1973e
		.pme_code = 0x4003,
Packit Service a1973e
		.pme_short_desc = "Cycles SRQ empty",
Packit Service a1973e
		.pme_long_desc = "The Store Request Queue is empty",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU1_STF ] = {
Packit Service a1973e
		.pme_name = "PM_FPU1_STF",
Packit Service a1973e
		.pme_code = 0x126,
Packit Service a1973e
		.pme_short_desc = "FPU1 executed store instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when fp1 is executing a store instruction.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_RUN_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_RUN_CYC",
Packit Service a1973e
		.pme_code = 0x1005,
Packit Service a1973e
		.pme_short_desc = "Run cycles",
Packit Service a1973e
		.pme_long_desc = "Processor Cycles gated by the run latch",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_LMQ_S0_VALID ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_LMQ_S0_VALID",
Packit Service a1973e
		.pme_code = 0x835,
Packit Service a1973e
		.pme_short_desc = "LMQ slot 0 valid",
Packit Service a1973e
		.pme_long_desc = "This signal is asserted every cycle when the first entry in the LMQ is valid. The LMQ had eight entries that are allocated FIFO",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU0_LDF ] = {
Packit Service a1973e
		.pme_name = "PM_LSU0_LDF",
Packit Service a1973e
		.pme_code = 0x730,
Packit Service a1973e
		.pme_short_desc = "LSU0 executed Floating Point load instruction",
Packit Service a1973e
		.pme_long_desc = "A floating point load was executed from LSU unit 0",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_LRQ_S0_VALID ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_LRQ_S0_VALID",
Packit Service a1973e
		.pme_code = 0x822,
Packit Service a1973e
		.pme_short_desc = "LRQ slot 0 valid",
Packit Service a1973e
		.pme_long_desc = "This signal is asserted every cycle that the Load Request Queue slot zero is valid. The SRQ is 32 entries long and is allocated round-robin.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_PMC3_OVERFLOW ] = {
Packit Service a1973e
		.pme_name = "PM_PMC3_OVERFLOW",
Packit Service a1973e
		.pme_code = 0x400a,
Packit Service a1973e
		.pme_short_desc = "PMC3 Overflow",
Packit Service a1973e
		.pme_long_desc = "PMC3 Overflow",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_IMR_RELOAD ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_IMR_RELOAD",
Packit Service a1973e
		.pme_code = 0x722,
Packit Service a1973e
		.pme_short_desc = "Marked IMR reloaded",
Packit Service a1973e
		.pme_long_desc = "A DL1 reload occurred due to marked load",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_GRP_TIMEO ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_GRP_TIMEO",
Packit Service a1973e
		.pme_code = 0x5005,
Packit Service a1973e
		.pme_short_desc = "Marked group completion timeout",
Packit Service a1973e
		.pme_long_desc = "The sampling timeout expired indicating that the previously sampled instruction is no longer in the processor",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU_FMOV_FEST ] = {
Packit Service a1973e
		.pme_name = "PM_FPU_FMOV_FEST",
Packit Service a1973e
		.pme_code = 0x8110,
Packit Service a1973e
		.pme_short_desc = "FPU executing FMOV or FEST instructions",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when executing a move kind of instruction or one of the estimate instructions.. This could be fmr*, fneg*, fabs*, fnabs* , fres* or frsqrte* where XYZ* means XYZ or XYZ . Combined Unit 0 + Unit 1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_GRP_DISP_BLK_SB_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_GRP_DISP_BLK_SB_CYC",
Packit Service a1973e
		.pme_code = 0x331,
Packit Service a1973e
		.pme_short_desc = "Cycles group dispatch blocked by scoreboard",
Packit Service a1973e
		.pme_long_desc = "The ISU sends a signal indicating that dispatch is blocked by scoreboard.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_XER_MAP_FULL_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_XER_MAP_FULL_CYC",
Packit Service a1973e
		.pme_code = 0x302,
Packit Service a1973e
		.pme_short_desc = "Cycles XER mapper full",
Packit Service a1973e
		.pme_long_desc = "The ISU sends a signal indicating that the xer mapper cannot accept any more groups. Dispatch is stopped. Note: this condition indicates that a pool of mapper is full but the entire mapper may not be.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_ST_MISS_L1 ] = {
Packit Service a1973e
		.pme_name = "PM_ST_MISS_L1",
Packit Service a1973e
		.pme_code = 0x813,
Packit Service a1973e
		.pme_short_desc = "L1 D cache store misses",
Packit Service a1973e
		.pme_long_desc = "A store missed the dcache",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_STOP_COMPLETION ] = {
Packit Service a1973e
		.pme_name = "PM_STOP_COMPLETION",
Packit Service a1973e
		.pme_code = 0x3001,
Packit Service a1973e
		.pme_short_desc = "Completion stopped",
Packit Service a1973e
		.pme_long_desc = "RAS Unit has signaled completion to stop",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_GRP_CMPL ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_GRP_CMPL",
Packit Service a1973e
		.pme_code = 0x4004,
Packit Service a1973e
		.pme_short_desc = "Marked group completed",
Packit Service a1973e
		.pme_long_desc = "A group containing a sampled instruction completed. Microcoded instructions that span multiple groups will generate this event once per group.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_ISLB_MISS ] = {
Packit Service a1973e
		.pme_name = "PM_ISLB_MISS",
Packit Service a1973e
		.pme_code = 0x701,
Packit Service a1973e
		.pme_short_desc = "Instruction SLB misses",
Packit Service a1973e
		.pme_long_desc = "A SLB miss for an instruction fetch as occurred",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_SUSPENDED ] = {
Packit Service a1973e
		.pme_name = "PM_SUSPENDED",
Packit Service a1973e
		.pme_code = 0x0,
Packit Service a1973e
		.pme_short_desc = "Suspended",
Packit Service a1973e
		.pme_long_desc = "Suspended",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_CYC",
Packit Service a1973e
		.pme_code = 0x7,
Packit Service a1973e
		.pme_short_desc = "Processor cycles",
Packit Service a1973e
		.pme_long_desc = "Processor cycles",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LD_MISS_L1_LSU1 ] = {
Packit Service a1973e
		.pme_name = "PM_LD_MISS_L1_LSU1",
Packit Service a1973e
		.pme_code = 0x816,
Packit Service a1973e
		.pme_short_desc = "LSU1 L1 D cache load misses",
Packit Service a1973e
		.pme_long_desc = "A load, executing on unit 1, missed the dcache",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_STCX_FAIL ] = {
Packit Service a1973e
		.pme_name = "PM_STCX_FAIL",
Packit Service a1973e
		.pme_code = 0x721,
Packit Service a1973e
		.pme_short_desc = "STCX failed",
Packit Service a1973e
		.pme_long_desc = "A stcx (stwcx or stdcx) failed",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU1_SRQ_STFWD ] = {
Packit Service a1973e
		.pme_name = "PM_LSU1_SRQ_STFWD",
Packit Service a1973e
		.pme_code = 0x824,
Packit Service a1973e
		.pme_short_desc = "LSU1 SRQ store forwarded",
Packit Service a1973e
		.pme_long_desc = "Data from a store instruction was forwarded to a load on unit 1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_GRP_DISP ] = {
Packit Service a1973e
		.pme_name = "PM_GRP_DISP",
Packit Service a1973e
		.pme_code = 0x2004,
Packit Service a1973e
		.pme_short_desc = "Group dispatches",
Packit Service a1973e
		.pme_long_desc = "A group was dispatched",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_L2_PREF ] = {
Packit Service a1973e
		.pme_name = "PM_L2_PREF",
Packit Service a1973e
		.pme_code = 0x733,
Packit Service a1973e
		.pme_short_desc = "L2 cache prefetches",
Packit Service a1973e
		.pme_long_desc = "A request to prefetch data into L2 was made",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU1_DENORM ] = {
Packit Service a1973e
		.pme_name = "PM_FPU1_DENORM",
Packit Service a1973e
		.pme_code = 0x124,
Packit Service a1973e
		.pme_short_desc = "FPU1 received denormalized data",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when one of the operands is denormalized.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_DATA_FROM_L2 ] = {
Packit Service a1973e
		.pme_name = "PM_DATA_FROM_L2",
Packit Service a1973e
		.pme_code = 0x1837,
Packit Service a1973e
		.pme_short_desc = "Data loaded from L2",
Packit Service a1973e
		.pme_long_desc = "DL1 was reloaded from the local L2 due to a demand load",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU0_FPSCR ] = {
Packit Service a1973e
		.pme_name = "PM_FPU0_FPSCR",
Packit Service a1973e
		.pme_code = 0x130,
Packit Service a1973e
		.pme_short_desc = "FPU0 executed FPSCR instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when fp0 is executing fpscr move related instruction. This could be mtfsfi*, mtfsb0*, mtfsb1*. mffs*, mtfsf*, mcrsf* where XYZ* means XYZ, XYZs, XYZ., XYZs",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_DATA_FROM_L25_MOD ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_DATA_FROM_L25_MOD",
Packit Service a1973e
		.pme_code = 0x6937,
Packit Service a1973e
		.pme_short_desc = "Marked data loaded from L2.5 modified",
Packit Service a1973e
		.pme_long_desc = "DL1 was reloaded with modified (M) data from the L2 of a chip on this MCM due to a marked demand load",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU0_FSQRT ] = {
Packit Service a1973e
		.pme_name = "PM_FPU0_FSQRT",
Packit Service a1973e
		.pme_code = 0x102,
Packit Service a1973e
		.pme_short_desc = "FPU0 executed FSQRT instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle at the end of the microcode executed when fp0 is executing a square root instruction. This could be fsqrt* where XYZ* means XYZ, XYZs, XYZ., XYZs.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LD_REF_L1 ] = {
Packit Service a1973e
		.pme_name = "PM_LD_REF_L1",
Packit Service a1973e
		.pme_code = 0x8810,
Packit Service a1973e
		.pme_short_desc = "L1 D cache load references",
Packit Service a1973e
		.pme_long_desc = "Total DL1 Load references",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_L1_RELOAD_VALID ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_L1_RELOAD_VALID",
Packit Service a1973e
		.pme_code = 0x934,
Packit Service a1973e
		.pme_short_desc = "Marked L1 reload data source valid",
Packit Service a1973e
		.pme_long_desc = "The source information is valid and is for a marked load",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_1PLUS_PPC_CMPL ] = {
Packit Service a1973e
		.pme_name = "PM_1PLUS_PPC_CMPL",
Packit Service a1973e
		.pme_code = 0x5003,
Packit Service a1973e
		.pme_short_desc = "One or more PPC instruction completed",
Packit Service a1973e
		.pme_long_desc = "A group containing at least one PPC instruction completed. For microcoded instructions that span multiple groups, this will only occur once.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_INST_FROM_L1 ] = {
Packit Service a1973e
		.pme_name = "PM_INST_FROM_L1",
Packit Service a1973e
		.pme_code = 0x142d,
Packit Service a1973e
		.pme_short_desc = "Instruction fetched from L1",
Packit Service a1973e
		.pme_long_desc = "An instruction fetch group was fetched from L1. Fetch Groups can contain up to 8 instructions",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_EE_OFF_EXT_INT ] = {
Packit Service a1973e
		.pme_name = "PM_EE_OFF_EXT_INT",
Packit Service a1973e
		.pme_code = 0x337,
Packit Service a1973e
		.pme_short_desc = "Cycles MSR(EE) bit off and external interrupt pending",
Packit Service a1973e
		.pme_long_desc = "Cycles MSR(EE) bit off and external interrupt pending",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_PMC6_OVERFLOW ] = {
Packit Service a1973e
		.pme_name = "PM_PMC6_OVERFLOW",
Packit Service a1973e
		.pme_code = 0x700a,
Packit Service a1973e
		.pme_short_desc = "PMC6 Overflow",
Packit Service a1973e
		.pme_long_desc = "PMC6 Overflow",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_LRQ_FULL_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_LRQ_FULL_CYC",
Packit Service a1973e
		.pme_code = 0x312,
Packit Service a1973e
		.pme_short_desc = "Cycles LRQ full",
Packit Service a1973e
		.pme_long_desc = "The ISU sends this signal when the LRQ is full.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_IC_PREF_INSTALL ] = {
Packit Service a1973e
		.pme_name = "PM_IC_PREF_INSTALL",
Packit Service a1973e
		.pme_code = 0x427,
Packit Service a1973e
		.pme_short_desc = "Instruction prefetched installed in prefetch",
Packit Service a1973e
		.pme_long_desc = "New line coming into the prefetch buffer",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_DC_PREF_OUT_OF_STREAMS ] = {
Packit Service a1973e
		.pme_name = "PM_DC_PREF_OUT_OF_STREAMS",
Packit Service a1973e
		.pme_code = 0x732,
Packit Service a1973e
		.pme_short_desc = "D cache out of streams",
Packit Service a1973e
		.pme_long_desc = "out of streams",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_LSU1_FLUSH_SRQ ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_LSU1_FLUSH_SRQ",
Packit Service a1973e
		.pme_code = 0x717,
Packit Service a1973e
		.pme_short_desc = "LSU1 marked SRQ flushes",
Packit Service a1973e
		.pme_long_desc = "A marked store was flushed because younger load hits and older store that is already in the SRQ or in the same group.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_GCT_FULL_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_GCT_FULL_CYC",
Packit Service a1973e
		.pme_code = 0x300,
Packit Service a1973e
		.pme_short_desc = "Cycles GCT full",
Packit Service a1973e
		.pme_long_desc = "The ISU sends a signal indicating the gct is full. ",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_INST_FROM_MEM ] = {
Packit Service a1973e
		.pme_name = "PM_INST_FROM_MEM",
Packit Service a1973e
		.pme_code = 0x2426,
Packit Service a1973e
		.pme_short_desc = "Instruction fetched from memory",
Packit Service a1973e
		.pme_long_desc = "Instruction fetched from memory",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FLUSH_LSU_BR_MPRED ] = {
Packit Service a1973e
		.pme_name = "PM_FLUSH_LSU_BR_MPRED",
Packit Service a1973e
		.pme_code = 0x317,
Packit Service a1973e
		.pme_short_desc = "Flush caused by LSU or branch mispredict",
Packit Service a1973e
		.pme_long_desc = "Flush caused by LSU or branch mispredict",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FXU_BUSY ] = {
Packit Service a1973e
		.pme_name = "PM_FXU_BUSY",
Packit Service a1973e
		.pme_code = 0x6002,
Packit Service a1973e
		.pme_short_desc = "FXU busy",
Packit Service a1973e
		.pme_long_desc = "FXU0 and FXU1 are both busy",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_ST_REF_L1_LSU1 ] = {
Packit Service a1973e
		.pme_name = "PM_ST_REF_L1_LSU1",
Packit Service a1973e
		.pme_code = 0x815,
Packit Service a1973e
		.pme_short_desc = "LSU1 L1 D cache store references",
Packit Service a1973e
		.pme_long_desc = "A store executed on unit 1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_LD_MISS_L1 ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_LD_MISS_L1",
Packit Service a1973e
		.pme_code = 0x1720,
Packit Service a1973e
		.pme_short_desc = "Marked L1 D cache load misses",
Packit Service a1973e
		.pme_long_desc = "Marked L1 D cache load misses",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_L1_WRITE_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_L1_WRITE_CYC",
Packit Service a1973e
		.pme_code = 0x434,
Packit Service a1973e
		.pme_short_desc = "Cycles writing to instruction L1",
Packit Service a1973e
		.pme_long_desc = "This signal is asserted each cycle a cache write is active.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU1_BUSY ] = {
Packit Service a1973e
		.pme_name = "PM_LSU1_BUSY",
Packit Service a1973e
		.pme_code = 0x827,
Packit Service a1973e
		.pme_short_desc = "LSU1 busy",
Packit Service a1973e
		.pme_long_desc = "LSU unit 0 is busy rejecting instructions ",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_REJECT_LMQ_FULL ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_REJECT_LMQ_FULL",
Packit Service a1973e
		.pme_code = 0x2920,
Packit Service a1973e
		.pme_short_desc = "LSU reject due to LMQ full or missed data coming",
Packit Service a1973e
		.pme_long_desc = "LSU reject due to LMQ full or missed data coming",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_CMPLU_STALL_FDIV ] = {
Packit Service a1973e
		.pme_name = "PM_CMPLU_STALL_FDIV",
Packit Service a1973e
		.pme_code = 0x504c,
Packit Service a1973e
		.pme_short_desc = "Completion stall caused by FDIV or FQRT instruction",
Packit Service a1973e
		.pme_long_desc = "Completion stall caused by FDIV or FQRT instruction",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU_ALL ] = {
Packit Service a1973e
		.pme_name = "PM_FPU_ALL",
Packit Service a1973e
		.pme_code = 0x5100,
Packit Service a1973e
		.pme_short_desc = "FPU executed add, mult, sub, cmp or sel instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when FPU is executing an add, mult, sub, compare, or fsel kind of instruction. This could be fadd*, fmul*, fsub*, fcmp**, fsel where XYZ* means XYZ, XYZs, XYZ., XYZs. and XYZ** means XYZu, XYZo. Combined Unit 0 + Unit 1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_SRQ_S0_ALLOC ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_SRQ_S0_ALLOC",
Packit Service a1973e
		.pme_code = 0x825,
Packit Service a1973e
		.pme_short_desc = "SRQ slot 0 allocated",
Packit Service a1973e
		.pme_long_desc = "SRQ Slot zero was allocated",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_INST_FROM_L25_SHR ] = {
Packit Service a1973e
		.pme_name = "PM_INST_FROM_L25_SHR",
Packit Service a1973e
		.pme_code = 0x5426,
Packit Service a1973e
		.pme_short_desc = "Instruction fetched from L2.5 shared",
Packit Service a1973e
		.pme_long_desc = "Instruction fetched from L2.5 shared",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_GRP_MRK ] = {
Packit Service a1973e
		.pme_name = "PM_GRP_MRK",
Packit Service a1973e
		.pme_code = 0x5004,
Packit Service a1973e
		.pme_short_desc = "Group marked in IDU",
Packit Service a1973e
		.pme_long_desc = "A group was sampled (marked)",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_BR_MPRED_CR ] = {
Packit Service a1973e
		.pme_name = "PM_BR_MPRED_CR",
Packit Service a1973e
		.pme_code = 0x432,
Packit Service a1973e
		.pme_short_desc = "Branch mispredictions due to CR bit setting",
Packit Service a1973e
		.pme_long_desc = "This signal is asserted when the branch execution unit detects a branch mispredict because the CR value is opposite of the predicted value. This signal is asserted after a branch issue event and will result in a branch redirect flush if not overridden by a flush of an older instruction.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_DC_PREF_STREAM_ALLOC ] = {
Packit Service a1973e
		.pme_name = "PM_DC_PREF_STREAM_ALLOC",
Packit Service a1973e
		.pme_code = 0x737,
Packit Service a1973e
		.pme_short_desc = "D cache new prefetch stream allocated",
Packit Service a1973e
		.pme_long_desc = "A new Prefetch Stream was allocated",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU1_FIN ] = {
Packit Service a1973e
		.pme_name = "PM_FPU1_FIN",
Packit Service a1973e
		.pme_code = 0x117,
Packit Service a1973e
		.pme_short_desc = "FPU1 produced a result",
Packit Service a1973e
		.pme_long_desc = "fp1 finished, produced a result. This only indicates finish, not completion. ",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_REJECT_SRQ ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_REJECT_SRQ",
Packit Service a1973e
		.pme_code = 0x1920,
Packit Service a1973e
		.pme_short_desc = "LSU SRQ rejects",
Packit Service a1973e
		.pme_long_desc = "LSU SRQ rejects",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_BR_MPRED_TA ] = {
Packit Service a1973e
		.pme_name = "PM_BR_MPRED_TA",
Packit Service a1973e
		.pme_code = 0x433,
Packit Service a1973e
		.pme_short_desc = "Branch mispredictions due to target address",
Packit Service a1973e
		.pme_long_desc = "branch miss predict due to a target address prediction. This signal will be asserted each time the branch execution unit detects an incorrect target address prediction. This signal will be asserted after a valid branch execution unit issue and will cause a branch mispredict flush unless a flush is detected from an older instruction.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_CRQ_FULL_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_CRQ_FULL_CYC",
Packit Service a1973e
		.pme_code = 0x311,
Packit Service a1973e
		.pme_short_desc = "Cycles CR issue queue full",
Packit Service a1973e
		.pme_long_desc = "The ISU sends a signal indicating that the issue queue that feeds the ifu cr unit cannot accept any more group (queue is full of groups).",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LD_MISS_L1 ] = {
Packit Service a1973e
		.pme_name = "PM_LD_MISS_L1",
Packit Service a1973e
		.pme_code = 0x3810,
Packit Service a1973e
		.pme_short_desc = "L1 D cache load misses",
Packit Service a1973e
		.pme_long_desc = "Total DL1 Load references that miss the DL1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_INST_FROM_PREF ] = {
Packit Service a1973e
		.pme_name = "PM_INST_FROM_PREF",
Packit Service a1973e
		.pme_code = 0x342d,
Packit Service a1973e
		.pme_short_desc = "Instructions fetched from prefetch",
Packit Service a1973e
		.pme_long_desc = "An instruction fetch group was fetched from the prefetch buffer. Fetch Groups can contain up to 8 instructions",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_STCX_PASS ] = {
Packit Service a1973e
		.pme_name = "PM_STCX_PASS",
Packit Service a1973e
		.pme_code = 0x725,
Packit Service a1973e
		.pme_short_desc = "Stcx passes",
Packit Service a1973e
		.pme_long_desc = "A stcx (stwcx or stdcx) instruction was successful",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_DC_INV_L2 ] = {
Packit Service a1973e
		.pme_name = "PM_DC_INV_L2",
Packit Service a1973e
		.pme_code = 0x817,
Packit Service a1973e
		.pme_short_desc = "L1 D cache entries invalidated from L2",
Packit Service a1973e
		.pme_long_desc = "A dcache invalidated was received from the L2 because a line in L2 was castout.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_SRQ_FULL_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_SRQ_FULL_CYC",
Packit Service a1973e
		.pme_code = 0x313,
Packit Service a1973e
		.pme_short_desc = "Cycles SRQ full",
Packit Service a1973e
		.pme_long_desc = "The ISU sends this signal when the srq is full.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU0_FLUSH_LRQ ] = {
Packit Service a1973e
		.pme_name = "PM_LSU0_FLUSH_LRQ",
Packit Service a1973e
		.pme_code = 0x802,
Packit Service a1973e
		.pme_short_desc = "LSU0 LRQ flushes",
Packit Service a1973e
		.pme_long_desc = "A load was flushed by unit 1 because a younger load executed before an older store executed and they had overlapping data OR two loads executed out of order and they have byte overlap and there was a snoop in between to an overlapped byte.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_SRQ_S0_VALID ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_SRQ_S0_VALID",
Packit Service a1973e
		.pme_code = 0x821,
Packit Service a1973e
		.pme_short_desc = "SRQ slot 0 valid",
Packit Service a1973e
		.pme_long_desc = "This signal is asserted every cycle that the Store Request Queue slot zero is valid. The SRQ is 32 entries long and is allocated round-robin.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LARX_LSU0 ] = {
Packit Service a1973e
		.pme_name = "PM_LARX_LSU0",
Packit Service a1973e
		.pme_code = 0x727,
Packit Service a1973e
		.pme_short_desc = "Larx executed on LSU0",
Packit Service a1973e
		.pme_long_desc = "A larx (lwarx or ldarx) was executed on side 0 (there is no coresponding unit 1 event since larx instructions can only execute on unit 0)",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_GCT_EMPTY_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_GCT_EMPTY_CYC",
Packit Service a1973e
		.pme_code = 0x1004,
Packit Service a1973e
		.pme_short_desc = "Cycles GCT empty",
Packit Service a1973e
		.pme_long_desc = "The Global Completion Table is completely empty",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU1_ALL ] = {
Packit Service a1973e
		.pme_name = "PM_FPU1_ALL",
Packit Service a1973e
		.pme_code = 0x107,
Packit Service a1973e
		.pme_short_desc = "FPU1 executed add, mult, sub, cmp or sel instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when fp1 is executing an add, mult, sub, compare, or fsel kind of instruction. This could be fadd*, fmul*, fsub*, fcmp**, fsel where XYZ* means XYZ, XYZs, XYZ., XYZs. and XYZ** means XYZu, XYZo",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU1_FSQRT ] = {
Packit Service a1973e
		.pme_name = "PM_FPU1_FSQRT",
Packit Service a1973e
		.pme_code = 0x106,
Packit Service a1973e
		.pme_short_desc = "FPU1 executed FSQRT instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle at the end of the microcode executed when fp1 is executing a square root instruction. This could be fsqrt* where XYZ* means XYZ, XYZs, XYZ., XYZs.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU_FIN ] = {
Packit Service a1973e
		.pme_name = "PM_FPU_FIN",
Packit Service a1973e
		.pme_code = 0x4110,
Packit Service a1973e
		.pme_short_desc = "FPU produced a result",
Packit Service a1973e
		.pme_long_desc = "FPU finished, produced a result This only indicates finish, not completion. Combined Unit 0 + Unit 1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_SRQ_STFWD ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_SRQ_STFWD",
Packit Service a1973e
		.pme_code = 0x1820,
Packit Service a1973e
		.pme_short_desc = "SRQ store forwarded",
Packit Service a1973e
		.pme_long_desc = "Data from a store instruction was forwarded to a load",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_LD_MISS_L1_LSU1 ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_LD_MISS_L1_LSU1",
Packit Service a1973e
		.pme_code = 0x724,
Packit Service a1973e
		.pme_short_desc = "LSU1 L1 D cache load misses",
Packit Service a1973e
		.pme_long_desc = "A marked load, executing on unit 1, missed the dcache",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FXU0_FIN ] = {
Packit Service a1973e
		.pme_name = "PM_FXU0_FIN",
Packit Service a1973e
		.pme_code = 0x332,
Packit Service a1973e
		.pme_short_desc = "FXU0 produced a result",
Packit Service a1973e
		.pme_long_desc = "The Fixed Point unit 0 finished an instruction and produced a result",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_FPU_FIN ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_FPU_FIN",
Packit Service a1973e
		.pme_code = 0x7004,
Packit Service a1973e
		.pme_short_desc = "Marked instruction FPU processing finished",
Packit Service a1973e
		.pme_long_desc = "One of the Floating Point Units finished a marked instruction. Instructions that finish may not necessary complete",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_PMC5_OVERFLOW ] = {
Packit Service a1973e
		.pme_name = "PM_PMC5_OVERFLOW",
Packit Service a1973e
		.pme_code = 0x600a,
Packit Service a1973e
		.pme_short_desc = "PMC5 Overflow",
Packit Service a1973e
		.pme_long_desc = "PMC5 Overflow",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_SNOOP_TLBIE ] = {
Packit Service a1973e
		.pme_name = "PM_SNOOP_TLBIE",
Packit Service a1973e
		.pme_code = 0x703,
Packit Service a1973e
		.pme_short_desc = "Snoop TLBIE",
Packit Service a1973e
		.pme_long_desc = "A TLB miss for a data request occurred. Requests that miss the TLB may be retried until the instruction is in the next to complete group (unless HID4 is set to allow speculative tablewalks). This may result in multiple TLB misses for the same instruction.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU1_FRSP_FCONV ] = {
Packit Service a1973e
		.pme_name = "PM_FPU1_FRSP_FCONV",
Packit Service a1973e
		.pme_code = 0x115,
Packit Service a1973e
		.pme_short_desc = "FPU1 executed FRSP or FCONV instructions",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when fp1 is executing frsp or convert kind of instruction. This could be frsp*, fcfid*, fcti* where XYZ* means XYZ, XYZs, XYZ., XYZs.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU0_FDIV ] = {
Packit Service a1973e
		.pme_name = "PM_FPU0_FDIV",
Packit Service a1973e
		.pme_code = 0x100,
Packit Service a1973e
		.pme_short_desc = "FPU0 executed FDIV instruction",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle at the end of the microcode executed when fp0 is executing a divide instruction. This could be fdiv, fdivs, fdiv. fdivs.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LD_REF_L1_LSU1 ] = {
Packit Service a1973e
		.pme_name = "PM_LD_REF_L1_LSU1",
Packit Service a1973e
		.pme_code = 0x814,
Packit Service a1973e
		.pme_short_desc = "LSU1 L1 D cache load references",
Packit Service a1973e
		.pme_long_desc = "A load executed on unit 1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_HV_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_HV_CYC",
Packit Service a1973e
		.pme_code = 0x3004,
Packit Service a1973e
		.pme_short_desc = "Hypervisor Cycles",
Packit Service a1973e
		.pme_long_desc = "Cycles when the processor is executing in Hypervisor (MSR[HV] = 1 and MSR[PR]=0)",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LR_CTR_MAP_FULL_CYC ] = {
Packit Service a1973e
		.pme_name = "PM_LR_CTR_MAP_FULL_CYC",
Packit Service a1973e
		.pme_code = 0x306,
Packit Service a1973e
		.pme_short_desc = "Cycles LR/CTR mapper full",
Packit Service a1973e
		.pme_long_desc = "The ISU sends a signal indicating that the lr/ctr mapper cannot accept any more groups. Dispatch is stopped. Note: this condition indicates that a pool of mapper is full but the entire mapper may not be.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_FPU_DENORM ] = {
Packit Service a1973e
		.pme_name = "PM_FPU_DENORM",
Packit Service a1973e
		.pme_code = 0x1120,
Packit Service a1973e
		.pme_short_desc = "FPU received denormalized data",
Packit Service a1973e
		.pme_long_desc = "This signal is active for one cycle when one of the operands is denormalized. Combined Unit 0 + Unit 1",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU0_REJECT_SRQ ] = {
Packit Service a1973e
		.pme_name = "PM_LSU0_REJECT_SRQ",
Packit Service a1973e
		.pme_code = 0x920,
Packit Service a1973e
		.pme_short_desc = "LSU0 SRQ rejects",
Packit Service a1973e
		.pme_long_desc = "LSU0 SRQ rejects",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU1_REJECT_SRQ ] = {
Packit Service a1973e
		.pme_name = "PM_LSU1_REJECT_SRQ",
Packit Service a1973e
		.pme_code = 0x924,
Packit Service a1973e
		.pme_short_desc = "LSU1 SRQ rejects",
Packit Service a1973e
		.pme_long_desc = "LSU1 SRQ rejects",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU1_DERAT_MISS ] = {
Packit Service a1973e
		.pme_name = "PM_LSU1_DERAT_MISS",
Packit Service a1973e
		.pme_code = 0x706,
Packit Service a1973e
		.pme_short_desc = "LSU1 DERAT misses",
Packit Service a1973e
		.pme_long_desc = "A data request (load or store) from LSU Unit 1 missed the ERAT and resulted in an ERAT reload. Multiple instructions may miss the ERAT entry for the same 4K page, but only one reload will occur.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_IC_PREF_REQ ] = {
Packit Service a1973e
		.pme_name = "PM_IC_PREF_REQ",
Packit Service a1973e
		.pme_code = 0x426,
Packit Service a1973e
		.pme_short_desc = "Instruction prefetch requests",
Packit Service a1973e
		.pme_long_desc = "Asserted when a non-canceled prefetch is made to the cache interface unit (CIU).",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_LSU_FIN ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_LSU_FIN",
Packit Service a1973e
		.pme_code = 0x8004,
Packit Service a1973e
		.pme_short_desc = "Marked instruction LSU processing finished",
Packit Service a1973e
		.pme_long_desc = "One of the Load/Store Units finished a marked instruction. Instructions that finish may not necessary complete",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_MRK_DATA_FROM_MEM ] = {
Packit Service a1973e
		.pme_name = "PM_MRK_DATA_FROM_MEM",
Packit Service a1973e
		.pme_code = 0x2937,
Packit Service a1973e
		.pme_short_desc = "Marked data loaded from memory",
Packit Service a1973e
		.pme_long_desc = "Marked data loaded from memory",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_CMPLU_STALL_DCACHE_MISS ] = {
Packit Service a1973e
		.pme_name = "PM_CMPLU_STALL_DCACHE_MISS",
Packit Service a1973e
		.pme_code = 0x50cb,
Packit Service a1973e
		.pme_short_desc = "Completion stall caused by D cache miss",
Packit Service a1973e
		.pme_long_desc = "Completion stall caused by D cache miss",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU0_FLUSH_UST ] = {
Packit Service a1973e
		.pme_name = "PM_LSU0_FLUSH_UST",
Packit Service a1973e
		.pme_code = 0x801,
Packit Service a1973e
		.pme_short_desc = "LSU0 unaligned store flushes",
Packit Service a1973e
		.pme_long_desc = "A store was flushed from unit 0 because it was unaligned (crossed a 4k boundary)",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_FLUSH_LRQ ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_FLUSH_LRQ",
Packit Service a1973e
		.pme_code = 0x6800,
Packit Service a1973e
		.pme_short_desc = "LRQ flushes",
Packit Service a1973e
		.pme_long_desc = "A load was flushed because a younger load executed before an older store executed and they had overlapping data OR two loads executed out of order and they have byte overlap and there was a snoop in between to an overlapped byte.",
Packit Service a1973e
	},
Packit Service a1973e
	[ PPC970MP_PME_PM_LSU_FLUSH_SRQ ] = {
Packit Service a1973e
		.pme_name = "PM_LSU_FLUSH_SRQ",
Packit Service a1973e
		.pme_code = 0x5800,
Packit Service a1973e
		.pme_short_desc = "SRQ flushes",
Packit Service a1973e
		.pme_long_desc = "A store was flushed because younger load hits and older store that is already in the SRQ or in the same group.",
Packit Service a1973e
	}
Packit Service a1973e
};
Packit Service a1973e
#endif
Packit Service a1973e