master
   1/*-
   2 * SPDX-License-Identifier: BSD-2-Clause
   3 *
   4 * Copyright (c) 2005  Joseph Koshy
   5 * All rights reserved.
   6 *
   7 * Redistribution and use in source and binary forms, with or without
   8 * modification, are permitted provided that the following conditions
   9 * are met:
  10 * 1. Redistributions of source code must retain the above copyright
  11 *    notice, this list of conditions and the following disclaimer.
  12 * 2. Redistributions in binary form must reproduce the above copyright
  13 *    notice, this list of conditions and the following disclaimer in the
  14 *    documentation and/or other materials provided with the distribution.
  15 *
  16 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
  17 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  18 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  19 * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
  20 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  21 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  22 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  23 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  24 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  26 * SUCH DAMAGE.
  27 */
  28
  29#ifndef _DEV_HWPMC_PMC_EVENTS_H_
  30#define	_DEV_HWPMC_PMC_EVENTS_H_
  31
  32/*
  33 * Note: Documentation on adding events can be found online at:
  34 *
  35 * https://wiki.freebsd.org/PmcTools/PmcHardwareHowTo
  36 *
  37 * Please refer to this resource before you attempt to modify this file or the
  38 * hwpmc driver/subsystem.
  39 */
  40
  41/* * PMC event codes.
  42 *
  43 * __PMC_EV(CLASS, SYMBOLIC-NAME)
  44 *
  45 */
  46/* timestamp counters. */
  47#define        __PMC_EV_TSC()                                                  \
  48	__PMC_EV(TSC, TSC)
  49
  50#define        PMC_EV_TSC_FIRST        PMC_EV_TSC_TSC
  51#define        PMC_EV_TSC_LAST         PMC_EV_TSC_TSC
  52
  53#define	__PMC_EV_ALIAS_TSC()			\
  54__PMC_EV_ALIAS("cycles",	TSC_TSC)
  55
  56/*
  57 * Software events are dynamically defined.
  58 */
  59
  60#define        PMC_EV_DYN_COUNT        0x1000
  61
  62#define        PMC_EV_SOFT_FIRST       0x20000
  63#define        PMC_EV_SOFT_LAST        (PMC_EV_SOFT_FIRST + PMC_EV_DYN_COUNT - 1)
  64
  65/*
  66 * AMD K7 Events, from "The AMD Athlon(tm) Processor x86 Code
  67 * Optimization Guide" [Doc#22007K, Feb 2002]
  68 */
  69
  70#define	__PMC_EV_K7()					\
  71__PMC_EV(K7, DC_ACCESSES)				\
  72__PMC_EV(K7, DC_MISSES)					\
  73__PMC_EV(K7, DC_REFILLS_FROM_L2)			\
  74__PMC_EV(K7, DC_REFILLS_FROM_SYSTEM)			\
  75__PMC_EV(K7, DC_WRITEBACKS)				\
  76__PMC_EV(K7, L1_DTLB_MISS_AND_L2_DTLB_HITS)		\
  77__PMC_EV(K7, L1_AND_L2_DTLB_MISSES)			\
  78__PMC_EV(K7, MISALIGNED_REFERENCES)			\
  79__PMC_EV(K7, IC_FETCHES)				\
  80__PMC_EV(K7, IC_MISSES)					\
  81__PMC_EV(K7, L1_ITLB_MISSES)				\
  82__PMC_EV(K7, L1_L2_ITLB_MISSES)				\
  83__PMC_EV(K7, RETIRED_INSTRUCTIONS)			\
  84__PMC_EV(K7, RETIRED_OPS)				\
  85__PMC_EV(K7, RETIRED_BRANCHES)				\
  86__PMC_EV(K7, RETIRED_BRANCHES_MISPREDICTED)		\
  87__PMC_EV(K7, RETIRED_TAKEN_BRANCHES)			\
  88__PMC_EV(K7, RETIRED_TAKEN_BRANCHES_MISPREDICTED)	\
  89__PMC_EV(K7, RETIRED_FAR_CONTROL_TRANSFERS)		\
  90__PMC_EV(K7, RETIRED_RESYNC_BRANCHES)			\
  91__PMC_EV(K7, INTERRUPTS_MASKED_CYCLES)			\
  92__PMC_EV(K7, INTERRUPTS_MASKED_WHILE_PENDING_CYCLES)	\
  93__PMC_EV(K7, HARDWARE_INTERRUPTS)
  94
  95#define	PMC_EV_K7_FIRST	PMC_EV_K7_DC_ACCESSES
  96#define	PMC_EV_K7_LAST	PMC_EV_K7_HARDWARE_INTERRUPTS
  97
  98/* AMD K8 PMCs */
  99
 100#define	__PMC_EV_K8()							\
 101__PMC_EV(K8, FP_DISPATCHED_FPU_OPS)					\
 102__PMC_EV(K8, FP_CYCLES_WITH_NO_FPU_OPS_RETIRED)				\
 103__PMC_EV(K8, FP_DISPATCHED_FPU_FAST_FLAG_OPS)				\
 104__PMC_EV(K8, LS_SEGMENT_REGISTER_LOAD)					\
 105__PMC_EV(K8, LS_MICROARCHITECTURAL_RESYNC_BY_SELF_MODIFYING_CODE)	\
 106__PMC_EV(K8, LS_MICROARCHITECTURAL_RESYNC_BY_SNOOP)			\
 107__PMC_EV(K8, LS_BUFFER2_FULL)						\
 108__PMC_EV(K8, LS_LOCKED_OPERATION)					\
 109__PMC_EV(K8, LS_MICROARCHITECTURAL_LATE_CANCEL)				\
 110__PMC_EV(K8, LS_RETIRED_CFLUSH_INSTRUCTIONS)				\
 111__PMC_EV(K8, LS_RETIRED_CPUID_INSTRUCTIONS)				\
 112__PMC_EV(K8, DC_ACCESS)							\
 113__PMC_EV(K8, DC_MISS)							\
 114__PMC_EV(K8, DC_REFILL_FROM_L2)						\
 115__PMC_EV(K8, DC_REFILL_FROM_SYSTEM)					\
 116__PMC_EV(K8, DC_COPYBACK)						\
 117__PMC_EV(K8, DC_L1_DTLB_MISS_AND_L2_DTLB_HIT)				\
 118__PMC_EV(K8, DC_L1_DTLB_MISS_AND_L2_DTLB_MISS)				\
 119__PMC_EV(K8, DC_MISALIGNED_DATA_REFERENCE)				\
 120__PMC_EV(K8, DC_MICROARCHITECTURAL_LATE_CANCEL)				\
 121__PMC_EV(K8, DC_MICROARCHITECTURAL_EARLY_CANCEL)			\
 122__PMC_EV(K8, DC_ONE_BIT_ECC_ERROR)					\
 123__PMC_EV(K8, DC_DISPATCHED_PREFETCH_INSTRUCTIONS)			\
 124__PMC_EV(K8, DC_DCACHE_ACCESSES_BY_LOCKS)				\
 125__PMC_EV(K8, BU_CPU_CLK_UNHALTED)					\
 126__PMC_EV(K8, BU_INTERNAL_L2_REQUEST)					\
 127__PMC_EV(K8, BU_FILL_REQUEST_L2_MISS)					\
 128__PMC_EV(K8, BU_FILL_INTO_L2)						\
 129__PMC_EV(K8, IC_FETCH)							\
 130__PMC_EV(K8, IC_MISS)							\
 131__PMC_EV(K8, IC_REFILL_FROM_L2)						\
 132__PMC_EV(K8, IC_REFILL_FROM_SYSTEM)					\
 133__PMC_EV(K8, IC_L1_ITLB_MISS_AND_L2_ITLB_HIT)				\
 134__PMC_EV(K8, IC_L1_ITLB_MISS_AND_L2_ITLB_MISS)				\
 135__PMC_EV(K8, IC_MICROARCHITECTURAL_RESYNC_BY_SNOOP)			\
 136__PMC_EV(K8, IC_INSTRUCTION_FETCH_STALL)				\
 137__PMC_EV(K8, IC_RETURN_STACK_HIT)					\
 138__PMC_EV(K8, IC_RETURN_STACK_OVERFLOW)					\
 139__PMC_EV(K8, FR_RETIRED_X86_INSTRUCTIONS)				\
 140__PMC_EV(K8, FR_RETIRED_UOPS)						\
 141__PMC_EV(K8, FR_RETIRED_BRANCHES)					\
 142__PMC_EV(K8, FR_RETIRED_BRANCHES_MISPREDICTED)				\
 143__PMC_EV(K8, FR_RETIRED_TAKEN_BRANCHES)					\
 144__PMC_EV(K8, FR_RETIRED_TAKEN_BRANCHES_MISPREDICTED)			\
 145__PMC_EV(K8, FR_RETIRED_FAR_CONTROL_TRANSFERS)				\
 146__PMC_EV(K8, FR_RETIRED_RESYNCS)					\
 147__PMC_EV(K8, FR_RETIRED_NEAR_RETURNS)					\
 148__PMC_EV(K8, FR_RETIRED_NEAR_RETURNS_MISPREDICTED)			\
 149__PMC_EV(K8, FR_RETIRED_TAKEN_BRANCHES_MISPREDICTED_BY_ADDR_MISCOMPARE)	\
 150__PMC_EV(K8, FR_RETIRED_FPU_INSTRUCTIONS)				\
 151__PMC_EV(K8, FR_RETIRED_FASTPATH_DOUBLE_OP_INSTRUCTIONS)		\
 152__PMC_EV(K8, FR_INTERRUPTS_MASKED_CYCLES)				\
 153__PMC_EV(K8, FR_INTERRUPTS_MASKED_WHILE_PENDING_CYCLES)			\
 154__PMC_EV(K8, FR_TAKEN_HARDWARE_INTERRUPTS)				\
 155__PMC_EV(K8, FR_DECODER_EMPTY)						\
 156__PMC_EV(K8, FR_DISPATCH_STALLS)					\
 157__PMC_EV(K8, FR_DISPATCH_STALL_FROM_BRANCH_ABORT_TO_RETIRE)		\
 158__PMC_EV(K8, FR_DISPATCH_STALL_FOR_SERIALIZATION)			\
 159__PMC_EV(K8, FR_DISPATCH_STALL_FOR_SEGMENT_LOAD)			\
 160__PMC_EV(K8, FR_DISPATCH_STALL_WHEN_REORDER_BUFFER_IS_FULL)		\
 161__PMC_EV(K8, FR_DISPATCH_STALL_WHEN_RESERVATION_STATIONS_ARE_FULL)	\
 162__PMC_EV(K8, FR_DISPATCH_STALL_WHEN_FPU_IS_FULL)			\
 163__PMC_EV(K8, FR_DISPATCH_STALL_WHEN_LS_IS_FULL)				\
 164__PMC_EV(K8, FR_DISPATCH_STALL_WHEN_WAITING_FOR_ALL_TO_BE_QUIET)	\
 165__PMC_EV(K8, FR_DISPATCH_STALL_WHEN_FAR_XFER_OR_RESYNC_BRANCH_PENDING)	\
 166__PMC_EV(K8, FR_FPU_EXCEPTIONS)						\
 167__PMC_EV(K8, FR_NUMBER_OF_BREAKPOINTS_FOR_DR0)				\
 168__PMC_EV(K8, FR_NUMBER_OF_BREAKPOINTS_FOR_DR1)				\
 169__PMC_EV(K8, FR_NUMBER_OF_BREAKPOINTS_FOR_DR2)				\
 170__PMC_EV(K8, FR_NUMBER_OF_BREAKPOINTS_FOR_DR3)				\
 171__PMC_EV(K8, NB_MEMORY_CONTROLLER_PAGE_ACCESS_EVENT)			\
 172__PMC_EV(K8, NB_MEMORY_CONTROLLER_PAGE_TABLE_OVERFLOW)			\
 173__PMC_EV(K8, NB_MEMORY_CONTROLLER_DRAM_COMMAND_SLOTS_MISSED)		\
 174__PMC_EV(K8, NB_MEMORY_CONTROLLER_TURNAROUND)				\
 175__PMC_EV(K8, NB_MEMORY_CONTROLLER_BYPASS_SATURATION)			\
 176__PMC_EV(K8, NB_SIZED_COMMANDS)						\
 177__PMC_EV(K8, NB_PROBE_RESULT)						\
 178__PMC_EV(K8, NB_HT_BUS0_BANDWIDTH)					\
 179__PMC_EV(K8, NB_HT_BUS1_BANDWIDTH)					\
 180__PMC_EV(K8, NB_HT_BUS2_BANDWIDTH)
 181
 182#define	PMC_EV_K8_FIRST		PMC_EV_K8_FP_DISPATCHED_FPU_OPS
 183#define	PMC_EV_K8_LAST		PMC_EV_K8_NB_HT_BUS2_BANDWIDTH
 184
 185/*
 186 * Events supported by Intel architectural fixed function counters,
 187 * from the "Intel 64 and IA-32 Architectures Software Developer's
 188 * Manual Volume 3B: System Programming Guide, Part 2", July 2008.
 189 */
 190#define	__PMC_EV_IAF()							\
 191__PMC_EV(IAF, INSTR_RETIRED_ANY)					\
 192__PMC_EV(IAF, CPU_CLK_UNHALTED_CORE)					\
 193__PMC_EV(IAF, CPU_CLK_UNHALTED_REF)
 194
 195#define	PMC_EV_IAF_FIRST	PMC_EV_IAF_INSTR_RETIRED_ANY
 196#define	PMC_EV_IAF_LAST		PMC_EV_IAF_CPU_CLK_UNHALTED_REF
 197
 198#define	__PMC_EV_ALIAS_IAF()						\
 199__PMC_EV_ALIAS("instruction-retired",	IAF_INSTR_RETIRED_ANY)		\
 200__PMC_EV_ALIAS("unhalted-core-cycles",	IAF_CPU_CLK_UNHALTED_CORE)	\
 201__PMC_EV_ALIAS("unhalted-reference-cycles", IAF_CPU_CLK_UNHALTED_REF)
 202
 203/*
 204 * ARMv7 Events
 205 */
 206
 207#define	__PMC_EV_ARMV7()			\
 208	__PMC_EV(ARMV7, EVENT_00H)		\
 209	__PMC_EV(ARMV7, EVENT_01H)		\
 210	__PMC_EV(ARMV7, EVENT_02H)		\
 211	__PMC_EV(ARMV7, EVENT_03H)		\
 212	__PMC_EV(ARMV7, EVENT_04H)		\
 213	__PMC_EV(ARMV7, EVENT_05H)		\
 214	__PMC_EV(ARMV7, EVENT_06H)		\
 215	__PMC_EV(ARMV7, EVENT_07H)		\
 216	__PMC_EV(ARMV7, EVENT_08H)		\
 217	__PMC_EV(ARMV7, EVENT_09H)		\
 218	__PMC_EV(ARMV7, EVENT_0AH)		\
 219	__PMC_EV(ARMV7, EVENT_0BH)		\
 220	__PMC_EV(ARMV7, EVENT_0CH)		\
 221	__PMC_EV(ARMV7, EVENT_0DH)		\
 222	__PMC_EV(ARMV7, EVENT_0EH)		\
 223	__PMC_EV(ARMV7, EVENT_0FH)		\
 224	__PMC_EV(ARMV7, EVENT_10H)		\
 225	__PMC_EV(ARMV7, EVENT_11H)		\
 226	__PMC_EV(ARMV7, EVENT_12H)		\
 227	__PMC_EV(ARMV7, EVENT_13H)		\
 228	__PMC_EV(ARMV7, EVENT_14H)		\
 229	__PMC_EV(ARMV7, EVENT_15H)		\
 230	__PMC_EV(ARMV7, EVENT_16H)		\
 231	__PMC_EV(ARMV7, EVENT_17H)		\
 232	__PMC_EV(ARMV7, EVENT_18H)		\
 233	__PMC_EV(ARMV7, EVENT_19H)		\
 234	__PMC_EV(ARMV7, EVENT_1AH)		\
 235	__PMC_EV(ARMV7, EVENT_1BH)		\
 236	__PMC_EV(ARMV7, EVENT_1CH)		\
 237	__PMC_EV(ARMV7, EVENT_1DH)		\
 238	__PMC_EV(ARMV7, EVENT_1EH)		\
 239	__PMC_EV(ARMV7, EVENT_1FH)		\
 240	__PMC_EV(ARMV7, EVENT_20H)		\
 241	__PMC_EV(ARMV7, EVENT_21H)		\
 242	__PMC_EV(ARMV7, EVENT_22H)		\
 243	__PMC_EV(ARMV7, EVENT_23H)		\
 244	__PMC_EV(ARMV7, EVENT_24H)		\
 245	__PMC_EV(ARMV7, EVENT_25H)		\
 246	__PMC_EV(ARMV7, EVENT_26H)		\
 247	__PMC_EV(ARMV7, EVENT_27H)		\
 248	__PMC_EV(ARMV7, EVENT_28H)		\
 249	__PMC_EV(ARMV7, EVENT_29H)		\
 250	__PMC_EV(ARMV7, EVENT_2AH)		\
 251	__PMC_EV(ARMV7, EVENT_2BH)		\
 252	__PMC_EV(ARMV7, EVENT_2CH)		\
 253	__PMC_EV(ARMV7, EVENT_2DH)		\
 254	__PMC_EV(ARMV7, EVENT_2EH)		\
 255	__PMC_EV(ARMV7, EVENT_2FH)		\
 256	__PMC_EV(ARMV7, EVENT_30H)		\
 257	__PMC_EV(ARMV7, EVENT_31H)		\
 258	__PMC_EV(ARMV7, EVENT_32H)		\
 259	__PMC_EV(ARMV7, EVENT_33H)		\
 260	__PMC_EV(ARMV7, EVENT_34H)		\
 261	__PMC_EV(ARMV7, EVENT_35H)		\
 262	__PMC_EV(ARMV7, EVENT_36H)		\
 263	__PMC_EV(ARMV7, EVENT_37H)		\
 264	__PMC_EV(ARMV7, EVENT_38H)		\
 265	__PMC_EV(ARMV7, EVENT_39H)		\
 266	__PMC_EV(ARMV7, EVENT_3AH)		\
 267	__PMC_EV(ARMV7, EVENT_3BH)		\
 268	__PMC_EV(ARMV7, EVENT_3CH)		\
 269	__PMC_EV(ARMV7, EVENT_3DH)		\
 270	__PMC_EV(ARMV7, EVENT_3EH)		\
 271	__PMC_EV(ARMV7, EVENT_3FH)		\
 272	__PMC_EV(ARMV7, EVENT_40H)		\
 273	__PMC_EV(ARMV7, EVENT_41H)		\
 274	__PMC_EV(ARMV7, EVENT_42H)		\
 275	__PMC_EV(ARMV7, EVENT_43H)		\
 276	__PMC_EV(ARMV7, EVENT_44H)		\
 277	__PMC_EV(ARMV7, EVENT_45H)		\
 278	__PMC_EV(ARMV7, EVENT_46H)		\
 279	__PMC_EV(ARMV7, EVENT_47H)		\
 280	__PMC_EV(ARMV7, EVENT_48H)		\
 281	__PMC_EV(ARMV7, EVENT_49H)		\
 282	__PMC_EV(ARMV7, EVENT_4AH)		\
 283	__PMC_EV(ARMV7, EVENT_4BH)		\
 284	__PMC_EV(ARMV7, EVENT_4CH)		\
 285	__PMC_EV(ARMV7, EVENT_4DH)		\
 286	__PMC_EV(ARMV7, EVENT_4EH)		\
 287	__PMC_EV(ARMV7, EVENT_4FH)		\
 288	__PMC_EV(ARMV7, EVENT_50H)		\
 289	__PMC_EV(ARMV7, EVENT_51H)		\
 290	__PMC_EV(ARMV7, EVENT_52H)		\
 291	__PMC_EV(ARMV7, EVENT_53H)		\
 292	__PMC_EV(ARMV7, EVENT_54H)		\
 293	__PMC_EV(ARMV7, EVENT_55H)		\
 294	__PMC_EV(ARMV7, EVENT_56H)		\
 295	__PMC_EV(ARMV7, EVENT_57H)		\
 296	__PMC_EV(ARMV7, EVENT_58H)		\
 297	__PMC_EV(ARMV7, EVENT_59H)		\
 298	__PMC_EV(ARMV7, EVENT_5AH)		\
 299	__PMC_EV(ARMV7, EVENT_5BH)		\
 300	__PMC_EV(ARMV7, EVENT_5CH)		\
 301	__PMC_EV(ARMV7, EVENT_5DH)		\
 302	__PMC_EV(ARMV7, EVENT_5EH)		\
 303	__PMC_EV(ARMV7, EVENT_5FH)		\
 304	__PMC_EV(ARMV7, EVENT_60H)		\
 305	__PMC_EV(ARMV7, EVENT_61H)		\
 306	__PMC_EV(ARMV7, EVENT_62H)		\
 307	__PMC_EV(ARMV7, EVENT_63H)		\
 308	__PMC_EV(ARMV7, EVENT_64H)		\
 309	__PMC_EV(ARMV7, EVENT_65H)		\
 310	__PMC_EV(ARMV7, EVENT_66H)		\
 311	__PMC_EV(ARMV7, EVENT_67H)		\
 312	__PMC_EV(ARMV7, EVENT_68H)		\
 313	__PMC_EV(ARMV7, EVENT_69H)		\
 314	__PMC_EV(ARMV7, EVENT_6AH)		\
 315	__PMC_EV(ARMV7, EVENT_6BH)		\
 316	__PMC_EV(ARMV7, EVENT_6CH)		\
 317	__PMC_EV(ARMV7, EVENT_6DH)		\
 318	__PMC_EV(ARMV7, EVENT_6EH)		\
 319	__PMC_EV(ARMV7, EVENT_6FH)		\
 320	__PMC_EV(ARMV7, EVENT_70H)		\
 321	__PMC_EV(ARMV7, EVENT_71H)		\
 322	__PMC_EV(ARMV7, EVENT_72H)		\
 323	__PMC_EV(ARMV7, EVENT_73H)		\
 324	__PMC_EV(ARMV7, EVENT_74H)		\
 325	__PMC_EV(ARMV7, EVENT_75H)		\
 326	__PMC_EV(ARMV7, EVENT_76H)		\
 327	__PMC_EV(ARMV7, EVENT_77H)		\
 328	__PMC_EV(ARMV7, EVENT_78H)		\
 329	__PMC_EV(ARMV7, EVENT_79H)		\
 330	__PMC_EV(ARMV7, EVENT_7AH)		\
 331	__PMC_EV(ARMV7, EVENT_7BH)		\
 332	__PMC_EV(ARMV7, EVENT_7CH)		\
 333	__PMC_EV(ARMV7, EVENT_7DH)		\
 334	__PMC_EV(ARMV7, EVENT_7EH)		\
 335	__PMC_EV(ARMV7, EVENT_7FH)		\
 336	__PMC_EV(ARMV7, EVENT_80H)		\
 337	__PMC_EV(ARMV7, EVENT_81H)		\
 338	__PMC_EV(ARMV7, EVENT_82H)		\
 339	__PMC_EV(ARMV7, EVENT_83H)		\
 340	__PMC_EV(ARMV7, EVENT_84H)		\
 341	__PMC_EV(ARMV7, EVENT_85H)		\
 342	__PMC_EV(ARMV7, EVENT_86H)		\
 343	__PMC_EV(ARMV7, EVENT_87H)		\
 344	__PMC_EV(ARMV7, EVENT_88H)		\
 345	__PMC_EV(ARMV7, EVENT_89H)		\
 346	__PMC_EV(ARMV7, EVENT_8AH)		\
 347	__PMC_EV(ARMV7, EVENT_8BH)		\
 348	__PMC_EV(ARMV7, EVENT_8CH)		\
 349	__PMC_EV(ARMV7, EVENT_8DH)		\
 350	__PMC_EV(ARMV7, EVENT_8EH)		\
 351	__PMC_EV(ARMV7, EVENT_8FH)		\
 352	__PMC_EV(ARMV7, EVENT_90H)		\
 353	__PMC_EV(ARMV7, EVENT_91H)		\
 354	__PMC_EV(ARMV7, EVENT_92H)		\
 355	__PMC_EV(ARMV7, EVENT_93H)		\
 356	__PMC_EV(ARMV7, EVENT_94H)		\
 357	__PMC_EV(ARMV7, EVENT_95H)		\
 358	__PMC_EV(ARMV7, EVENT_96H)		\
 359	__PMC_EV(ARMV7, EVENT_97H)		\
 360	__PMC_EV(ARMV7, EVENT_98H)		\
 361	__PMC_EV(ARMV7, EVENT_99H)		\
 362	__PMC_EV(ARMV7, EVENT_9AH)		\
 363	__PMC_EV(ARMV7, EVENT_9BH)		\
 364	__PMC_EV(ARMV7, EVENT_9CH)		\
 365	__PMC_EV(ARMV7, EVENT_9DH)		\
 366	__PMC_EV(ARMV7, EVENT_9EH)		\
 367	__PMC_EV(ARMV7, EVENT_9FH)		\
 368	__PMC_EV(ARMV7, EVENT_A0H)		\
 369	__PMC_EV(ARMV7, EVENT_A1H)		\
 370	__PMC_EV(ARMV7, EVENT_A2H)		\
 371	__PMC_EV(ARMV7, EVENT_A3H)		\
 372	__PMC_EV(ARMV7, EVENT_A4H)		\
 373	__PMC_EV(ARMV7, EVENT_A5H)		\
 374	__PMC_EV(ARMV7, EVENT_A6H)		\
 375	__PMC_EV(ARMV7, EVENT_A7H)		\
 376	__PMC_EV(ARMV7, EVENT_A8H)		\
 377	__PMC_EV(ARMV7, EVENT_A9H)		\
 378	__PMC_EV(ARMV7, EVENT_AAH)		\
 379	__PMC_EV(ARMV7, EVENT_ABH)		\
 380	__PMC_EV(ARMV7, EVENT_ACH)		\
 381	__PMC_EV(ARMV7, EVENT_ADH)		\
 382	__PMC_EV(ARMV7, EVENT_AEH)		\
 383	__PMC_EV(ARMV7, EVENT_AFH)		\
 384	__PMC_EV(ARMV7, EVENT_B0H)		\
 385	__PMC_EV(ARMV7, EVENT_B1H)		\
 386	__PMC_EV(ARMV7, EVENT_B2H)		\
 387	__PMC_EV(ARMV7, EVENT_B3H)		\
 388	__PMC_EV(ARMV7, EVENT_B4H)		\
 389	__PMC_EV(ARMV7, EVENT_B5H)		\
 390	__PMC_EV(ARMV7, EVENT_B6H)		\
 391	__PMC_EV(ARMV7, EVENT_B7H)		\
 392	__PMC_EV(ARMV7, EVENT_B8H)		\
 393	__PMC_EV(ARMV7, EVENT_B9H)		\
 394	__PMC_EV(ARMV7, EVENT_BAH)		\
 395	__PMC_EV(ARMV7, EVENT_BBH)		\
 396	__PMC_EV(ARMV7, EVENT_BCH)		\
 397	__PMC_EV(ARMV7, EVENT_BDH)		\
 398	__PMC_EV(ARMV7, EVENT_BEH)		\
 399	__PMC_EV(ARMV7, EVENT_BFH)		\
 400	__PMC_EV(ARMV7, EVENT_C0H)		\
 401	__PMC_EV(ARMV7, EVENT_C1H)		\
 402	__PMC_EV(ARMV7, EVENT_C2H)		\
 403	__PMC_EV(ARMV7, EVENT_C3H)		\
 404	__PMC_EV(ARMV7, EVENT_C4H)		\
 405	__PMC_EV(ARMV7, EVENT_C5H)		\
 406	__PMC_EV(ARMV7, EVENT_C6H)		\
 407	__PMC_EV(ARMV7, EVENT_C7H)		\
 408	__PMC_EV(ARMV7, EVENT_C8H)		\
 409	__PMC_EV(ARMV7, EVENT_C9H)		\
 410	__PMC_EV(ARMV7, EVENT_CAH)		\
 411	__PMC_EV(ARMV7, EVENT_CBH)		\
 412	__PMC_EV(ARMV7, EVENT_CCH)		\
 413	__PMC_EV(ARMV7, EVENT_CDH)		\
 414	__PMC_EV(ARMV7, EVENT_CEH)		\
 415	__PMC_EV(ARMV7, EVENT_CFH)		\
 416	__PMC_EV(ARMV7, EVENT_D0H)		\
 417	__PMC_EV(ARMV7, EVENT_D1H)		\
 418	__PMC_EV(ARMV7, EVENT_D2H)		\
 419	__PMC_EV(ARMV7, EVENT_D3H)		\
 420	__PMC_EV(ARMV7, EVENT_D4H)		\
 421	__PMC_EV(ARMV7, EVENT_D5H)		\
 422	__PMC_EV(ARMV7, EVENT_D6H)		\
 423	__PMC_EV(ARMV7, EVENT_D7H)		\
 424	__PMC_EV(ARMV7, EVENT_D8H)		\
 425	__PMC_EV(ARMV7, EVENT_D9H)		\
 426	__PMC_EV(ARMV7, EVENT_DAH)		\
 427	__PMC_EV(ARMV7, EVENT_DBH)		\
 428	__PMC_EV(ARMV7, EVENT_DCH)		\
 429	__PMC_EV(ARMV7, EVENT_DDH)		\
 430	__PMC_EV(ARMV7, EVENT_DEH)		\
 431	__PMC_EV(ARMV7, EVENT_DFH)		\
 432	__PMC_EV(ARMV7, EVENT_E0H)		\
 433	__PMC_EV(ARMV7, EVENT_E1H)		\
 434	__PMC_EV(ARMV7, EVENT_E2H)		\
 435	__PMC_EV(ARMV7, EVENT_E3H)		\
 436	__PMC_EV(ARMV7, EVENT_E4H)		\
 437	__PMC_EV(ARMV7, EVENT_E5H)		\
 438	__PMC_EV(ARMV7, EVENT_E6H)		\
 439	__PMC_EV(ARMV7, EVENT_E7H)		\
 440	__PMC_EV(ARMV7, EVENT_E8H)		\
 441	__PMC_EV(ARMV7, EVENT_E9H)		\
 442	__PMC_EV(ARMV7, EVENT_EAH)		\
 443	__PMC_EV(ARMV7, EVENT_EBH)		\
 444	__PMC_EV(ARMV7, EVENT_ECH)		\
 445	__PMC_EV(ARMV7, EVENT_EDH)		\
 446	__PMC_EV(ARMV7, EVENT_EEH)		\
 447	__PMC_EV(ARMV7, EVENT_EFH)		\
 448	__PMC_EV(ARMV7, EVENT_F0H)		\
 449	__PMC_EV(ARMV7, EVENT_F1H)		\
 450	__PMC_EV(ARMV7, EVENT_F2H)		\
 451	__PMC_EV(ARMV7, EVENT_F3H)		\
 452	__PMC_EV(ARMV7, EVENT_F4H)		\
 453	__PMC_EV(ARMV7, EVENT_F5H)		\
 454	__PMC_EV(ARMV7, EVENT_F6H)		\
 455	__PMC_EV(ARMV7, EVENT_F7H)		\
 456	__PMC_EV(ARMV7, EVENT_F8H)		\
 457	__PMC_EV(ARMV7, EVENT_F9H)		\
 458	__PMC_EV(ARMV7, EVENT_FAH)		\
 459	__PMC_EV(ARMV7, EVENT_FBH)		\
 460	__PMC_EV(ARMV7, EVENT_FCH)		\
 461	__PMC_EV(ARMV7, EVENT_FDH)		\
 462	__PMC_EV(ARMV7, EVENT_FEH)		\
 463	__PMC_EV(ARMV7, EVENT_FFH)
 464
 465#define	PMC_EV_ARMV7_FIRST	PMC_EV_ARMV7_EVENT_00H
 466#define	PMC_EV_ARMV7_LAST	PMC_EV_ARMV7_EVENT_FFH
 467
 468#define	__PMC_EV_ALIAS_ARMV7_COMMON()					\
 469	__PMC_EV_ALIAS("PMNC_SW_INCR",		ARMV7_EVENT_00H)	\
 470	__PMC_EV_ALIAS("L1_ICACHE_REFILL",	ARMV7_EVENT_01H)	\
 471	__PMC_EV_ALIAS("ITLB_REFILL",		ARMV7_EVENT_02H)	\
 472	__PMC_EV_ALIAS("L1_DCACHE_REFILL",	ARMV7_EVENT_03H)	\
 473	__PMC_EV_ALIAS("L1_DCACHE_ACCESS",	ARMV7_EVENT_04H)	\
 474	__PMC_EV_ALIAS("DTLB_REFILL",		ARMV7_EVENT_05H)	\
 475	__PMC_EV_ALIAS("MEM_READ",		ARMV7_EVENT_06H)	\
 476	__PMC_EV_ALIAS("MEM_WRITE",		ARMV7_EVENT_07H)	\
 477	__PMC_EV_ALIAS("EXC_TAKEN",		ARMV7_EVENT_09H)	\
 478	__PMC_EV_ALIAS("EXC_EXECUTED",		ARMV7_EVENT_0AH)	\
 479	__PMC_EV_ALIAS("CID_WRITE",		ARMV7_EVENT_0BH)	\
 480	__PMC_EV_ALIAS("PC_WRITE",		ARMV7_EVENT_0CH)	\
 481	__PMC_EV_ALIAS("PC_IMM_BRANCH",		ARMV7_EVENT_0DH)	\
 482	__PMC_EV_ALIAS("MEM_UNALIGNED_ACCESS",	ARMV7_EVENT_0FH)	\
 483	__PMC_EV_ALIAS("PC_BRANCH_MIS_PRED",	ARMV7_EVENT_10H)	\
 484	__PMC_EV_ALIAS("CLOCK_CYCLES",		ARMV7_EVENT_11H)	\
 485	__PMC_EV_ALIAS("PC_BRANCH_PRED",	ARMV7_EVENT_12H)
 486
 487#define	__PMC_EV_ALIAS_ARMV7_COMMON_A8()				\
 488	__PMC_EV_ALIAS_ARMV7_COMMON()					\
 489	__PMC_EV_ALIAS("INSTR_EXECUTED",	ARMV7_EVENT_08H)	\
 490	__PMC_EV_ALIAS("PC_PROC_RETURN",	ARMV7_EVENT_0EH)	\
 491	__PMC_EV_ALIAS("MEM_ACCESS",		ARMV7_EVENT_13H)	\
 492	__PMC_EV_ALIAS("L1_ICACHE_ACCESS",	ARMV7_EVENT_14H)	\
 493	__PMC_EV_ALIAS("L1_DCACHE_WB",		ARMV7_EVENT_15H)	\
 494	__PMC_EV_ALIAS("L2_CACHE_ACCESS",	ARMV7_EVENT_16H)	\
 495	__PMC_EV_ALIAS("L2_CACHE_REFILL",	ARMV7_EVENT_17H)	\
 496	__PMC_EV_ALIAS("L2_CACHE_WB",		ARMV7_EVENT_18H)	\
 497	__PMC_EV_ALIAS("BUS_ACCESS",		ARMV7_EVENT_19H)	\
 498	__PMC_EV_ALIAS("MEM_ERROR",		ARMV7_EVENT_1AH)	\
 499	__PMC_EV_ALIAS("INSTR_SPEC",		ARMV7_EVENT_1BH)	\
 500	__PMC_EV_ALIAS("TTBR_WRITE",		ARMV7_EVENT_1CH)	\
 501	__PMC_EV_ALIAS("BUS_CYCLES",		ARMV7_EVENT_1DH)	\
 502	__PMC_EV_ALIAS("CPU_CYCLES",		ARMV7_EVENT_FFH)
 503
 504#define	__PMC_EV_ALIAS_ARMV7_CORTEX_A8()				 \
 505	__PMC_EV_ALIAS_ARMV7_COMMON_A8()				 \
 506	__PMC_EV_ALIAS("WRITE_BUF_FULL",		ARMV7_EVENT_40H) \
 507	__PMC_EV_ALIAS("L2_STORE_MERGED",		ARMV7_EVENT_41H) \
 508	__PMC_EV_ALIAS("L2_STORE_BUFFERABLE",		ARMV7_EVENT_42H) \
 509	__PMC_EV_ALIAS("L2_ACCESS",			ARMV7_EVENT_43H) \
 510	__PMC_EV_ALIAS("L2_CACHE_MISS",			ARMV7_EVENT_44H) \
 511	__PMC_EV_ALIAS("AXI_READ",			ARMV7_EVENT_45H) \
 512	__PMC_EV_ALIAS("AXI_WRITE",			ARMV7_EVENT_46H) \
 513	__PMC_EV_ALIAS("MEM_REPLAY_EVT",		ARMV7_EVENT_47H) \
 514	__PMC_EV_ALIAS("MEM_UNALIGNED_ACCESS_REPLAY",	ARMV7_EVENT_48H) \
 515	__PMC_EV_ALIAS("L1_DCACHE_HASH_MISS",		ARMV7_EVENT_49H) \
 516	__PMC_EV_ALIAS("L1_ICACHE_HASH_MISS",		ARMV7_EVENT_4AH) \
 517	__PMC_EV_ALIAS("L1_CACHE_PAGECOL_ALIAS",	ARMV7_EVENT_4BH) \
 518	__PMC_EV_ALIAS("L1_DCACHE_NEON_ACCESS",		ARMV7_EVENT_4CH) \
 519	__PMC_EV_ALIAS("L1_DCACHE_NEON_CACHEABLE",	ARMV7_EVENT_4DH) \
 520	__PMC_EV_ALIAS("L2_CACHE_NEON_MEM_ACCESS",	ARMV7_EVENT_4EH) \
 521	__PMC_EV_ALIAS("L2_CACHE_NEON_HIT",		ARMV7_EVENT_4FH) \
 522	__PMC_EV_ALIAS("L1_CACHE_ACCESS_NOCP15",	ARMV7_EVENT_50H) \
 523	__PMC_EV_ALIAS("RET_STACK_MISPREDICT",		ARMV7_EVENT_51H) \
 524	__PMC_EV_ALIAS("BRANCH_DIR_MISPREDICT",		ARMV7_EVENT_52H) \
 525	__PMC_EV_ALIAS("PRED_BRANCH_PRED_TAKEN",	ARMV7_EVENT_53H) \
 526	__PMC_EV_ALIAS("PRED_BRANCH_EXEC_TAKEN",	ARMV7_EVENT_54H) \
 527	__PMC_EV_ALIAS("OPS_ISSUED",			ARMV7_EVENT_55H) \
 528	__PMC_EV_ALIAS("CYCLES_NO_INSTRUCTION",		ARMV7_EVENT_56H) \
 529	__PMC_EV_ALIAS("INSTRUCTIONS_ISSUED_CYCLE",	ARMV7_EVENT_57H) \
 530	__PMC_EV_ALIAS("CYCLES_STALLED_NEON_MRC",	ARMV7_EVENT_58H) \
 531	__PMC_EV_ALIAS("CYCLES_STALLED_NEON_FULLQ",	ARMV7_EVENT_59H) \
 532	__PMC_EV_ALIAS("CYCLES_NONIDLE_NEON_INT",	ARMV7_EVENT_5AH) \
 533	__PMC_EV_ALIAS("PMUEXTIN0_EVT",			ARMV7_EVENT_70H) \
 534	__PMC_EV_ALIAS("PMUEXTIN1_EVT",			ARMV7_EVENT_71H) \
 535	__PMC_EV_ALIAS("PMUEXTIN_EVT",			ARMV7_EVENT_72H)
 536#define	PMC_EV_ARMV7_CORTEX_A8_FIRST	PMC_EV_ARMV7_PMNC_SW_INCR
 537#define	PMC_EV_ARMV7_CORTEX_A8_LAST	PMC_EV_ARMV7_PMUEXTIN_EVT
 538
 539#define	__PMC_EV_ALIAS_ARMV7_CORTEX_A9()					\
 540	__PMC_EV_ALIAS_ARMV7_COMMON()						\
 541	__PMC_EV_ALIAS("JAVA_BYTECODE",			ARMV7_EVENT_40H)	\
 542	__PMC_EV_ALIAS("SOFTWARE_JAVA_BYTECODE",	ARMV7_EVENT_41H)	\
 543	__PMC_EV_ALIAS("JAZELLE_BACKWARD_BRANCH",	ARMV7_EVENT_42H)	\
 544	__PMC_EV_ALIAS("COHERENT_LINEFILL_MISSC",	ARMV7_EVENT_50H)	\
 545	__PMC_EV_ALIAS("COHERENT_LINEFILL_HITC",	ARMV7_EVENT_51H)	\
 546	__PMC_EV_ALIAS("INSTR_CACHE_DEPENDENT_STALL",	ARMV7_EVENT_60H)	\
 547	__PMC_EV_ALIAS("DATA_CACHE_DEPENDENT_STALL",	ARMV7_EVENT_61H)	\
 548	__PMC_EV_ALIAS("MAIN_TLB_MISS_STALL",		ARMV7_EVENT_62H)	\
 549	__PMC_EV_ALIAS("STREX_PASSED",			ARMV7_EVENT_63H)	\
 550	__PMC_EV_ALIAS("STREX_FAILED",			ARMV7_EVENT_64H)	\
 551	__PMC_EV_ALIAS("DATA_EVICTION",			ARMV7_EVENT_65H)	\
 552	__PMC_EV_ALIAS("ISSUE_DNOT_DISPATCH_ANY_INSTR",	ARMV7_EVENT_66H)	\
 553	__PMC_EV_ALIAS("ISSUE_IS_EMPTY",		ARMV7_EVENT_67H)	\
 554	__PMC_EV_ALIAS("INSTR_RENAMED",			ARMV7_EVENT_68H)	\
 555	__PMC_EV_ALIAS("PREDICTABLE_FUNCTION_RETURN",	ARMV7_EVENT_6EH)	\
 556	__PMC_EV_ALIAS("MAIN_EXECUTION_UNIT_PIPE",	ARMV7_EVENT_70H)	\
 557	__PMC_EV_ALIAS("SECOND_EXECUTION_UNIT_PIPE",	ARMV7_EVENT_71H)	\
 558	__PMC_EV_ALIAS("LOAD_STORE_PIPE",		ARMV7_EVENT_72H)	\
 559	__PMC_EV_ALIAS("FLOATING_POINT_INSTR_RENAMED",	ARMV7_EVENT_73H)	\
 560	__PMC_EV_ALIAS("NEON_INSTRS_RENAMED",		ARMV7_EVENT_74H)	\
 561	__PMC_EV_ALIAS("PLD_STALL",			ARMV7_EVENT_80H)	\
 562	__PMC_EV_ALIAS("WRITE_STALL",			ARMV7_EVENT_81H)	\
 563	__PMC_EV_ALIAS("INSTR_MAIN_TLB_MISS_STALL",	ARMV7_EVENT_82H)	\
 564	__PMC_EV_ALIAS("DATA_MAIN_TLB_MISS_STALL",	ARMV7_EVENT_83H)	\
 565	__PMC_EV_ALIAS("INSTR_MICRO_TLB_MISS_STALL",	ARMV7_EVENT_84H)	\
 566	__PMC_EV_ALIAS("DATA_MICRO_TLB_MISS_STALL",	ARMV7_EVENT_85H)	\
 567	__PMC_EV_ALIAS("DMB_STALL",			ARMV7_EVENT_86H)	\
 568	__PMC_EV_ALIAS("INTEGER_CORE_CLOCK_ENABLED",	ARMV7_EVENT_8AH)	\
 569	__PMC_EV_ALIAS("DATA_ENGINE_CLOCK_ENABLED",	ARMV7_EVENT_8BH)	\
 570	__PMC_EV_ALIAS("ISB",				ARMV7_EVENT_90H)	\
 571	__PMC_EV_ALIAS("DSB",				ARMV7_EVENT_91H)	\
 572	__PMC_EV_ALIAS("DMB",				ARMV7_EVENT_92H)	\
 573	__PMC_EV_ALIAS("EXTERNAL_INTERRUPT",		ARMV7_EVENT_93H)	\
 574	__PMC_EV_ALIAS("PLE_CACHE_LINE_REQ_COMPLETED",	ARMV7_EVENT_A0H)	\
 575	__PMC_EV_ALIAS("PLE_CACHE_LINE_REQ_SKIPPED",	ARMV7_EVENT_A1H)	\
 576	__PMC_EV_ALIAS("PLE_FIFO_FLUSH",		ARMV7_EVENT_A2H)	\
 577	__PMC_EV_ALIAS("PLE_REQUEST_COMPLETED",		ARMV7_EVENT_A3H)	\
 578	__PMC_EV_ALIAS("PLE_FIFO_OVERFLOW",		ARMV7_EVENT_A4H)	\
 579	__PMC_EV_ALIAS("PLE_REQUEST_PROGRAMMED",	ARMV7_EVENT_A5H)
 580
 581/*
 582 * ARMv8 Events
 583 *
 584 * NB: ARMv8.1 extends this to a 16-bit encoding, but we only define the 10-bit
 585 * event numbers here.
 586 */
 587
 588#define	__PMC_EV_ARMV8()			\
 589	__PMC_EV(ARMV8, EVENT_00H)		\
 590	__PMC_EV(ARMV8, EVENT_01H)		\
 591	__PMC_EV(ARMV8, EVENT_02H)		\
 592	__PMC_EV(ARMV8, EVENT_03H)		\
 593	__PMC_EV(ARMV8, EVENT_04H)		\
 594	__PMC_EV(ARMV8, EVENT_05H)		\
 595	__PMC_EV(ARMV8, EVENT_06H)		\
 596	__PMC_EV(ARMV8, EVENT_07H)		\
 597	__PMC_EV(ARMV8, EVENT_08H)		\
 598	__PMC_EV(ARMV8, EVENT_09H)		\
 599	__PMC_EV(ARMV8, EVENT_0AH)		\
 600	__PMC_EV(ARMV8, EVENT_0BH)		\
 601	__PMC_EV(ARMV8, EVENT_0CH)		\
 602	__PMC_EV(ARMV8, EVENT_0DH)		\
 603	__PMC_EV(ARMV8, EVENT_0EH)		\
 604	__PMC_EV(ARMV8, EVENT_0FH)		\
 605	__PMC_EV(ARMV8, EVENT_10H)		\
 606	__PMC_EV(ARMV8, EVENT_11H)		\
 607	__PMC_EV(ARMV8, EVENT_12H)		\
 608	__PMC_EV(ARMV8, EVENT_13H)		\
 609	__PMC_EV(ARMV8, EVENT_14H)		\
 610	__PMC_EV(ARMV8, EVENT_15H)		\
 611	__PMC_EV(ARMV8, EVENT_16H)		\
 612	__PMC_EV(ARMV8, EVENT_17H)		\
 613	__PMC_EV(ARMV8, EVENT_18H)		\
 614	__PMC_EV(ARMV8, EVENT_19H)		\
 615	__PMC_EV(ARMV8, EVENT_1AH)		\
 616	__PMC_EV(ARMV8, EVENT_1BH)		\
 617	__PMC_EV(ARMV8, EVENT_1CH)		\
 618	__PMC_EV(ARMV8, EVENT_1DH)		\
 619	__PMC_EV(ARMV8, EVENT_1EH)		\
 620	__PMC_EV(ARMV8, EVENT_1FH)		\
 621	__PMC_EV(ARMV8, EVENT_20H)		\
 622	__PMC_EV(ARMV8, EVENT_21H)		\
 623	__PMC_EV(ARMV8, EVENT_22H)		\
 624	__PMC_EV(ARMV8, EVENT_23H)		\
 625	__PMC_EV(ARMV8, EVENT_24H)		\
 626	__PMC_EV(ARMV8, EVENT_25H)		\
 627	__PMC_EV(ARMV8, EVENT_26H)		\
 628	__PMC_EV(ARMV8, EVENT_27H)		\
 629	__PMC_EV(ARMV8, EVENT_28H)		\
 630	__PMC_EV(ARMV8, EVENT_29H)		\
 631	__PMC_EV(ARMV8, EVENT_2AH)		\
 632	__PMC_EV(ARMV8, EVENT_2BH)		\
 633	__PMC_EV(ARMV8, EVENT_2CH)		\
 634	__PMC_EV(ARMV8, EVENT_2DH)		\
 635	__PMC_EV(ARMV8, EVENT_2EH)		\
 636	__PMC_EV(ARMV8, EVENT_2FH)		\
 637	__PMC_EV(ARMV8, EVENT_30H)		\
 638	__PMC_EV(ARMV8, EVENT_31H)		\
 639	__PMC_EV(ARMV8, EVENT_32H)		\
 640	__PMC_EV(ARMV8, EVENT_33H)		\
 641	__PMC_EV(ARMV8, EVENT_34H)		\
 642	__PMC_EV(ARMV8, EVENT_35H)		\
 643	__PMC_EV(ARMV8, EVENT_36H)		\
 644	__PMC_EV(ARMV8, EVENT_37H)		\
 645	__PMC_EV(ARMV8, EVENT_38H)		\
 646	__PMC_EV(ARMV8, EVENT_39H)		\
 647	__PMC_EV(ARMV8, EVENT_3AH)		\
 648	__PMC_EV(ARMV8, EVENT_3BH)		\
 649	__PMC_EV(ARMV8, EVENT_3CH)		\
 650	__PMC_EV(ARMV8, EVENT_3DH)		\
 651	__PMC_EV(ARMV8, EVENT_3EH)		\
 652	__PMC_EV(ARMV8, EVENT_3FH)		\
 653	__PMC_EV(ARMV8, EVENT_40H)		\
 654	__PMC_EV(ARMV8, EVENT_41H)		\
 655	__PMC_EV(ARMV8, EVENT_42H)		\
 656	__PMC_EV(ARMV8, EVENT_43H)		\
 657	__PMC_EV(ARMV8, EVENT_44H)		\
 658	__PMC_EV(ARMV8, EVENT_45H)		\
 659	__PMC_EV(ARMV8, EVENT_46H)		\
 660	__PMC_EV(ARMV8, EVENT_47H)		\
 661	__PMC_EV(ARMV8, EVENT_48H)		\
 662	__PMC_EV(ARMV8, EVENT_49H)		\
 663	__PMC_EV(ARMV8, EVENT_4AH)		\
 664	__PMC_EV(ARMV8, EVENT_4BH)		\
 665	__PMC_EV(ARMV8, EVENT_4CH)		\
 666	__PMC_EV(ARMV8, EVENT_4DH)		\
 667	__PMC_EV(ARMV8, EVENT_4EH)		\
 668	__PMC_EV(ARMV8, EVENT_4FH)		\
 669	__PMC_EV(ARMV8, EVENT_50H)		\
 670	__PMC_EV(ARMV8, EVENT_51H)		\
 671	__PMC_EV(ARMV8, EVENT_52H)		\
 672	__PMC_EV(ARMV8, EVENT_53H)		\
 673	__PMC_EV(ARMV8, EVENT_54H)		\
 674	__PMC_EV(ARMV8, EVENT_55H)		\
 675	__PMC_EV(ARMV8, EVENT_56H)		\
 676	__PMC_EV(ARMV8, EVENT_57H)		\
 677	__PMC_EV(ARMV8, EVENT_58H)		\
 678	__PMC_EV(ARMV8, EVENT_59H)		\
 679	__PMC_EV(ARMV8, EVENT_5AH)		\
 680	__PMC_EV(ARMV8, EVENT_5BH)		\
 681	__PMC_EV(ARMV8, EVENT_5CH)		\
 682	__PMC_EV(ARMV8, EVENT_5DH)		\
 683	__PMC_EV(ARMV8, EVENT_5EH)		\
 684	__PMC_EV(ARMV8, EVENT_5FH)		\
 685	__PMC_EV(ARMV8, EVENT_60H)		\
 686	__PMC_EV(ARMV8, EVENT_61H)		\
 687	__PMC_EV(ARMV8, EVENT_62H)		\
 688	__PMC_EV(ARMV8, EVENT_63H)		\
 689	__PMC_EV(ARMV8, EVENT_64H)		\
 690	__PMC_EV(ARMV8, EVENT_65H)		\
 691	__PMC_EV(ARMV8, EVENT_66H)		\
 692	__PMC_EV(ARMV8, EVENT_67H)		\
 693	__PMC_EV(ARMV8, EVENT_68H)		\
 694	__PMC_EV(ARMV8, EVENT_69H)		\
 695	__PMC_EV(ARMV8, EVENT_6AH)		\
 696	__PMC_EV(ARMV8, EVENT_6BH)		\
 697	__PMC_EV(ARMV8, EVENT_6CH)		\
 698	__PMC_EV(ARMV8, EVENT_6DH)		\
 699	__PMC_EV(ARMV8, EVENT_6EH)		\
 700	__PMC_EV(ARMV8, EVENT_6FH)		\
 701	__PMC_EV(ARMV8, EVENT_70H)		\
 702	__PMC_EV(ARMV8, EVENT_71H)		\
 703	__PMC_EV(ARMV8, EVENT_72H)		\
 704	__PMC_EV(ARMV8, EVENT_73H)		\
 705	__PMC_EV(ARMV8, EVENT_74H)		\
 706	__PMC_EV(ARMV8, EVENT_75H)		\
 707	__PMC_EV(ARMV8, EVENT_76H)		\
 708	__PMC_EV(ARMV8, EVENT_77H)		\
 709	__PMC_EV(ARMV8, EVENT_78H)		\
 710	__PMC_EV(ARMV8, EVENT_79H)		\
 711	__PMC_EV(ARMV8, EVENT_7AH)		\
 712	__PMC_EV(ARMV8, EVENT_7BH)		\
 713	__PMC_EV(ARMV8, EVENT_7CH)		\
 714	__PMC_EV(ARMV8, EVENT_7DH)		\
 715	__PMC_EV(ARMV8, EVENT_7EH)		\
 716	__PMC_EV(ARMV8, EVENT_7FH)		\
 717	__PMC_EV(ARMV8, EVENT_80H)		\
 718	__PMC_EV(ARMV8, EVENT_81H)		\
 719	__PMC_EV(ARMV8, EVENT_82H)		\
 720	__PMC_EV(ARMV8, EVENT_83H)		\
 721	__PMC_EV(ARMV8, EVENT_84H)		\
 722	__PMC_EV(ARMV8, EVENT_85H)		\
 723	__PMC_EV(ARMV8, EVENT_86H)		\
 724	__PMC_EV(ARMV8, EVENT_87H)		\
 725	__PMC_EV(ARMV8, EVENT_88H)		\
 726	__PMC_EV(ARMV8, EVENT_89H)		\
 727	__PMC_EV(ARMV8, EVENT_8AH)		\
 728	__PMC_EV(ARMV8, EVENT_8BH)		\
 729	__PMC_EV(ARMV8, EVENT_8CH)		\
 730	__PMC_EV(ARMV8, EVENT_8DH)		\
 731	__PMC_EV(ARMV8, EVENT_8EH)		\
 732	__PMC_EV(ARMV8, EVENT_8FH)		\
 733	__PMC_EV(ARMV8, EVENT_90H)		\
 734	__PMC_EV(ARMV8, EVENT_91H)		\
 735	__PMC_EV(ARMV8, EVENT_92H)		\
 736	__PMC_EV(ARMV8, EVENT_93H)		\
 737	__PMC_EV(ARMV8, EVENT_94H)		\
 738	__PMC_EV(ARMV8, EVENT_95H)		\
 739	__PMC_EV(ARMV8, EVENT_96H)		\
 740	__PMC_EV(ARMV8, EVENT_97H)		\
 741	__PMC_EV(ARMV8, EVENT_98H)		\
 742	__PMC_EV(ARMV8, EVENT_99H)		\
 743	__PMC_EV(ARMV8, EVENT_9AH)		\
 744	__PMC_EV(ARMV8, EVENT_9BH)		\
 745	__PMC_EV(ARMV8, EVENT_9CH)		\
 746	__PMC_EV(ARMV8, EVENT_9DH)		\
 747	__PMC_EV(ARMV8, EVENT_9EH)		\
 748	__PMC_EV(ARMV8, EVENT_9FH)		\
 749	__PMC_EV(ARMV8, EVENT_A0H)		\
 750	__PMC_EV(ARMV8, EVENT_A1H)		\
 751	__PMC_EV(ARMV8, EVENT_A2H)		\
 752	__PMC_EV(ARMV8, EVENT_A3H)		\
 753	__PMC_EV(ARMV8, EVENT_A4H)		\
 754	__PMC_EV(ARMV8, EVENT_A5H)		\
 755	__PMC_EV(ARMV8, EVENT_A6H)		\
 756	__PMC_EV(ARMV8, EVENT_A7H)		\
 757	__PMC_EV(ARMV8, EVENT_A8H)		\
 758	__PMC_EV(ARMV8, EVENT_A9H)		\
 759	__PMC_EV(ARMV8, EVENT_AAH)		\
 760	__PMC_EV(ARMV8, EVENT_ABH)		\
 761	__PMC_EV(ARMV8, EVENT_ACH)		\
 762	__PMC_EV(ARMV8, EVENT_ADH)		\
 763	__PMC_EV(ARMV8, EVENT_AEH)		\
 764	__PMC_EV(ARMV8, EVENT_AFH)		\
 765	__PMC_EV(ARMV8, EVENT_B0H)		\
 766	__PMC_EV(ARMV8, EVENT_B1H)		\
 767	__PMC_EV(ARMV8, EVENT_B2H)		\
 768	__PMC_EV(ARMV8, EVENT_B3H)		\
 769	__PMC_EV(ARMV8, EVENT_B4H)		\
 770	__PMC_EV(ARMV8, EVENT_B5H)		\
 771	__PMC_EV(ARMV8, EVENT_B6H)		\
 772	__PMC_EV(ARMV8, EVENT_B7H)		\
 773	__PMC_EV(ARMV8, EVENT_B8H)		\
 774	__PMC_EV(ARMV8, EVENT_B9H)		\
 775	__PMC_EV(ARMV8, EVENT_BAH)		\
 776	__PMC_EV(ARMV8, EVENT_BBH)		\
 777	__PMC_EV(ARMV8, EVENT_BCH)		\
 778	__PMC_EV(ARMV8, EVENT_BDH)		\
 779	__PMC_EV(ARMV8, EVENT_BEH)		\
 780	__PMC_EV(ARMV8, EVENT_BFH)		\
 781	__PMC_EV(ARMV8, EVENT_C0H)		\
 782	__PMC_EV(ARMV8, EVENT_C1H)		\
 783	__PMC_EV(ARMV8, EVENT_C2H)		\
 784	__PMC_EV(ARMV8, EVENT_C3H)		\
 785	__PMC_EV(ARMV8, EVENT_C4H)		\
 786	__PMC_EV(ARMV8, EVENT_C5H)		\
 787	__PMC_EV(ARMV8, EVENT_C6H)		\
 788	__PMC_EV(ARMV8, EVENT_C7H)		\
 789	__PMC_EV(ARMV8, EVENT_C8H)		\
 790	__PMC_EV(ARMV8, EVENT_C9H)		\
 791	__PMC_EV(ARMV8, EVENT_CAH)		\
 792	__PMC_EV(ARMV8, EVENT_CBH)		\
 793	__PMC_EV(ARMV8, EVENT_CCH)		\
 794	__PMC_EV(ARMV8, EVENT_CDH)		\
 795	__PMC_EV(ARMV8, EVENT_CEH)		\
 796	__PMC_EV(ARMV8, EVENT_CFH)		\
 797	__PMC_EV(ARMV8, EVENT_D0H)		\
 798	__PMC_EV(ARMV8, EVENT_D1H)		\
 799	__PMC_EV(ARMV8, EVENT_D2H)		\
 800	__PMC_EV(ARMV8, EVENT_D3H)		\
 801	__PMC_EV(ARMV8, EVENT_D4H)		\
 802	__PMC_EV(ARMV8, EVENT_D5H)		\
 803	__PMC_EV(ARMV8, EVENT_D6H)		\
 804	__PMC_EV(ARMV8, EVENT_D7H)		\
 805	__PMC_EV(ARMV8, EVENT_D8H)		\
 806	__PMC_EV(ARMV8, EVENT_D9H)		\
 807	__PMC_EV(ARMV8, EVENT_DAH)		\
 808	__PMC_EV(ARMV8, EVENT_DBH)		\
 809	__PMC_EV(ARMV8, EVENT_DCH)		\
 810	__PMC_EV(ARMV8, EVENT_DDH)		\
 811	__PMC_EV(ARMV8, EVENT_DEH)		\
 812	__PMC_EV(ARMV8, EVENT_DFH)		\
 813	__PMC_EV(ARMV8, EVENT_E0H)		\
 814	__PMC_EV(ARMV8, EVENT_E1H)		\
 815	__PMC_EV(ARMV8, EVENT_E2H)		\
 816	__PMC_EV(ARMV8, EVENT_E3H)		\
 817	__PMC_EV(ARMV8, EVENT_E4H)		\
 818	__PMC_EV(ARMV8, EVENT_E5H)		\
 819	__PMC_EV(ARMV8, EVENT_E6H)		\
 820	__PMC_EV(ARMV8, EVENT_E7H)		\
 821	__PMC_EV(ARMV8, EVENT_E8H)		\
 822	__PMC_EV(ARMV8, EVENT_E9H)		\
 823	__PMC_EV(ARMV8, EVENT_EAH)		\
 824	__PMC_EV(ARMV8, EVENT_EBH)		\
 825	__PMC_EV(ARMV8, EVENT_ECH)		\
 826	__PMC_EV(ARMV8, EVENT_EDH)		\
 827	__PMC_EV(ARMV8, EVENT_EEH)		\
 828	__PMC_EV(ARMV8, EVENT_EFH)		\
 829	__PMC_EV(ARMV8, EVENT_F0H)		\
 830	__PMC_EV(ARMV8, EVENT_F1H)		\
 831	__PMC_EV(ARMV8, EVENT_F2H)		\
 832	__PMC_EV(ARMV8, EVENT_F3H)		\
 833	__PMC_EV(ARMV8, EVENT_F4H)		\
 834	__PMC_EV(ARMV8, EVENT_F5H)		\
 835	__PMC_EV(ARMV8, EVENT_F6H)		\
 836	__PMC_EV(ARMV8, EVENT_F7H)		\
 837	__PMC_EV(ARMV8, EVENT_F8H)		\
 838	__PMC_EV(ARMV8, EVENT_F9H)		\
 839	__PMC_EV(ARMV8, EVENT_FAH)		\
 840	__PMC_EV(ARMV8, EVENT_FBH)		\
 841	__PMC_EV(ARMV8, EVENT_FCH)		\
 842	__PMC_EV(ARMV8, EVENT_FDH)		\
 843	__PMC_EV(ARMV8, EVENT_FEH)		\
 844	__PMC_EV(ARMV8, EVENT_FFH)		\
 845	__PMC_EV(ARMV8, EVENT_100H)		\
 846	__PMC_EV(ARMV8, EVENT_101H)		\
 847	__PMC_EV(ARMV8, EVENT_102H)		\
 848	__PMC_EV(ARMV8, EVENT_103H)		\
 849	__PMC_EV(ARMV8, EVENT_104H)		\
 850	__PMC_EV(ARMV8, EVENT_105H)		\
 851	__PMC_EV(ARMV8, EVENT_106H)		\
 852	__PMC_EV(ARMV8, EVENT_107H)		\
 853	__PMC_EV(ARMV8, EVENT_108H)		\
 854	__PMC_EV(ARMV8, EVENT_109H)		\
 855	__PMC_EV(ARMV8, EVENT_10AH)		\
 856	__PMC_EV(ARMV8, EVENT_10BH)		\
 857	__PMC_EV(ARMV8, EVENT_10CH)		\
 858	__PMC_EV(ARMV8, EVENT_10DH)		\
 859	__PMC_EV(ARMV8, EVENT_10EH)		\
 860	__PMC_EV(ARMV8, EVENT_10FH)		\
 861	__PMC_EV(ARMV8, EVENT_110H)		\
 862	__PMC_EV(ARMV8, EVENT_111H)		\
 863	__PMC_EV(ARMV8, EVENT_112H)		\
 864	__PMC_EV(ARMV8, EVENT_113H)		\
 865	__PMC_EV(ARMV8, EVENT_114H)		\
 866	__PMC_EV(ARMV8, EVENT_115H)		\
 867	__PMC_EV(ARMV8, EVENT_116H)		\
 868	__PMC_EV(ARMV8, EVENT_117H)		\
 869	__PMC_EV(ARMV8, EVENT_118H)		\
 870	__PMC_EV(ARMV8, EVENT_119H)		\
 871	__PMC_EV(ARMV8, EVENT_11AH)		\
 872	__PMC_EV(ARMV8, EVENT_11BH)		\
 873	__PMC_EV(ARMV8, EVENT_11CH)		\
 874	__PMC_EV(ARMV8, EVENT_11DH)		\
 875	__PMC_EV(ARMV8, EVENT_11EH)		\
 876	__PMC_EV(ARMV8, EVENT_11FH)		\
 877	__PMC_EV(ARMV8, EVENT_120H)		\
 878	__PMC_EV(ARMV8, EVENT_121H)		\
 879	__PMC_EV(ARMV8, EVENT_122H)		\
 880	__PMC_EV(ARMV8, EVENT_123H)		\
 881	__PMC_EV(ARMV8, EVENT_124H)		\
 882	__PMC_EV(ARMV8, EVENT_125H)		\
 883	__PMC_EV(ARMV8, EVENT_126H)		\
 884	__PMC_EV(ARMV8, EVENT_127H)		\
 885	__PMC_EV(ARMV8, EVENT_128H)		\
 886	__PMC_EV(ARMV8, EVENT_129H)		\
 887	__PMC_EV(ARMV8, EVENT_12AH)		\
 888	__PMC_EV(ARMV8, EVENT_12BH)		\
 889	__PMC_EV(ARMV8, EVENT_12CH)		\
 890	__PMC_EV(ARMV8, EVENT_12DH)		\
 891	__PMC_EV(ARMV8, EVENT_12EH)		\
 892	__PMC_EV(ARMV8, EVENT_12FH)		\
 893	__PMC_EV(ARMV8, EVENT_130H)		\
 894	__PMC_EV(ARMV8, EVENT_131H)		\
 895	__PMC_EV(ARMV8, EVENT_132H)		\
 896	__PMC_EV(ARMV8, EVENT_133H)		\
 897	__PMC_EV(ARMV8, EVENT_134H)		\
 898	__PMC_EV(ARMV8, EVENT_135H)		\
 899	__PMC_EV(ARMV8, EVENT_136H)		\
 900	__PMC_EV(ARMV8, EVENT_137H)		\
 901	__PMC_EV(ARMV8, EVENT_138H)		\
 902	__PMC_EV(ARMV8, EVENT_139H)		\
 903	__PMC_EV(ARMV8, EVENT_13AH)		\
 904	__PMC_EV(ARMV8, EVENT_13BH)		\
 905	__PMC_EV(ARMV8, EVENT_13CH)		\
 906	__PMC_EV(ARMV8, EVENT_13DH)		\
 907	__PMC_EV(ARMV8, EVENT_13EH)		\
 908	__PMC_EV(ARMV8, EVENT_13FH)		\
 909	__PMC_EV(ARMV8, EVENT_140H)		\
 910	__PMC_EV(ARMV8, EVENT_141H)		\
 911	__PMC_EV(ARMV8, EVENT_142H)		\
 912	__PMC_EV(ARMV8, EVENT_143H)		\
 913	__PMC_EV(ARMV8, EVENT_144H)		\
 914	__PMC_EV(ARMV8, EVENT_145H)		\
 915	__PMC_EV(ARMV8, EVENT_146H)		\
 916	__PMC_EV(ARMV8, EVENT_147H)		\
 917	__PMC_EV(ARMV8, EVENT_148H)		\
 918	__PMC_EV(ARMV8, EVENT_149H)		\
 919	__PMC_EV(ARMV8, EVENT_14AH)		\
 920	__PMC_EV(ARMV8, EVENT_14BH)		\
 921	__PMC_EV(ARMV8, EVENT_14CH)		\
 922	__PMC_EV(ARMV8, EVENT_14DH)		\
 923	__PMC_EV(ARMV8, EVENT_14EH)		\
 924	__PMC_EV(ARMV8, EVENT_14FH)		\
 925	__PMC_EV(ARMV8, EVENT_150H)		\
 926	__PMC_EV(ARMV8, EVENT_151H)		\
 927	__PMC_EV(ARMV8, EVENT_152H)		\
 928	__PMC_EV(ARMV8, EVENT_153H)		\
 929	__PMC_EV(ARMV8, EVENT_154H)		\
 930	__PMC_EV(ARMV8, EVENT_155H)		\
 931	__PMC_EV(ARMV8, EVENT_156H)		\
 932	__PMC_EV(ARMV8, EVENT_157H)		\
 933	__PMC_EV(ARMV8, EVENT_158H)		\
 934	__PMC_EV(ARMV8, EVENT_159H)		\
 935	__PMC_EV(ARMV8, EVENT_15AH)		\
 936	__PMC_EV(ARMV8, EVENT_15BH)		\
 937	__PMC_EV(ARMV8, EVENT_15CH)		\
 938	__PMC_EV(ARMV8, EVENT_15DH)		\
 939	__PMC_EV(ARMV8, EVENT_15EH)		\
 940	__PMC_EV(ARMV8, EVENT_15FH)		\
 941	__PMC_EV(ARMV8, EVENT_160H)		\
 942	__PMC_EV(ARMV8, EVENT_161H)		\
 943	__PMC_EV(ARMV8, EVENT_162H)		\
 944	__PMC_EV(ARMV8, EVENT_163H)		\
 945	__PMC_EV(ARMV8, EVENT_164H)		\
 946	__PMC_EV(ARMV8, EVENT_165H)		\
 947	__PMC_EV(ARMV8, EVENT_166H)		\
 948	__PMC_EV(ARMV8, EVENT_167H)		\
 949	__PMC_EV(ARMV8, EVENT_168H)		\
 950	__PMC_EV(ARMV8, EVENT_169H)		\
 951	__PMC_EV(ARMV8, EVENT_16AH)		\
 952	__PMC_EV(ARMV8, EVENT_16BH)		\
 953	__PMC_EV(ARMV8, EVENT_16CH)		\
 954	__PMC_EV(ARMV8, EVENT_16DH)		\
 955	__PMC_EV(ARMV8, EVENT_16EH)		\
 956	__PMC_EV(ARMV8, EVENT_16FH)		\
 957	__PMC_EV(ARMV8, EVENT_170H)		\
 958	__PMC_EV(ARMV8, EVENT_171H)		\
 959	__PMC_EV(ARMV8, EVENT_172H)		\
 960	__PMC_EV(ARMV8, EVENT_173H)		\
 961	__PMC_EV(ARMV8, EVENT_174H)		\
 962	__PMC_EV(ARMV8, EVENT_175H)		\
 963	__PMC_EV(ARMV8, EVENT_176H)		\
 964	__PMC_EV(ARMV8, EVENT_177H)		\
 965	__PMC_EV(ARMV8, EVENT_178H)		\
 966	__PMC_EV(ARMV8, EVENT_179H)		\
 967	__PMC_EV(ARMV8, EVENT_17AH)		\
 968	__PMC_EV(ARMV8, EVENT_17BH)		\
 969	__PMC_EV(ARMV8, EVENT_17CH)		\
 970	__PMC_EV(ARMV8, EVENT_17DH)		\
 971	__PMC_EV(ARMV8, EVENT_17EH)		\
 972	__PMC_EV(ARMV8, EVENT_17FH)		\
 973	__PMC_EV(ARMV8, EVENT_180H)		\
 974	__PMC_EV(ARMV8, EVENT_181H)		\
 975	__PMC_EV(ARMV8, EVENT_182H)		\
 976	__PMC_EV(ARMV8, EVENT_183H)		\
 977	__PMC_EV(ARMV8, EVENT_184H)		\
 978	__PMC_EV(ARMV8, EVENT_185H)		\
 979	__PMC_EV(ARMV8, EVENT_186H)		\
 980	__PMC_EV(ARMV8, EVENT_187H)		\
 981	__PMC_EV(ARMV8, EVENT_188H)		\
 982	__PMC_EV(ARMV8, EVENT_189H)		\
 983	__PMC_EV(ARMV8, EVENT_18AH)		\
 984	__PMC_EV(ARMV8, EVENT_18BH)		\
 985	__PMC_EV(ARMV8, EVENT_18CH)		\
 986	__PMC_EV(ARMV8, EVENT_18DH)		\
 987	__PMC_EV(ARMV8, EVENT_18EH)		\
 988	__PMC_EV(ARMV8, EVENT_18FH)		\
 989	__PMC_EV(ARMV8, EVENT_190H)		\
 990	__PMC_EV(ARMV8, EVENT_191H)		\
 991	__PMC_EV(ARMV8, EVENT_192H)		\
 992	__PMC_EV(ARMV8, EVENT_193H)		\
 993	__PMC_EV(ARMV8, EVENT_194H)		\
 994	__PMC_EV(ARMV8, EVENT_195H)		\
 995	__PMC_EV(ARMV8, EVENT_196H)		\
 996	__PMC_EV(ARMV8, EVENT_197H)		\
 997	__PMC_EV(ARMV8, EVENT_198H)		\
 998	__PMC_EV(ARMV8, EVENT_199H)		\
 999	__PMC_EV(ARMV8, EVENT_19AH)		\
1000	__PMC_EV(ARMV8, EVENT_19BH)		\
1001	__PMC_EV(ARMV8, EVENT_19CH)		\
1002	__PMC_EV(ARMV8, EVENT_19DH)		\
1003	__PMC_EV(ARMV8, EVENT_19EH)		\
1004	__PMC_EV(ARMV8, EVENT_19FH)		\
1005	__PMC_EV(ARMV8, EVENT_1A0H)		\
1006	__PMC_EV(ARMV8, EVENT_1A1H)		\
1007	__PMC_EV(ARMV8, EVENT_1A2H)		\
1008	__PMC_EV(ARMV8, EVENT_1A3H)		\
1009	__PMC_EV(ARMV8, EVENT_1A4H)		\
1010	__PMC_EV(ARMV8, EVENT_1A5H)		\
1011	__PMC_EV(ARMV8, EVENT_1A6H)		\
1012	__PMC_EV(ARMV8, EVENT_1A7H)		\
1013	__PMC_EV(ARMV8, EVENT_1A8H)		\
1014	__PMC_EV(ARMV8, EVENT_1A9H)		\
1015	__PMC_EV(ARMV8, EVENT_1AAH)		\
1016	__PMC_EV(ARMV8, EVENT_1ABH)		\
1017	__PMC_EV(ARMV8, EVENT_1ACH)		\
1018	__PMC_EV(ARMV8, EVENT_1ADH)		\
1019	__PMC_EV(ARMV8, EVENT_1AEH)		\
1020	__PMC_EV(ARMV8, EVENT_1AFH)		\
1021	__PMC_EV(ARMV8, EVENT_1B0H)		\
1022	__PMC_EV(ARMV8, EVENT_1B1H)		\
1023	__PMC_EV(ARMV8, EVENT_1B2H)		\
1024	__PMC_EV(ARMV8, EVENT_1B3H)		\
1025	__PMC_EV(ARMV8, EVENT_1B4H)		\
1026	__PMC_EV(ARMV8, EVENT_1B5H)		\
1027	__PMC_EV(ARMV8, EVENT_1B6H)		\
1028	__PMC_EV(ARMV8, EVENT_1B7H)		\
1029	__PMC_EV(ARMV8, EVENT_1B8H)		\
1030	__PMC_EV(ARMV8, EVENT_1B9H)		\
1031	__PMC_EV(ARMV8, EVENT_1BAH)		\
1032	__PMC_EV(ARMV8, EVENT_1BBH)		\
1033	__PMC_EV(ARMV8, EVENT_1BCH)		\
1034	__PMC_EV(ARMV8, EVENT_1BDH)		\
1035	__PMC_EV(ARMV8, EVENT_1BEH)		\
1036	__PMC_EV(ARMV8, EVENT_1BFH)		\
1037	__PMC_EV(ARMV8, EVENT_1C0H)		\
1038	__PMC_EV(ARMV8, EVENT_1C1H)		\
1039	__PMC_EV(ARMV8, EVENT_1C2H)		\
1040	__PMC_EV(ARMV8, EVENT_1C3H)		\
1041	__PMC_EV(ARMV8, EVENT_1C4H)		\
1042	__PMC_EV(ARMV8, EVENT_1C5H)		\
1043	__PMC_EV(ARMV8, EVENT_1C6H)		\
1044	__PMC_EV(ARMV8, EVENT_1C7H)		\
1045	__PMC_EV(ARMV8, EVENT_1C8H)		\
1046	__PMC_EV(ARMV8, EVENT_1C9H)		\
1047	__PMC_EV(ARMV8, EVENT_1CAH)		\
1048	__PMC_EV(ARMV8, EVENT_1CBH)		\
1049	__PMC_EV(ARMV8, EVENT_1CCH)		\
1050	__PMC_EV(ARMV8, EVENT_1CDH)		\
1051	__PMC_EV(ARMV8, EVENT_1CEH)		\
1052	__PMC_EV(ARMV8, EVENT_1CFH)		\
1053	__PMC_EV(ARMV8, EVENT_1D0H)		\
1054	__PMC_EV(ARMV8, EVENT_1D1H)		\
1055	__PMC_EV(ARMV8, EVENT_1D2H)		\
1056	__PMC_EV(ARMV8, EVENT_1D3H)		\
1057	__PMC_EV(ARMV8, EVENT_1D4H)		\
1058	__PMC_EV(ARMV8, EVENT_1D5H)		\
1059	__PMC_EV(ARMV8, EVENT_1D6H)		\
1060	__PMC_EV(ARMV8, EVENT_1D7H)		\
1061	__PMC_EV(ARMV8, EVENT_1D8H)		\
1062	__PMC_EV(ARMV8, EVENT_1D9H)		\
1063	__PMC_EV(ARMV8, EVENT_1DAH)		\
1064	__PMC_EV(ARMV8, EVENT_1DBH)		\
1065	__PMC_EV(ARMV8, EVENT_1DCH)		\
1066	__PMC_EV(ARMV8, EVENT_1DDH)		\
1067	__PMC_EV(ARMV8, EVENT_1DEH)		\
1068	__PMC_EV(ARMV8, EVENT_1DFH)		\
1069	__PMC_EV(ARMV8, EVENT_1E0H)		\
1070	__PMC_EV(ARMV8, EVENT_1E1H)		\
1071	__PMC_EV(ARMV8, EVENT_1E2H)		\
1072	__PMC_EV(ARMV8, EVENT_1E3H)		\
1073	__PMC_EV(ARMV8, EVENT_1E4H)		\
1074	__PMC_EV(ARMV8, EVENT_1E5H)		\
1075	__PMC_EV(ARMV8, EVENT_1E6H)		\
1076	__PMC_EV(ARMV8, EVENT_1E7H)		\
1077	__PMC_EV(ARMV8, EVENT_1E8H)		\
1078	__PMC_EV(ARMV8, EVENT_1E9H)		\
1079	__PMC_EV(ARMV8, EVENT_1EAH)		\
1080	__PMC_EV(ARMV8, EVENT_1EBH)		\
1081	__PMC_EV(ARMV8, EVENT_1ECH)		\
1082	__PMC_EV(ARMV8, EVENT_1EDH)		\
1083	__PMC_EV(ARMV8, EVENT_1EEH)		\
1084	__PMC_EV(ARMV8, EVENT_1EFH)		\
1085	__PMC_EV(ARMV8, EVENT_1F0H)		\
1086	__PMC_EV(ARMV8, EVENT_1F1H)		\
1087	__PMC_EV(ARMV8, EVENT_1F2H)		\
1088	__PMC_EV(ARMV8, EVENT_1F3H)		\
1089	__PMC_EV(ARMV8, EVENT_1F4H)		\
1090	__PMC_EV(ARMV8, EVENT_1F5H)		\
1091	__PMC_EV(ARMV8, EVENT_1F6H)		\
1092	__PMC_EV(ARMV8, EVENT_1F7H)		\
1093	__PMC_EV(ARMV8, EVENT_1F8H)		\
1094	__PMC_EV(ARMV8, EVENT_1F9H)		\
1095	__PMC_EV(ARMV8, EVENT_1FAH)		\
1096	__PMC_EV(ARMV8, EVENT_1FBH)		\
1097	__PMC_EV(ARMV8, EVENT_1FCH)		\
1098	__PMC_EV(ARMV8, EVENT_1FDH)		\
1099	__PMC_EV(ARMV8, EVENT_1FEH)		\
1100	__PMC_EV(ARMV8, EVENT_1FFH)		\
1101	__PMC_EV(ARMV8, EVENT_200H)		\
1102	__PMC_EV(ARMV8, EVENT_201H)		\
1103	__PMC_EV(ARMV8, EVENT_202H)		\
1104	__PMC_EV(ARMV8, EVENT_203H)		\
1105	__PMC_EV(ARMV8, EVENT_204H)		\
1106	__PMC_EV(ARMV8, EVENT_205H)		\
1107	__PMC_EV(ARMV8, EVENT_206H)		\
1108	__PMC_EV(ARMV8, EVENT_207H)		\
1109	__PMC_EV(ARMV8, EVENT_208H)		\
1110	__PMC_EV(ARMV8, EVENT_209H)		\
1111	__PMC_EV(ARMV8, EVENT_20AH)		\
1112	__PMC_EV(ARMV8, EVENT_20BH)		\
1113	__PMC_EV(ARMV8, EVENT_20CH)		\
1114	__PMC_EV(ARMV8, EVENT_20DH)		\
1115	__PMC_EV(ARMV8, EVENT_20EH)		\
1116	__PMC_EV(ARMV8, EVENT_20FH)		\
1117	__PMC_EV(ARMV8, EVENT_210H)		\
1118	__PMC_EV(ARMV8, EVENT_211H)		\
1119	__PMC_EV(ARMV8, EVENT_212H)		\
1120	__PMC_EV(ARMV8, EVENT_213H)		\
1121	__PMC_EV(ARMV8, EVENT_214H)		\
1122	__PMC_EV(ARMV8, EVENT_215H)		\
1123	__PMC_EV(ARMV8, EVENT_216H)		\
1124	__PMC_EV(ARMV8, EVENT_217H)		\
1125	__PMC_EV(ARMV8, EVENT_218H)		\
1126	__PMC_EV(ARMV8, EVENT_219H)		\
1127	__PMC_EV(ARMV8, EVENT_21AH)		\
1128	__PMC_EV(ARMV8, EVENT_21BH)		\
1129	__PMC_EV(ARMV8, EVENT_21CH)		\
1130	__PMC_EV(ARMV8, EVENT_21DH)		\
1131	__PMC_EV(ARMV8, EVENT_21EH)		\
1132	__PMC_EV(ARMV8, EVENT_21FH)		\
1133	__PMC_EV(ARMV8, EVENT_220H)		\
1134	__PMC_EV(ARMV8, EVENT_221H)		\
1135	__PMC_EV(ARMV8, EVENT_222H)		\
1136	__PMC_EV(ARMV8, EVENT_223H)		\
1137	__PMC_EV(ARMV8, EVENT_224H)		\
1138	__PMC_EV(ARMV8, EVENT_225H)		\
1139	__PMC_EV(ARMV8, EVENT_226H)		\
1140	__PMC_EV(ARMV8, EVENT_227H)		\
1141	__PMC_EV(ARMV8, EVENT_228H)		\
1142	__PMC_EV(ARMV8, EVENT_229H)		\
1143	__PMC_EV(ARMV8, EVENT_22AH)		\
1144	__PMC_EV(ARMV8, EVENT_22BH)		\
1145	__PMC_EV(ARMV8, EVENT_22CH)		\
1146	__PMC_EV(ARMV8, EVENT_22DH)		\
1147	__PMC_EV(ARMV8, EVENT_22EH)		\
1148	__PMC_EV(ARMV8, EVENT_22FH)		\
1149	__PMC_EV(ARMV8, EVENT_230H)		\
1150	__PMC_EV(ARMV8, EVENT_231H)		\
1151	__PMC_EV(ARMV8, EVENT_232H)		\
1152	__PMC_EV(ARMV8, EVENT_233H)		\
1153	__PMC_EV(ARMV8, EVENT_234H)		\
1154	__PMC_EV(ARMV8, EVENT_235H)		\
1155	__PMC_EV(ARMV8, EVENT_236H)		\
1156	__PMC_EV(ARMV8, EVENT_237H)		\
1157	__PMC_EV(ARMV8, EVENT_238H)		\
1158	__PMC_EV(ARMV8, EVENT_239H)		\
1159	__PMC_EV(ARMV8, EVENT_23AH)		\
1160	__PMC_EV(ARMV8, EVENT_23BH)		\
1161	__PMC_EV(ARMV8, EVENT_23CH)		\
1162	__PMC_EV(ARMV8, EVENT_23DH)		\
1163	__PMC_EV(ARMV8, EVENT_23EH)		\
1164	__PMC_EV(ARMV8, EVENT_23FH)		\
1165	__PMC_EV(ARMV8, EVENT_240H)		\
1166	__PMC_EV(ARMV8, EVENT_241H)		\
1167	__PMC_EV(ARMV8, EVENT_242H)		\
1168	__PMC_EV(ARMV8, EVENT_243H)		\
1169	__PMC_EV(ARMV8, EVENT_244H)		\
1170	__PMC_EV(ARMV8, EVENT_245H)		\
1171	__PMC_EV(ARMV8, EVENT_246H)		\
1172	__PMC_EV(ARMV8, EVENT_247H)		\
1173	__PMC_EV(ARMV8, EVENT_248H)		\
1174	__PMC_EV(ARMV8, EVENT_249H)		\
1175	__PMC_EV(ARMV8, EVENT_24AH)		\
1176	__PMC_EV(ARMV8, EVENT_24BH)		\
1177	__PMC_EV(ARMV8, EVENT_24CH)		\
1178	__PMC_EV(ARMV8, EVENT_24DH)		\
1179	__PMC_EV(ARMV8, EVENT_24EH)		\
1180	__PMC_EV(ARMV8, EVENT_24FH)		\
1181	__PMC_EV(ARMV8, EVENT_250H)		\
1182	__PMC_EV(ARMV8, EVENT_251H)		\
1183	__PMC_EV(ARMV8, EVENT_252H)		\
1184	__PMC_EV(ARMV8, EVENT_253H)		\
1185	__PMC_EV(ARMV8, EVENT_254H)		\
1186	__PMC_EV(ARMV8, EVENT_255H)		\
1187	__PMC_EV(ARMV8, EVENT_256H)		\
1188	__PMC_EV(ARMV8, EVENT_257H)		\
1189	__PMC_EV(ARMV8, EVENT_258H)		\
1190	__PMC_EV(ARMV8, EVENT_259H)		\
1191	__PMC_EV(ARMV8, EVENT_25AH)		\
1192	__PMC_EV(ARMV8, EVENT_25BH)		\
1193	__PMC_EV(ARMV8, EVENT_25CH)		\
1194	__PMC_EV(ARMV8, EVENT_25DH)		\
1195	__PMC_EV(ARMV8, EVENT_25EH)		\
1196	__PMC_EV(ARMV8, EVENT_25FH)		\
1197	__PMC_EV(ARMV8, EVENT_260H)		\
1198	__PMC_EV(ARMV8, EVENT_261H)		\
1199	__PMC_EV(ARMV8, EVENT_262H)		\
1200	__PMC_EV(ARMV8, EVENT_263H)		\
1201	__PMC_EV(ARMV8, EVENT_264H)		\
1202	__PMC_EV(ARMV8, EVENT_265H)		\
1203	__PMC_EV(ARMV8, EVENT_266H)		\
1204	__PMC_EV(ARMV8, EVENT_267H)		\
1205	__PMC_EV(ARMV8, EVENT_268H)		\
1206	__PMC_EV(ARMV8, EVENT_269H)		\
1207	__PMC_EV(ARMV8, EVENT_26AH)		\
1208	__PMC_EV(ARMV8, EVENT_26BH)		\
1209	__PMC_EV(ARMV8, EVENT_26CH)		\
1210	__PMC_EV(ARMV8, EVENT_26DH)		\
1211	__PMC_EV(ARMV8, EVENT_26EH)		\
1212	__PMC_EV(ARMV8, EVENT_26FH)		\
1213	__PMC_EV(ARMV8, EVENT_270H)		\
1214	__PMC_EV(ARMV8, EVENT_271H)		\
1215	__PMC_EV(ARMV8, EVENT_272H)		\
1216	__PMC_EV(ARMV8, EVENT_273H)		\
1217	__PMC_EV(ARMV8, EVENT_274H)		\
1218	__PMC_EV(ARMV8, EVENT_275H)		\
1219	__PMC_EV(ARMV8, EVENT_276H)		\
1220	__PMC_EV(ARMV8, EVENT_277H)		\
1221	__PMC_EV(ARMV8, EVENT_278H)		\
1222	__PMC_EV(ARMV8, EVENT_279H)		\
1223	__PMC_EV(ARMV8, EVENT_27AH)		\
1224	__PMC_EV(ARMV8, EVENT_27BH)		\
1225	__PMC_EV(ARMV8, EVENT_27CH)		\
1226	__PMC_EV(ARMV8, EVENT_27DH)		\
1227	__PMC_EV(ARMV8, EVENT_27EH)		\
1228	__PMC_EV(ARMV8, EVENT_27FH)		\
1229	__PMC_EV(ARMV8, EVENT_280H)		\
1230	__PMC_EV(ARMV8, EVENT_281H)		\
1231	__PMC_EV(ARMV8, EVENT_282H)		\
1232	__PMC_EV(ARMV8, EVENT_283H)		\
1233	__PMC_EV(ARMV8, EVENT_284H)		\
1234	__PMC_EV(ARMV8, EVENT_285H)		\
1235	__PMC_EV(ARMV8, EVENT_286H)		\
1236	__PMC_EV(ARMV8, EVENT_287H)		\
1237	__PMC_EV(ARMV8, EVENT_288H)		\
1238	__PMC_EV(ARMV8, EVENT_289H)		\
1239	__PMC_EV(ARMV8, EVENT_28AH)		\
1240	__PMC_EV(ARMV8, EVENT_28BH)		\
1241	__PMC_EV(ARMV8, EVENT_28CH)		\
1242	__PMC_EV(ARMV8, EVENT_28DH)		\
1243	__PMC_EV(ARMV8, EVENT_28EH)		\
1244	__PMC_EV(ARMV8, EVENT_28FH)		\
1245	__PMC_EV(ARMV8, EVENT_290H)		\
1246	__PMC_EV(ARMV8, EVENT_291H)		\
1247	__PMC_EV(ARMV8, EVENT_292H)		\
1248	__PMC_EV(ARMV8, EVENT_293H)		\
1249	__PMC_EV(ARMV8, EVENT_294H)		\
1250	__PMC_EV(ARMV8, EVENT_295H)		\
1251	__PMC_EV(ARMV8, EVENT_296H)		\
1252	__PMC_EV(ARMV8, EVENT_297H)		\
1253	__PMC_EV(ARMV8, EVENT_298H)		\
1254	__PMC_EV(ARMV8, EVENT_299H)		\
1255	__PMC_EV(ARMV8, EVENT_29AH)		\
1256	__PMC_EV(ARMV8, EVENT_29BH)		\
1257	__PMC_EV(ARMV8, EVENT_29CH)		\
1258	__PMC_EV(ARMV8, EVENT_29DH)		\
1259	__PMC_EV(ARMV8, EVENT_29EH)		\
1260	__PMC_EV(ARMV8, EVENT_29FH)		\
1261	__PMC_EV(ARMV8, EVENT_2A0H)		\
1262	__PMC_EV(ARMV8, EVENT_2A1H)		\
1263	__PMC_EV(ARMV8, EVENT_2A2H)		\
1264	__PMC_EV(ARMV8, EVENT_2A3H)		\
1265	__PMC_EV(ARMV8, EVENT_2A4H)		\
1266	__PMC_EV(ARMV8, EVENT_2A5H)		\
1267	__PMC_EV(ARMV8, EVENT_2A6H)		\
1268	__PMC_EV(ARMV8, EVENT_2A7H)		\
1269	__PMC_EV(ARMV8, EVENT_2A8H)		\
1270	__PMC_EV(ARMV8, EVENT_2A9H)		\
1271	__PMC_EV(ARMV8, EVENT_2AAH)		\
1272	__PMC_EV(ARMV8, EVENT_2ABH)		\
1273	__PMC_EV(ARMV8, EVENT_2ACH)		\
1274	__PMC_EV(ARMV8, EVENT_2ADH)		\
1275	__PMC_EV(ARMV8, EVENT_2AEH)		\
1276	__PMC_EV(ARMV8, EVENT_2AFH)		\
1277	__PMC_EV(ARMV8, EVENT_2B0H)		\
1278	__PMC_EV(ARMV8, EVENT_2B1H)		\
1279	__PMC_EV(ARMV8, EVENT_2B2H)		\
1280	__PMC_EV(ARMV8, EVENT_2B3H)		\
1281	__PMC_EV(ARMV8, EVENT_2B4H)		\
1282	__PMC_EV(ARMV8, EVENT_2B5H)		\
1283	__PMC_EV(ARMV8, EVENT_2B6H)		\
1284	__PMC_EV(ARMV8, EVENT_2B7H)		\
1285	__PMC_EV(ARMV8, EVENT_2B8H)		\
1286	__PMC_EV(ARMV8, EVENT_2B9H)		\
1287	__PMC_EV(ARMV8, EVENT_2BAH)		\
1288	__PMC_EV(ARMV8, EVENT_2BBH)		\
1289	__PMC_EV(ARMV8, EVENT_2BCH)		\
1290	__PMC_EV(ARMV8, EVENT_2BDH)		\
1291	__PMC_EV(ARMV8, EVENT_2BEH)		\
1292	__PMC_EV(ARMV8, EVENT_2BFH)		\
1293	__PMC_EV(ARMV8, EVENT_2C0H)		\
1294	__PMC_EV(ARMV8, EVENT_2C1H)		\
1295	__PMC_EV(ARMV8, EVENT_2C2H)		\
1296	__PMC_EV(ARMV8, EVENT_2C3H)		\
1297	__PMC_EV(ARMV8, EVENT_2C4H)		\
1298	__PMC_EV(ARMV8, EVENT_2C5H)		\
1299	__PMC_EV(ARMV8, EVENT_2C6H)		\
1300	__PMC_EV(ARMV8, EVENT_2C7H)		\
1301	__PMC_EV(ARMV8, EVENT_2C8H)		\
1302	__PMC_EV(ARMV8, EVENT_2C9H)		\
1303	__PMC_EV(ARMV8, EVENT_2CAH)		\
1304	__PMC_EV(ARMV8, EVENT_2CBH)		\
1305	__PMC_EV(ARMV8, EVENT_2CCH)		\
1306	__PMC_EV(ARMV8, EVENT_2CDH)		\
1307	__PMC_EV(ARMV8, EVENT_2CEH)		\
1308	__PMC_EV(ARMV8, EVENT_2CFH)		\
1309	__PMC_EV(ARMV8, EVENT_2D0H)		\
1310	__PMC_EV(ARMV8, EVENT_2D1H)		\
1311	__PMC_EV(ARMV8, EVENT_2D2H)		\
1312	__PMC_EV(ARMV8, EVENT_2D3H)		\
1313	__PMC_EV(ARMV8, EVENT_2D4H)		\
1314	__PMC_EV(ARMV8, EVENT_2D5H)		\
1315	__PMC_EV(ARMV8, EVENT_2D6H)		\
1316	__PMC_EV(ARMV8, EVENT_2D7H)		\
1317	__PMC_EV(ARMV8, EVENT_2D8H)		\
1318	__PMC_EV(ARMV8, EVENT_2D9H)		\
1319	__PMC_EV(ARMV8, EVENT_2DAH)		\
1320	__PMC_EV(ARMV8, EVENT_2DBH)		\
1321	__PMC_EV(ARMV8, EVENT_2DCH)		\
1322	__PMC_EV(ARMV8, EVENT_2DDH)		\
1323	__PMC_EV(ARMV8, EVENT_2DEH)		\
1324	__PMC_EV(ARMV8, EVENT_2DFH)		\
1325	__PMC_EV(ARMV8, EVENT_2E0H)		\
1326	__PMC_EV(ARMV8, EVENT_2E1H)		\
1327	__PMC_EV(ARMV8, EVENT_2E2H)		\
1328	__PMC_EV(ARMV8, EVENT_2E3H)		\
1329	__PMC_EV(ARMV8, EVENT_2E4H)		\
1330	__PMC_EV(ARMV8, EVENT_2E5H)		\
1331	__PMC_EV(ARMV8, EVENT_2E6H)		\
1332	__PMC_EV(ARMV8, EVENT_2E7H)		\
1333	__PMC_EV(ARMV8, EVENT_2E8H)		\
1334	__PMC_EV(ARMV8, EVENT_2E9H)		\
1335	__PMC_EV(ARMV8, EVENT_2EAH)		\
1336	__PMC_EV(ARMV8, EVENT_2EBH)		\
1337	__PMC_EV(ARMV8, EVENT_2ECH)		\
1338	__PMC_EV(ARMV8, EVENT_2EDH)		\
1339	__PMC_EV(ARMV8, EVENT_2EEH)		\
1340	__PMC_EV(ARMV8, EVENT_2EFH)		\
1341	__PMC_EV(ARMV8, EVENT_2F0H)		\
1342	__PMC_EV(ARMV8, EVENT_2F1H)		\
1343	__PMC_EV(ARMV8, EVENT_2F2H)		\
1344	__PMC_EV(ARMV8, EVENT_2F3H)		\
1345	__PMC_EV(ARMV8, EVENT_2F4H)		\
1346	__PMC_EV(ARMV8, EVENT_2F5H)		\
1347	__PMC_EV(ARMV8, EVENT_2F6H)		\
1348	__PMC_EV(ARMV8, EVENT_2F7H)		\
1349	__PMC_EV(ARMV8, EVENT_2F8H)		\
1350	__PMC_EV(ARMV8, EVENT_2F9H)		\
1351	__PMC_EV(ARMV8, EVENT_2FAH)		\
1352	__PMC_EV(ARMV8, EVENT_2FBH)		\
1353	__PMC_EV(ARMV8, EVENT_2FCH)		\
1354	__PMC_EV(ARMV8, EVENT_2FDH)		\
1355	__PMC_EV(ARMV8, EVENT_2FEH)		\
1356	__PMC_EV(ARMV8, EVENT_2FFH)		\
1357	__PMC_EV(ARMV8, EVENT_300H)		\
1358	__PMC_EV(ARMV8, EVENT_301H)		\
1359	__PMC_EV(ARMV8, EVENT_302H)		\
1360	__PMC_EV(ARMV8, EVENT_303H)		\
1361	__PMC_EV(ARMV8, EVENT_304H)		\
1362	__PMC_EV(ARMV8, EVENT_305H)		\
1363	__PMC_EV(ARMV8, EVENT_306H)		\
1364	__PMC_EV(ARMV8, EVENT_307H)		\
1365	__PMC_EV(ARMV8, EVENT_308H)		\
1366	__PMC_EV(ARMV8, EVENT_309H)		\
1367	__PMC_EV(ARMV8, EVENT_30AH)		\
1368	__PMC_EV(ARMV8, EVENT_30BH)		\
1369	__PMC_EV(ARMV8, EVENT_30CH)		\
1370	__PMC_EV(ARMV8, EVENT_30DH)		\
1371	__PMC_EV(ARMV8, EVENT_30EH)		\
1372	__PMC_EV(ARMV8, EVENT_30FH)		\
1373	__PMC_EV(ARMV8, EVENT_310H)		\
1374	__PMC_EV(ARMV8, EVENT_311H)		\
1375	__PMC_EV(ARMV8, EVENT_312H)		\
1376	__PMC_EV(ARMV8, EVENT_313H)		\
1377	__PMC_EV(ARMV8, EVENT_314H)		\
1378	__PMC_EV(ARMV8, EVENT_315H)		\
1379	__PMC_EV(ARMV8, EVENT_316H)		\
1380	__PMC_EV(ARMV8, EVENT_317H)		\
1381	__PMC_EV(ARMV8, EVENT_318H)		\
1382	__PMC_EV(ARMV8, EVENT_319H)		\
1383	__PMC_EV(ARMV8, EVENT_31AH)		\
1384	__PMC_EV(ARMV8, EVENT_31BH)		\
1385	__PMC_EV(ARMV8, EVENT_31CH)		\
1386	__PMC_EV(ARMV8, EVENT_31DH)		\
1387	__PMC_EV(ARMV8, EVENT_31EH)		\
1388	__PMC_EV(ARMV8, EVENT_31FH)		\
1389	__PMC_EV(ARMV8, EVENT_320H)		\
1390	__PMC_EV(ARMV8, EVENT_321H)		\
1391	__PMC_EV(ARMV8, EVENT_322H)		\
1392	__PMC_EV(ARMV8, EVENT_323H)		\
1393	__PMC_EV(ARMV8, EVENT_324H)		\
1394	__PMC_EV(ARMV8, EVENT_325H)		\
1395	__PMC_EV(ARMV8, EVENT_326H)		\
1396	__PMC_EV(ARMV8, EVENT_327H)		\
1397	__PMC_EV(ARMV8, EVENT_328H)		\
1398	__PMC_EV(ARMV8, EVENT_329H)		\
1399	__PMC_EV(ARMV8, EVENT_32AH)		\
1400	__PMC_EV(ARMV8, EVENT_32BH)		\
1401	__PMC_EV(ARMV8, EVENT_32CH)		\
1402	__PMC_EV(ARMV8, EVENT_32DH)		\
1403	__PMC_EV(ARMV8, EVENT_32EH)		\
1404	__PMC_EV(ARMV8, EVENT_32FH)		\
1405	__PMC_EV(ARMV8, EVENT_330H)		\
1406	__PMC_EV(ARMV8, EVENT_331H)		\
1407	__PMC_EV(ARMV8, EVENT_332H)		\
1408	__PMC_EV(ARMV8, EVENT_333H)		\
1409	__PMC_EV(ARMV8, EVENT_334H)		\
1410	__PMC_EV(ARMV8, EVENT_335H)		\
1411	__PMC_EV(ARMV8, EVENT_336H)		\
1412	__PMC_EV(ARMV8, EVENT_337H)		\
1413	__PMC_EV(ARMV8, EVENT_338H)		\
1414	__PMC_EV(ARMV8, EVENT_339H)		\
1415	__PMC_EV(ARMV8, EVENT_33AH)		\
1416	__PMC_EV(ARMV8, EVENT_33BH)		\
1417	__PMC_EV(ARMV8, EVENT_33CH)		\
1418	__PMC_EV(ARMV8, EVENT_33DH)		\
1419	__PMC_EV(ARMV8, EVENT_33EH)		\
1420	__PMC_EV(ARMV8, EVENT_33FH)		\
1421	__PMC_EV(ARMV8, EVENT_340H)		\
1422	__PMC_EV(ARMV8, EVENT_341H)		\
1423	__PMC_EV(ARMV8, EVENT_342H)		\
1424	__PMC_EV(ARMV8, EVENT_343H)		\
1425	__PMC_EV(ARMV8, EVENT_344H)		\
1426	__PMC_EV(ARMV8, EVENT_345H)		\
1427	__PMC_EV(ARMV8, EVENT_346H)		\
1428	__PMC_EV(ARMV8, EVENT_347H)		\
1429	__PMC_EV(ARMV8, EVENT_348H)		\
1430	__PMC_EV(ARMV8, EVENT_349H)		\
1431	__PMC_EV(ARMV8, EVENT_34AH)		\
1432	__PMC_EV(ARMV8, EVENT_34BH)		\
1433	__PMC_EV(ARMV8, EVENT_34CH)		\
1434	__PMC_EV(ARMV8, EVENT_34DH)		\
1435	__PMC_EV(ARMV8, EVENT_34EH)		\
1436	__PMC_EV(ARMV8, EVENT_34FH)		\
1437	__PMC_EV(ARMV8, EVENT_350H)		\
1438	__PMC_EV(ARMV8, EVENT_351H)		\
1439	__PMC_EV(ARMV8, EVENT_352H)		\
1440	__PMC_EV(ARMV8, EVENT_353H)		\
1441	__PMC_EV(ARMV8, EVENT_354H)		\
1442	__PMC_EV(ARMV8, EVENT_355H)		\
1443	__PMC_EV(ARMV8, EVENT_356H)		\
1444	__PMC_EV(ARMV8, EVENT_357H)		\
1445	__PMC_EV(ARMV8, EVENT_358H)		\
1446	__PMC_EV(ARMV8, EVENT_359H)		\
1447	__PMC_EV(ARMV8, EVENT_35AH)		\
1448	__PMC_EV(ARMV8, EVENT_35BH)		\
1449	__PMC_EV(ARMV8, EVENT_35CH)		\
1450	__PMC_EV(ARMV8, EVENT_35DH)		\
1451	__PMC_EV(ARMV8, EVENT_35EH)		\
1452	__PMC_EV(ARMV8, EVENT_35FH)		\
1453	__PMC_EV(ARMV8, EVENT_360H)		\
1454	__PMC_EV(ARMV8, EVENT_361H)		\
1455	__PMC_EV(ARMV8, EVENT_362H)		\
1456	__PMC_EV(ARMV8, EVENT_363H)		\
1457	__PMC_EV(ARMV8, EVENT_364H)		\
1458	__PMC_EV(ARMV8, EVENT_365H)		\
1459	__PMC_EV(ARMV8, EVENT_366H)		\
1460	__PMC_EV(ARMV8, EVENT_367H)		\
1461	__PMC_EV(ARMV8, EVENT_368H)		\
1462	__PMC_EV(ARMV8, EVENT_369H)		\
1463	__PMC_EV(ARMV8, EVENT_36AH)		\
1464	__PMC_EV(ARMV8, EVENT_36BH)		\
1465	__PMC_EV(ARMV8, EVENT_36CH)		\
1466	__PMC_EV(ARMV8, EVENT_36DH)		\
1467	__PMC_EV(ARMV8, EVENT_36EH)		\
1468	__PMC_EV(ARMV8, EVENT_36FH)		\
1469	__PMC_EV(ARMV8, EVENT_370H)		\
1470	__PMC_EV(ARMV8, EVENT_371H)		\
1471	__PMC_EV(ARMV8, EVENT_372H)		\
1472	__PMC_EV(ARMV8, EVENT_373H)		\
1473	__PMC_EV(ARMV8, EVENT_374H)		\
1474	__PMC_EV(ARMV8, EVENT_375H)		\
1475	__PMC_EV(ARMV8, EVENT_376H)		\
1476	__PMC_EV(ARMV8, EVENT_377H)		\
1477	__PMC_EV(ARMV8, EVENT_378H)		\
1478	__PMC_EV(ARMV8, EVENT_379H)		\
1479	__PMC_EV(ARMV8, EVENT_37AH)		\
1480	__PMC_EV(ARMV8, EVENT_37BH)		\
1481	__PMC_EV(ARMV8, EVENT_37CH)		\
1482	__PMC_EV(ARMV8, EVENT_37DH)		\
1483	__PMC_EV(ARMV8, EVENT_37EH)		\
1484	__PMC_EV(ARMV8, EVENT_37FH)		\
1485	__PMC_EV(ARMV8, EVENT_380H)		\
1486	__PMC_EV(ARMV8, EVENT_381H)		\
1487	__PMC_EV(ARMV8, EVENT_382H)		\
1488	__PMC_EV(ARMV8, EVENT_383H)		\
1489	__PMC_EV(ARMV8, EVENT_384H)		\
1490	__PMC_EV(ARMV8, EVENT_385H)		\
1491	__PMC_EV(ARMV8, EVENT_386H)		\
1492	__PMC_EV(ARMV8, EVENT_387H)		\
1493	__PMC_EV(ARMV8, EVENT_388H)		\
1494	__PMC_EV(ARMV8, EVENT_389H)		\
1495	__PMC_EV(ARMV8, EVENT_38AH)		\
1496	__PMC_EV(ARMV8, EVENT_38BH)		\
1497	__PMC_EV(ARMV8, EVENT_38CH)		\
1498	__PMC_EV(ARMV8, EVENT_38DH)		\
1499	__PMC_EV(ARMV8, EVENT_38EH)		\
1500	__PMC_EV(ARMV8, EVENT_38FH)		\
1501	__PMC_EV(ARMV8, EVENT_390H)		\
1502	__PMC_EV(ARMV8, EVENT_391H)		\
1503	__PMC_EV(ARMV8, EVENT_392H)		\
1504	__PMC_EV(ARMV8, EVENT_393H)		\
1505	__PMC_EV(ARMV8, EVENT_394H)		\
1506	__PMC_EV(ARMV8, EVENT_395H)		\
1507	__PMC_EV(ARMV8, EVENT_396H)		\
1508	__PMC_EV(ARMV8, EVENT_397H)		\
1509	__PMC_EV(ARMV8, EVENT_398H)		\
1510	__PMC_EV(ARMV8, EVENT_399H)		\
1511	__PMC_EV(ARMV8, EVENT_39AH)		\
1512	__PMC_EV(ARMV8, EVENT_39BH)		\
1513	__PMC_EV(ARMV8, EVENT_39CH)		\
1514	__PMC_EV(ARMV8, EVENT_39DH)		\
1515	__PMC_EV(ARMV8, EVENT_39EH)		\
1516	__PMC_EV(ARMV8, EVENT_39FH)		\
1517	__PMC_EV(ARMV8, EVENT_3A0H)		\
1518	__PMC_EV(ARMV8, EVENT_3A1H)		\
1519	__PMC_EV(ARMV8, EVENT_3A2H)		\
1520	__PMC_EV(ARMV8, EVENT_3A3H)		\
1521	__PMC_EV(ARMV8, EVENT_3A4H)		\
1522	__PMC_EV(ARMV8, EVENT_3A5H)		\
1523	__PMC_EV(ARMV8, EVENT_3A6H)		\
1524	__PMC_EV(ARMV8, EVENT_3A7H)		\
1525	__PMC_EV(ARMV8, EVENT_3A8H)		\
1526	__PMC_EV(ARMV8, EVENT_3A9H)		\
1527	__PMC_EV(ARMV8, EVENT_3AAH)		\
1528	__PMC_EV(ARMV8, EVENT_3ABH)		\
1529	__PMC_EV(ARMV8, EVENT_3ACH)		\
1530	__PMC_EV(ARMV8, EVENT_3ADH)		\
1531	__PMC_EV(ARMV8, EVENT_3AEH)		\
1532	__PMC_EV(ARMV8, EVENT_3AFH)		\
1533	__PMC_EV(ARMV8, EVENT_3B0H)		\
1534	__PMC_EV(ARMV8, EVENT_3B1H)		\
1535	__PMC_EV(ARMV8, EVENT_3B2H)		\
1536	__PMC_EV(ARMV8, EVENT_3B3H)		\
1537	__PMC_EV(ARMV8, EVENT_3B4H)		\
1538	__PMC_EV(ARMV8, EVENT_3B5H)		\
1539	__PMC_EV(ARMV8, EVENT_3B6H)		\
1540	__PMC_EV(ARMV8, EVENT_3B7H)		\
1541	__PMC_EV(ARMV8, EVENT_3B8H)		\
1542	__PMC_EV(ARMV8, EVENT_3B9H)		\
1543	__PMC_EV(ARMV8, EVENT_3BAH)		\
1544	__PMC_EV(ARMV8, EVENT_3BBH)		\
1545	__PMC_EV(ARMV8, EVENT_3BCH)		\
1546	__PMC_EV(ARMV8, EVENT_3BDH)		\
1547	__PMC_EV(ARMV8, EVENT_3BEH)		\
1548	__PMC_EV(ARMV8, EVENT_3BFH)		\
1549	__PMC_EV(ARMV8, EVENT_3C0H)		\
1550	__PMC_EV(ARMV8, EVENT_3C1H)		\
1551	__PMC_EV(ARMV8, EVENT_3C2H)		\
1552	__PMC_EV(ARMV8, EVENT_3C3H)		\
1553	__PMC_EV(ARMV8, EVENT_3C4H)		\
1554	__PMC_EV(ARMV8, EVENT_3C5H)		\
1555	__PMC_EV(ARMV8, EVENT_3C6H)		\
1556	__PMC_EV(ARMV8, EVENT_3C7H)		\
1557	__PMC_EV(ARMV8, EVENT_3C8H)		\
1558	__PMC_EV(ARMV8, EVENT_3C9H)		\
1559	__PMC_EV(ARMV8, EVENT_3CAH)		\
1560	__PMC_EV(ARMV8, EVENT_3CBH)		\
1561	__PMC_EV(ARMV8, EVENT_3CCH)		\
1562	__PMC_EV(ARMV8, EVENT_3CDH)		\
1563	__PMC_EV(ARMV8, EVENT_3CEH)		\
1564	__PMC_EV(ARMV8, EVENT_3CFH)		\
1565	__PMC_EV(ARMV8, EVENT_3D0H)		\
1566	__PMC_EV(ARMV8, EVENT_3D1H)		\
1567	__PMC_EV(ARMV8, EVENT_3D2H)		\
1568	__PMC_EV(ARMV8, EVENT_3D3H)		\
1569	__PMC_EV(ARMV8, EVENT_3D4H)		\
1570	__PMC_EV(ARMV8, EVENT_3D5H)		\
1571	__PMC_EV(ARMV8, EVENT_3D6H)		\
1572	__PMC_EV(ARMV8, EVENT_3D7H)		\
1573	__PMC_EV(ARMV8, EVENT_3D8H)		\
1574	__PMC_EV(ARMV8, EVENT_3D9H)		\
1575	__PMC_EV(ARMV8, EVENT_3DAH)		\
1576	__PMC_EV(ARMV8, EVENT_3DBH)		\
1577	__PMC_EV(ARMV8, EVENT_3DCH)		\
1578	__PMC_EV(ARMV8, EVENT_3DDH)		\
1579	__PMC_EV(ARMV8, EVENT_3DEH)		\
1580	__PMC_EV(ARMV8, EVENT_3DFH)		\
1581	__PMC_EV(ARMV8, EVENT_3E0H)		\
1582	__PMC_EV(ARMV8, EVENT_3E1H)		\
1583	__PMC_EV(ARMV8, EVENT_3E2H)		\
1584	__PMC_EV(ARMV8, EVENT_3E3H)		\
1585	__PMC_EV(ARMV8, EVENT_3E4H)		\
1586	__PMC_EV(ARMV8, EVENT_3E5H)		\
1587	__PMC_EV(ARMV8, EVENT_3E6H)		\
1588	__PMC_EV(ARMV8, EVENT_3E7H)		\
1589	__PMC_EV(ARMV8, EVENT_3E8H)		\
1590	__PMC_EV(ARMV8, EVENT_3E9H)		\
1591	__PMC_EV(ARMV8, EVENT_3EAH)		\
1592	__PMC_EV(ARMV8, EVENT_3EBH)		\
1593	__PMC_EV(ARMV8, EVENT_3ECH)		\
1594	__PMC_EV(ARMV8, EVENT_3EDH)		\
1595	__PMC_EV(ARMV8, EVENT_3EEH)		\
1596	__PMC_EV(ARMV8, EVENT_3EFH)		\
1597	__PMC_EV(ARMV8, EVENT_3F0H)		\
1598	__PMC_EV(ARMV8, EVENT_3F1H)		\
1599	__PMC_EV(ARMV8, EVENT_3F2H)		\
1600	__PMC_EV(ARMV8, EVENT_3F3H)		\
1601	__PMC_EV(ARMV8, EVENT_3F4H)		\
1602	__PMC_EV(ARMV8, EVENT_3F5H)		\
1603	__PMC_EV(ARMV8, EVENT_3F6H)		\
1604	__PMC_EV(ARMV8, EVENT_3F7H)		\
1605	__PMC_EV(ARMV8, EVENT_3F8H)		\
1606	__PMC_EV(ARMV8, EVENT_3F9H)		\
1607	__PMC_EV(ARMV8, EVENT_3FAH)		\
1608	__PMC_EV(ARMV8, EVENT_3FBH)		\
1609	__PMC_EV(ARMV8, EVENT_3FCH)		\
1610	__PMC_EV(ARMV8, EVENT_3FDH)		\
1611	__PMC_EV(ARMV8, EVENT_3FEH)		\
1612	__PMC_EV(ARMV8, EVENT_3FFH)
1613
1614#define	PMC_EV_ARMV8_FIRST	PMC_EV_ARMV8_EVENT_00H
1615#define	PMC_EV_ARMV8_LAST	PMC_EV_ARMV8_EVENT_3FFH
1616
1617#define	__PMC_EV_ALIAS_ARMV8_COMMON()					\
1618	__PMC_EV_ALIAS("SW_INCR",		ARMV8_EVENT_00H)	\
1619	__PMC_EV_ALIAS("L1I_CACHE_REFILL",	ARMV8_EVENT_01H)	\
1620	__PMC_EV_ALIAS("L1I_TLB_REFILL",	ARMV8_EVENT_02H)	\
1621	__PMC_EV_ALIAS("L1D_CACHE_REFILL",	ARMV8_EVENT_03H)	\
1622	__PMC_EV_ALIAS("L1D_CACHE",		ARMV8_EVENT_04H)	\
1623	__PMC_EV_ALIAS("L1D_TLB_REFILL",	ARMV8_EVENT_05H)	\
1624	__PMC_EV_ALIAS("INST_RETIRED",		ARMV8_EVENT_08H)	\
1625	__PMC_EV_ALIAS("EXC_TAKEN",		ARMV8_EVENT_09H)	\
1626	__PMC_EV_ALIAS("EXC_RETURN",		ARMV8_EVENT_0AH)	\
1627	__PMC_EV_ALIAS("CID_WRITE_RETIRED",	ARMV8_EVENT_0BH)	\
1628	__PMC_EV_ALIAS("BR_MIS_PRED",		ARMV8_EVENT_10H)	\
1629	__PMC_EV_ALIAS("CPU_CYCLES",		ARMV8_EVENT_11H)	\
1630	__PMC_EV_ALIAS("BR_PRED",		ARMV8_EVENT_12H)	\
1631	__PMC_EV_ALIAS("MEM_ACCESS",		ARMV8_EVENT_13H)	\
1632	__PMC_EV_ALIAS("L1I_CACHE",		ARMV8_EVENT_14H)	\
1633	__PMC_EV_ALIAS("L1D_CACHE_WB",		ARMV8_EVENT_15H)	\
1634	__PMC_EV_ALIAS("L2D_CACHE",		ARMV8_EVENT_16H)	\
1635	__PMC_EV_ALIAS("L2D_CACHE_REFILL",	ARMV8_EVENT_17H)	\
1636	__PMC_EV_ALIAS("L2D_CACHE_WB",		ARMV8_EVENT_18H)	\
1637	__PMC_EV_ALIAS("BUS_ACCESS",		ARMV8_EVENT_19H)	\
1638	__PMC_EV_ALIAS("MEMORY_ERROR",		ARMV8_EVENT_1AH)	\
1639	__PMC_EV_ALIAS("BUS_CYCLES",		ARMV8_EVENT_1DH)	\
1640	__PMC_EV_ALIAS("CHAIN",			ARMV8_EVENT_1EH)	\
1641	__PMC_EV_ALIAS("BUS_ACCESS_LD",		ARMV8_EVENT_60H)	\
1642	__PMC_EV_ALIAS("BUS_ACCESS_ST",		ARMV8_EVENT_61H)	\
1643	__PMC_EV_ALIAS("BR_INDIRECT_SPEC",	ARMV8_EVENT_7AH)	\
1644	__PMC_EV_ALIAS("EXC_IRQ",		ARMV8_EVENT_86H)	\
1645	__PMC_EV_ALIAS("EXC_FIQ",		ARMV8_EVENT_87H)
1646
1647#define	__PMC_EV_ALIAS_ARMV8_CORTEX_A53()				\
1648	__PMC_EV_ALIAS_ARMV8_COMMON()					\
1649	__PMC_EV_ALIAS("LD_RETIRED",		ARMV8_EVENT_06H)	\
1650	__PMC_EV_ALIAS("ST_RETIRED",		ARMV8_EVENT_07H)	\
1651	__PMC_EV_ALIAS("PC_WRITE_RETIRED",	ARMV8_EVENT_0CH)	\
1652	__PMC_EV_ALIAS("BR_IMMED_RETIRED",	ARMV8_EVENT_0DH)	\
1653	__PMC_EV_ALIAS("BR_RETURN_RETIRED",	ARMV8_EVENT_0EH)	\
1654	__PMC_EV_ALIAS("UNALIGNED_LDST_RETIRED",ARMV8_EVENT_0FH)
1655
1656#define	__PMC_EV_ALIAS_ARMV8_CORTEX_A57_A76()				\
1657	__PMC_EV_ALIAS_ARMV8_COMMON()					\
1658	__PMC_EV_ALIAS("INST_SPEC",		ARMV8_EVENT_1BH)	\
1659	__PMC_EV_ALIAS("TTBR_WRITE_RETIRED",	ARMV8_EVENT_1CH)	\
1660	__PMC_EV_ALIAS("L1D_CACHE_LD",		ARMV8_EVENT_40H)	\
1661	__PMC_EV_ALIAS("L1D_CACHE_ST",		ARMV8_EVENT_41H)	\
1662	__PMC_EV_ALIAS("L1D_CACHE_REFILL_LD",	ARMV8_EVENT_42H)	\
1663	__PMC_EV_ALIAS("L1D_CACHE_REFILL_ST",	ARMV8_EVENT_43H)	\
1664	__PMC_EV_ALIAS("L1D_CACHE_WB_VICTIM",	ARMV8_EVENT_46H)	\
1665	__PMC_EV_ALIAS("L1D_CACHE_WB_CLEAN",	ARMV8_EVENT_47H)	\
1666	__PMC_EV_ALIAS("L1D_CACHE_INVAL",	ARMV8_EVENT_48H)	\
1667	__PMC_EV_ALIAS("L1D_TLB_REFILL_LD",	ARMV8_EVENT_4CH)	\
1668	__PMC_EV_ALIAS("L1D_TLB_REFILL_ST",	ARMV8_EVENT_4DH)	\
1669	__PMC_EV_ALIAS("L2D_CACHE_LD",		ARMV8_EVENT_50H)	\
1670	__PMC_EV_ALIAS("L2D_CACHE_ST",		ARMV8_EVENT_51H)	\
1671	__PMC_EV_ALIAS("L2D_CACHE_REFILL_LD",	ARMV8_EVENT_52H)	\
1672	__PMC_EV_ALIAS("L2D_CACHE_REFILL_ST",	ARMV8_EVENT_53H)	\
1673	__PMC_EV_ALIAS("L2D_CACHE_WB_VICTIM",	ARMV8_EVENT_56H)	\
1674	__PMC_EV_ALIAS("L2D_CACHE_WB_CLEAN",	ARMV8_EVENT_57H)	\
1675	__PMC_EV_ALIAS("L2D_CACHE_INVAL",	ARMV8_EVENT_58H)	\
1676	__PMC_EV_ALIAS("MEM_ACCESS_LD",		ARMV8_EVENT_66H)	\
1677	__PMC_EV_ALIAS("MEM_ACCESS_ST",		ARMV8_EVENT_67H)	\
1678	__PMC_EV_ALIAS("UNALIGNED_LD_SPEC",	ARMV8_EVENT_68H)	\
1679	__PMC_EV_ALIAS("UNALIGNED_ST_SPEC",	ARMV8_EVENT_69H)	\
1680	__PMC_EV_ALIAS("UNALIGNED_LDST_SPEC",	ARMV8_EVENT_6AH)	\
1681	__PMC_EV_ALIAS("LDREX_SPEC",		ARMV8_EVENT_6CH)	\
1682	__PMC_EV_ALIAS("STREX_PASS_SPEC",	ARMV8_EVENT_6DH)	\
1683	__PMC_EV_ALIAS("STREX_FAIL_SPEC",	ARMV8_EVENT_6EH)	\
1684	__PMC_EV_ALIAS("LD_SPEC",		ARMV8_EVENT_70H)	\
1685	__PMC_EV_ALIAS("ST_SPEC",		ARMV8_EVENT_71H)	\
1686	__PMC_EV_ALIAS("LDST_SPEC",		ARMV8_EVENT_72H)	\
1687	__PMC_EV_ALIAS("DP_SPEC",		ARMV8_EVENT_73H)	\
1688	__PMC_EV_ALIAS("ASE_SPEC",		ARMV8_EVENT_74H)	\
1689	__PMC_EV_ALIAS("VFP_SPEC",		ARMV8_EVENT_75H)	\
1690	__PMC_EV_ALIAS("PC_WRITE_SPEC",		ARMV8_EVENT_76H)	\
1691	__PMC_EV_ALIAS("CRYPTO_SPEC",		ARMV8_EVENT_77H)	\
1692	__PMC_EV_ALIAS("BR_IMMED_SPEC",		ARMV8_EVENT_78H)	\
1693	__PMC_EV_ALIAS("BR_RETURN_SPEC",	ARMV8_EVENT_79H)	\
1694	__PMC_EV_ALIAS("ISB_SPEC",		ARMV8_EVENT_7CH)	\
1695	__PMC_EV_ALIAS("DSB_SPEC",		ARMV8_EVENT_7DH)	\
1696	__PMC_EV_ALIAS("DMB_SPEC",		ARMV8_EVENT_7EH)	\
1697	__PMC_EV_ALIAS("EXC_UNDEF",		ARMV8_EVENT_81H)	\
1698	__PMC_EV_ALIAS("EXC_SVC",		ARMV8_EVENT_82H)	\
1699	__PMC_EV_ALIAS("EXC_PABORT",		ARMV8_EVENT_83H)	\
1700	__PMC_EV_ALIAS("EXC_DABORT",		ARMV8_EVENT_84H)	\
1701	__PMC_EV_ALIAS("EXC_SMC",		ARMV8_EVENT_88H)	\
1702	__PMC_EV_ALIAS("EXC_HVC",		ARMV8_EVENT_8AH)	\
1703	__PMC_EV_ALIAS("EXC_TRAP_PABORT",	ARMV8_EVENT_8BH)	\
1704	__PMC_EV_ALIAS("EXC_TRAP_DABORT",	ARMV8_EVENT_8CH)	\
1705	__PMC_EV_ALIAS("EXC_TRAP_OTHER",	ARMV8_EVENT_8DH)	\
1706	__PMC_EV_ALIAS("EXC_TRAP_IRQ",		ARMV8_EVENT_8EH)	\
1707	__PMC_EV_ALIAS("EXC_TRAP_FIQ",		ARMV8_EVENT_8FH)	\
1708	__PMC_EV_ALIAS("RC_LD_SPEC",		ARMV8_EVENT_90H)	\
1709	__PMC_EV_ALIAS("RC_ST_SPEC",		ARMV8_EVENT_91H)
1710
1711#define	__PMC_EV_ALIAS_ARMV8_CORTEX_A57()				\
1712	__PMC_EV_ALIAS_ARMV8_CORTEX_A57_A76()				\
1713	__PMC_EV_ALIAS("BUS_ACCESS_SHARED",	ARMV8_EVENT_62H)	\
1714	__PMC_EV_ALIAS("BUS_ACCESS_NOT_SHARED",	ARMV8_EVENT_63H)	\
1715	__PMC_EV_ALIAS("BUS_ACCESS_NORMAL",	ARMV8_EVENT_64H)	\
1716	__PMC_EV_ALIAS("BUS_ACCESS_PERIPH",	ARMV8_EVENT_65H)
1717
1718#define	__PMC_EV_ALIAS_ARMV8_CORTEX_A76()				\
1719	__PMC_EV_ALIAS_ARMV8_CORTEX_A57_A76()				\
1720	__PMC_EV_ALIAS("L2D_CACHE_ALLOCATE",	ARMV8_EVENT_20H)	\
1721	__PMC_EV_ALIAS("BR_RETIRED",		ARMV8_EVENT_21H)	\
1722	__PMC_EV_ALIAS("BR_MIS_PRED_RETIRED",	ARMV8_EVENT_22H)	\
1723	__PMC_EV_ALIAS("STALL_FRONTEND",	ARMV8_EVENT_23H)	\
1724	__PMC_EV_ALIAS("STALL_BACKEND",		ARMV8_EVENT_24H)	\
1725	__PMC_EV_ALIAS("L1D_TLB",		ARMV8_EVENT_25H)	\
1726	__PMC_EV_ALIAS("L1I_TLB",		ARMV8_EVENT_26H)	\
1727	__PMC_EV_ALIAS("L3D_CACHE_ALLOCATE",	ARMV8_EVENT_29H)	\
1728	__PMC_EV_ALIAS("L3D_CACHE_REFILL",	ARMV8_EVENT_2AH)	\
1729	__PMC_EV_ALIAS("L3D_CACHE",		ARMV8_EVENT_2BH)	\
1730	__PMC_EV_ALIAS("L2D_TLB_REFILL",	ARMV8_EVENT_2DH)	\
1731	__PMC_EV_ALIAS("L2D_TLB",		ARMV8_EVENT_2FH)	\
1732	__PMC_EV_ALIAS("REMOTE_ACCESS",		ARMV8_EVENT_31H)	\
1733	__PMC_EV_ALIAS("DTLB_WALK",		ARMV8_EVENT_34H)	\
1734	__PMC_EV_ALIAS("ITLB_WALK",		ARMV8_EVENT_35H)	\
1735	__PMC_EV_ALIAS("LL_CACHE_RD",		ARMV8_EVENT_36H)	\
1736	__PMC_EV_ALIAS("LL_CACHE_MISS_RD",	ARMV8_EVENT_37H)	\
1737	__PMC_EV_ALIAS("L1D_CACHE_REFILL_INNER", ARMV8_EVENT_44H)	\
1738	__PMC_EV_ALIAS("L1D_CACHE_REFILL_OUTER", ARMV8_EVENT_45H)	\
1739	__PMC_EV_ALIAS("L1D_TLB_RD",		ARMV8_EVENT_4EH)	\
1740	__PMC_EV_ALIAS("L1D_TLB_WR",		ARMV8_EVENT_4FH)	\
1741	__PMC_EV_ALIAS("L2D_TLB_REFILL_RD",	ARMV8_EVENT_5CH)	\
1742	__PMC_EV_ALIAS("L2D_TLB_REFILL_WR",	ARMV8_EVENT_5DH)	\
1743	__PMC_EV_ALIAS("L2D_TLB_RD",		ARMV8_EVENT_5EH)	\
1744	__PMC_EV_ALIAS("L2D_TLB_WR",		ARMV8_EVENT_5FH)	\
1745	__PMC_EV_ALIAS("STREX_SPEC",		ARMV8_EVENT_6FH)	\
1746	__PMC_EV_ALIAS("L3_CACHE_RD",		ARMV8_EVENT_A0H)
1747
1748/*
1749 * ARM DMC-620 memory controller counters.
1750 */
1751
1752#define	__PMC_EV_DMC620_PMU_CD2()					\
1753	__PMC_EV(DMC620_PMU_CD2, clkdiv2_cycle_count)			\
1754	__PMC_EV(DMC620_PMU_CD2, clkdiv2_allocate)			\
1755	__PMC_EV(DMC620_PMU_CD2, clkdiv2_queue_depth)			\
1756	__PMC_EV(DMC620_PMU_CD2, clkdiv2_waiting_for_wr_data)		\
1757	__PMC_EV(DMC620_PMU_CD2, clkdiv2_read_backlog)			\
1758	__PMC_EV(DMC620_PMU_CD2, clkdiv2_waiting_for_mi)		\
1759	__PMC_EV(DMC620_PMU_CD2, clkdiv2_hazard_resolution)		\
1760	__PMC_EV(DMC620_PMU_CD2, clkdiv2_enqueue)			\
1761	__PMC_EV(DMC620_PMU_CD2, clkdiv2_arbitrate)			\
1762	__PMC_EV(DMC620_PMU_CD2, clkdiv2_lrank_turnaround_activate)	\
1763	__PMC_EV(DMC620_PMU_CD2, clkdiv2_prank_turnaround_activate)	\
1764	__PMC_EV(DMC620_PMU_CD2, clkdiv2_read_depth)			\
1765	__PMC_EV(DMC620_PMU_CD2, clkdiv2_write_depth)			\
1766	__PMC_EV(DMC620_PMU_CD2, clkdiv2_highhigh_qos_depth)		\
1767	__PMC_EV(DMC620_PMU_CD2, clkdiv2_high_qos_depth)		\
1768	__PMC_EV(DMC620_PMU_CD2, clkdiv2_medium_qos_depth)		\
1769	__PMC_EV(DMC620_PMU_CD2, clkdiv2_low_qos_depth)			\
1770	__PMC_EV(DMC620_PMU_CD2, clkdiv2_activate)			\
1771	__PMC_EV(DMC620_PMU_CD2, clkdiv2_rdwr)				\
1772	__PMC_EV(DMC620_PMU_CD2, clkdiv2_refresh)			\
1773	__PMC_EV(DMC620_PMU_CD2, clkdiv2_training_request)		\
1774	__PMC_EV(DMC620_PMU_CD2, clkdiv2_t_mac_tracker)			\
1775	__PMC_EV(DMC620_PMU_CD2, clkdiv2_bk_fsm_tracker)		\
1776	__PMC_EV(DMC620_PMU_CD2, clkdiv2_bk_open_tracker)		\
1777	__PMC_EV(DMC620_PMU_CD2, clkdiv2_ranks_in_pwr_down)		\
1778	__PMC_EV(DMC620_PMU_CD2, clkdiv2_ranks_in_sref)			\
1779
1780#define	__PMC_EV_DMC620_PMU_C()						\
1781	__PMC_EV(DMC620_PMU_C, clk_cycle_count)				\
1782	__PMC_EV(DMC620_PMU_C, clk_request)				\
1783	__PMC_EV(DMC620_PMU_C, clk_upload_stall)
1784
1785#define	PMC_EV_DMC620_PMU_CD2_FIRST	PMC_EV_DMC620_PMU_CD2_clkdiv2_cycle_count
1786#define	PMC_EV_DMC620_PMU_CD2_LAST	PMC_EV_DMC620_PMU_CD2_clkdiv2_ranks_in_sref
1787#define	PMC_EV_DMC620_PMU_C_FIRST	PMC_EV_DMC620_PMU_C_clk_cycle_count
1788#define	PMC_EV_DMC620_PMU_C_LAST	PMC_EV_DMC620_PMU_C_clk_upload_stall
1789
1790/*
1791 * Arm CMN-600 Coherent Mesh Network controller counters.
1792 */
1793
1794#define	__PMC_EV_CMN600_PMU()					\
1795	__PMC_EV(CMN600_PMU, dn_rxreq_dvmop)			\
1796	__PMC_EV(CMN600_PMU, dn_rxreq_dvmsync)			\
1797	__PMC_EV(CMN600_PMU, dn_rxreq_dvmop_vmid_filtered)	\
1798	__PMC_EV(CMN600_PMU, dn_rxreq_retried)			\
1799	__PMC_EV(CMN600_PMU, dn_rxreq_trk_occupancy)		\
1800	__PMC_EV(CMN600_PMU, dn_rxreq_tlbi_dvmop)		\
1801	__PMC_EV(CMN600_PMU, dn_rxreq_bpi_dvmop)		\
1802	__PMC_EV(CMN600_PMU, dn_rxreq_pici_dvmop)		\
1803	__PMC_EV(CMN600_PMU, dn_rxreq_vivi_dvmop)		\
1804	__PMC_EV(CMN600_PMU, dn_rxreq_dvmop_other_filtered)	\
1805	__PMC_EV(CMN600_PMU, dn_rxreq_snp_sent)			\
1806	__PMC_EV(CMN600_PMU, dn_rxreq_snp_stalled)		\
1807	__PMC_EV(CMN600_PMU, dn_rxreq_trk_full)			\
1808	__PMC_EV(CMN600_PMU, hnf_cache_miss)			\
1809	__PMC_EV(CMN600_PMU, hnf_slc_sf_cache_access)		\
1810	__PMC_EV(CMN600_PMU, hnf_cache_fill)			\
1811	__PMC_EV(CMN600_PMU, hnf_pocq_retry)			\
1812	__PMC_EV(CMN600_PMU, hnf_pocq_reqs_recvd)		\
1813	__PMC_EV(CMN600_PMU, hnf_sf_hit)			\
1814	__PMC_EV(CMN600_PMU, hnf_sf_evictions)			\
1815	__PMC_EV(CMN600_PMU, hnf_dir_snoops_sent)		\
1816	__PMC_EV(CMN600_PMU, hnf_brd_snoops_sent)		\
1817	__PMC_EV(CMN600_PMU, hnf_slc_eviction)			\
1818	__PMC_EV(CMN600_PMU, hnf_slc_fill_invalid_way)		\
1819	__PMC_EV(CMN600_PMU, hnf_mc_retries)			\
1820	__PMC_EV(CMN600_PMU, hnf_mc_reqs)			\
1821	__PMC_EV(CMN600_PMU, hnf_qos_hh_retry)			\
1822	__PMC_EV(CMN600_PMU, hnf_qos_pocq)			\
1823	__PMC_EV(CMN600_PMU, hnf_pocq_addrhaz)			\
1824	__PMC_EV(CMN600_PMU, hnf_pocq_atomic_addrhaz)		\
1825	__PMC_EV(CMN600_PMU, hnf_ld_st_swp_adq_full)		\
1826	__PMC_EV(CMN600_PMU, hnf_cmp_adq_full)			\
1827	__PMC_EV(CMN600_PMU, hnf_txdat_stall)			\
1828	__PMC_EV(CMN600_PMU, hnf_txrsp_stall)			\
1829	__PMC_EV(CMN600_PMU, hnf_seq_full)			\
1830	__PMC_EV(CMN600_PMU, hnf_seq_hit)			\
1831	__PMC_EV(CMN600_PMU, hnf_snp_sent)			\
1832	__PMC_EV(CMN600_PMU, hnf_sfbi_dir_snp_sent)		\
1833	__PMC_EV(CMN600_PMU, hnf_sfbi_brd_snp_sent)		\
1834	__PMC_EV(CMN600_PMU, hnf_snp_sent_untrk)		\
1835	__PMC_EV(CMN600_PMU, hnf_intv_dirty)			\
1836	__PMC_EV(CMN600_PMU, hnf_stash_snp_sent)		\
1837	__PMC_EV(CMN600_PMU, hnf_stash_data_pull)		\
1838	__PMC_EV(CMN600_PMU, hnf_snp_fwded)			\
1839	__PMC_EV(CMN600_PMU, hni_rrt_rd_occ_cnt_ovfl)		\
1840	__PMC_EV(CMN600_PMU, hni_rrt_wr_occ_cnt_ovfl)		\
1841	__PMC_EV(CMN600_PMU, hni_rdt_rd_occ_cnt_ovfl)		\
1842	__PMC_EV(CMN600_PMU, hni_rdt_wr_occ_cnt_ovfl)		\
1843	__PMC_EV(CMN600_PMU, hni_wdb_occ_cnt_ovfl)		\
1844	__PMC_EV(CMN600_PMU, hni_rrt_rd_alloc)			\
1845	__PMC_EV(CMN600_PMU, hni_rrt_wr_alloc)			\
1846	__PMC_EV(CMN600_PMU, hni_rdt_rd_alloc)			\
1847	__PMC_EV(CMN600_PMU, hni_rdt_wr_alloc)			\
1848	__PMC_EV(CMN600_PMU, hni_wdb_alloc)			\
1849	__PMC_EV(CMN600_PMU, hni_txrsp_retryack)		\
1850	__PMC_EV(CMN600_PMU, hni_arvalid_no_arready)		\
1851	__PMC_EV(CMN600_PMU, hni_arready_no_arvalid)		\
1852	__PMC_EV(CMN600_PMU, hni_awvalid_no_awready)		\
1853	__PMC_EV(CMN600_PMU, hni_awready_no_awvalid)		\
1854	__PMC_EV(CMN600_PMU, hni_wvalid_no_wready)		\
1855	__PMC_EV(CMN600_PMU, hni_txdat_stall)			\
1856	__PMC_EV(CMN600_PMU, hni_nonpcie_serialization)		\
1857	__PMC_EV(CMN600_PMU, hni_pcie_serialization)		\
1858	__PMC_EV(CMN600_PMU, xp_txflit_valid)			\
1859	__PMC_EV(CMN600_PMU, xp_txflit_stall)			\
1860	__PMC_EV(CMN600_PMU, xp_partial_dat_flit)		\
1861	__PMC_EV(CMN600_PMU, sbsx_rd_req)			\
1862	__PMC_EV(CMN600_PMU, sbsx_wr_req)			\
1863	__PMC_EV(CMN600_PMU, sbsx_cmo_req)			\
1864	__PMC_EV(CMN600_PMU, sbsx_txrsp_retryack)		\
1865	__PMC_EV(CMN600_PMU, sbsx_txdat_flitv)			\
1866	__PMC_EV(CMN600_PMU, sbsx_txrsp_flitv)			\
1867	__PMC_EV(CMN600_PMU, sbsx_rd_req_trkr_occ_cnt_ovfl)	\
1868	__PMC_EV(CMN600_PMU, sbsx_wr_req_trkr_occ_cnt_ovfl)	\
1869	__PMC_EV(CMN600_PMU, sbsx_cmo_req_trkr_occ_cnt_ovfl)	\
1870	__PMC_EV(CMN600_PMU, sbsx_wdb_occ_cnt_ovfl)		\
1871	__PMC_EV(CMN600_PMU, sbsx_rd_axi_trkr_occ_cnt_ovfl)	\
1872	__PMC_EV(CMN600_PMU, sbsx_cmo_axi_trkr_occ_cnt_ovfl)	\
1873	__PMC_EV(CMN600_PMU, sbsx_arvalid_no_arready)		\
1874	__PMC_EV(CMN600_PMU, sbsx_awvalid_no_awready)		\
1875	__PMC_EV(CMN600_PMU, sbsx_wvalid_no_wready)		\
1876	__PMC_EV(CMN600_PMU, sbsx_txdat_stall)			\
1877	__PMC_EV(CMN600_PMU, sbsx_txrsp_stall)			\
1878	__PMC_EV(CMN600_PMU, rnd_s0_rdata_beats)		\
1879	__PMC_EV(CMN600_PMU, rnd_s1_rdata_beats)		\
1880	__PMC_EV(CMN600_PMU, rnd_s2_rdata_beats)		\
1881	__PMC_EV(CMN600_PMU, rnd_rxdat_flits)			\
1882	__PMC_EV(CMN600_PMU, rnd_txdat_flits)			\
1883	__PMC_EV(CMN600_PMU, rnd_txreq_flits_total)		\
1884	__PMC_EV(CMN600_PMU, rnd_txreq_flits_retried)		\
1885	__PMC_EV(CMN600_PMU, rnd_rrt_occ_ovfl)			\
1886	__PMC_EV(CMN600_PMU, rnd_wrt_occ_ovfl)			\
1887	__PMC_EV(CMN600_PMU, rnd_txreq_flits_replayed)		\
1888	__PMC_EV(CMN600_PMU, rnd_wrcancel_sent)			\
1889	__PMC_EV(CMN600_PMU, rnd_s0_wdata_beats)		\
1890	__PMC_EV(CMN600_PMU, rnd_s1_wdata_beats)		\
1891	__PMC_EV(CMN600_PMU, rnd_s2_wdata_beats)		\
1892	__PMC_EV(CMN600_PMU, rnd_rrt_alloc)			\
1893	__PMC_EV(CMN600_PMU, rnd_wrt_alloc)			\
1894	__PMC_EV(CMN600_PMU, rnd_rdb_unord)			\
1895	__PMC_EV(CMN600_PMU, rnd_rdb_replay)			\
1896	__PMC_EV(CMN600_PMU, rnd_rdb_hybrid)			\
1897	__PMC_EV(CMN600_PMU, rnd_rdb_ord)			\
1898	__PMC_EV(CMN600_PMU, rni_s0_rdata_beats)		\
1899	__PMC_EV(CMN600_PMU, rni_s1_rdata_beats)		\
1900	__PMC_EV(CMN600_PMU, rni_s2_rdata_beats)		\
1901	__PMC_EV(CMN600_PMU, rni_rxdat_flits)			\
1902	__PMC_EV(CMN600_PMU, rni_txdat_flits)			\
1903	__PMC_EV(CMN600_PMU, rni_txreq_flits_total)		\
1904	__PMC_EV(CMN600_PMU, rni_txreq_flits_retried)		\
1905	__PMC_EV(CMN600_PMU, rni_rrt_occ_ovfl)			\
1906	__PMC_EV(CMN600_PMU, rni_wrt_occ_ovfl)			\
1907	__PMC_EV(CMN600_PMU, rni_txreq_flits_replayed)		\
1908	__PMC_EV(CMN600_PMU, rni_wrcancel_sent)			\
1909	__PMC_EV(CMN600_PMU, rni_s0_wdata_beats)		\
1910	__PMC_EV(CMN600_PMU, rni_s1_wdata_beats)		\
1911	__PMC_EV(CMN600_PMU, rni_s2_wdata_beats)		\
1912	__PMC_EV(CMN600_PMU, rni_rrt_alloc)			\
1913	__PMC_EV(CMN600_PMU, rni_wrt_alloc)			\
1914	__PMC_EV(CMN600_PMU, rni_rdb_unord)			\
1915	__PMC_EV(CMN600_PMU, rni_rdb_replay)			\
1916	__PMC_EV(CMN600_PMU, rni_rdb_hybrid)			\
1917	__PMC_EV(CMN600_PMU, rni_rdb_ord)			\
1918	__PMC_EV(CMN600_PMU, cxha_rddatbyp)			\
1919	__PMC_EV(CMN600_PMU, cxha_chirsp_up_stall)		\
1920	__PMC_EV(CMN600_PMU, cxha_chidat_up_stall)		\
1921	__PMC_EV(CMN600_PMU, cxha_snppcrd_lnk0_stall)		\
1922	__PMC_EV(CMN600_PMU, cxha_snppcrd_lnk1_stall)		\
1923	__PMC_EV(CMN600_PMU, cxha_snppcrd_lnk2_stall)		\
1924	__PMC_EV(CMN600_PMU, cxha_reqtrk_occ)			\
1925	__PMC_EV(CMN600_PMU, cxha_rdb_occ)			\
1926	__PMC_EV(CMN600_PMU, cxha_rdbbyp_occ)			\
1927	__PMC_EV(CMN600_PMU, cxha_wdb_occ)			\
1928	__PMC_EV(CMN600_PMU, cxha_snptrk_occ)			\
1929	__PMC_EV(CMN600_PMU, cxha_sdb_occ)			\
1930	__PMC_EV(CMN600_PMU, cxha_snphaz_occ)			\
1931	__PMC_EV(CMN600_PMU, cxra_req_trk_occ)			\
1932	__PMC_EV(CMN600_PMU, cxra_snp_trk_occ)			\
1933	__PMC_EV(CMN600_PMU, cxra_rd_dat_buf_occ)		\
1934	__PMC_EV(CMN600_PMU, cxra_wr_dat_buf_occ)		\
1935	__PMC_EV(CMN600_PMU, cxra_snp_sink_buf_occ)		\
1936	__PMC_EV(CMN600_PMU, cxra_snp_bcasts)			\
1937	__PMC_EV(CMN600_PMU, cxra_req_chains)			\
1938	__PMC_EV(CMN600_PMU, cxra_req_chain_avg_len)		\
1939	__PMC_EV(CMN600_PMU, cxra_chi_rsp_upload_stalls)	\
1940	__PMC_EV(CMN600_PMU, cxra_chi_dat_upload_stalls)	\
1941	__PMC_EV(CMN600_PMU, cxra_dat_pcrd_stalls_lnk0)		\
1942	__PMC_EV(CMN600_PMU, cxra_dat_pcrd_stalls_lnk1)		\
1943	__PMC_EV(CMN600_PMU, cxra_dat_pcrd_stalls_lnk2)		\
1944	__PMC_EV(CMN600_PMU, cxra_req_pcrd_stalls_lnk0)		\
1945	__PMC_EV(CMN600_PMU, cxra_req_pcrd_stalls_lnk1)		\
1946	__PMC_EV(CMN600_PMU, cxra_req_pcrd_stalls_lnk2)		\
1947	__PMC_EV(CMN600_PMU, cxra_ext_rsp_stall)		\
1948	__PMC_EV(CMN600_PMU, cxra_ext_dat_stall)		\
1949	__PMC_EV(CMN600_PMU, cxla_rx_tlp_link0)			\
1950	__PMC_EV(CMN600_PMU, cxla_rx_tlp_link1)			\
1951	__PMC_EV(CMN600_PMU, cxla_rx_tlp_link2)			\
1952	__PMC_EV(CMN600_PMU, cxla_tx_tlp_link0)			\
1953	__PMC_EV(CMN600_PMU, cxla_tx_tlp_link1)			\
1954	__PMC_EV(CMN600_PMU, cxla_tx_tlp_link2)			\
1955	__PMC_EV(CMN600_PMU, cxla_rx_cxs_link0)			\
1956	__PMC_EV(CMN600_PMU, cxla_rx_cxs_link1)			\
1957	__PMC_EV(CMN600_PMU, cxla_rx_cxs_link2)			\
1958	__PMC_EV(CMN600_PMU, cxla_tx_cxs_link0)			\
1959	__PMC_EV(CMN600_PMU, cxla_tx_cxs_link1)			\
1960	__PMC_EV(CMN600_PMU, cxla_tx_cxs_link2)			\
1961	__PMC_EV(CMN600_PMU, cxla_avg_rx_tlp_sz_dws)		\
1962	__PMC_EV(CMN600_PMU, cxla_avg_tx_tlp_sz_dws)		\
1963	__PMC_EV(CMN600_PMU, cxla_avg_rx_tlp_sz_ccix_msg)	\
1964	__PMC_EV(CMN600_PMU, cxla_avg_tx_tlp_sz_ccix_msg)	\
1965	__PMC_EV(CMN600_PMU, cxla_avg_sz_rx_cxs_dw_beat)	\
1966	__PMC_EV(CMN600_PMU, cxla_avg_sz_tx_cxs_dw_beat)	\
1967	__PMC_EV(CMN600_PMU, cxla_tx_cxs_link_credit_backpressure) \
1968	__PMC_EV(CMN600_PMU, cxla_rx_tlp_buffer_full)		\
1969	__PMC_EV(CMN600_PMU, cxla_tx_tlp_buffer_full)		\
1970	__PMC_EV(CMN600_PMU, cxla_avg_latency_process_rx_tlp)	\
1971	__PMC_EV(CMN600_PMU, cxla_avg_latency_form_tx_tlp)
1972
1973
1974#define	PMC_EV_CMN600_PMU_FIRST	PMC_EV_CMN600_PMU_dn_rxreq_dvmop
1975#define	PMC_EV_CMN600_PMU_LAST	\
1976		PMC_EV_CMN600_PMU_cxla_avg_latency_form_tx_tlp
1977
1978#define __PMC_EV_PPC7450()						\
1979	__PMC_EV(PPC7450, CYCLE)					\
1980	__PMC_EV(PPC7450, INSTR_COMPLETED)				\
1981	__PMC_EV(PPC7450, TLB_BIT_TRANSITIONS)				\
1982	__PMC_EV(PPC7450, INSTR_DISPATCHED)				\
1983	__PMC_EV(PPC7450, PMON_EXCEPT)					\
1984	__PMC_EV(PPC7450, PMON_SIG)					\
1985	__PMC_EV(PPC7450, VPU_INSTR_COMPLETED)				\
1986	__PMC_EV(PPC7450, VFPU_INSTR_COMPLETED)				\
1987	__PMC_EV(PPC7450, VIU1_INSTR_COMPLETED)				\
1988	__PMC_EV(PPC7450, VIU2_INSTR_COMPLETED)				\
1989	__PMC_EV(PPC7450, MTVSCR_INSTR_COMPLETED)			\
1990	__PMC_EV(PPC7450, MTVRSAVE_INSTR_COMPLETED)			\
1991	__PMC_EV(PPC7450, VPU_INSTR_WAIT_CYCLES)			\
1992	__PMC_EV(PPC7450, VFPU_INSTR_WAIT_CYCLES)			\
1993	__PMC_EV(PPC7450, VIU1_INSTR_WAIT_CYCLES)			\
1994	__PMC_EV(PPC7450, VIU2_INSTR_WAIT_CYCLES)			\
1995	__PMC_EV(PPC7450, MFVSCR_SYNC_CYCLES)				\
1996	__PMC_EV(PPC7450, VSCR_SAT_SET)					\
1997	__PMC_EV(PPC7450, STORE_INSTR_COMPLETED)			\
1998	__PMC_EV(PPC7450, L1_INSTR_CACHE_MISSES)			\
1999	__PMC_EV(PPC7450, L1_DATA_SNOOPS)				\
2000	__PMC_EV(PPC7450, UNRESOLVED_BRANCHES)				\
2001	__PMC_EV(PPC7450, SPEC_BUFFER_CYCLES)				\
2002	__PMC_EV(PPC7450, BRANCH_UNIT_STALL_CYCLES)			\
2003	__PMC_EV(PPC7450, TRUE_BRANCH_TARGET_HITS)			\
2004	__PMC_EV(PPC7450, BRANCH_LINK_STAC_PREDICTED)			\
2005	__PMC_EV(PPC7450, GPR_ISSUE_QUEUE_DISPATCHES)			\
2006	__PMC_EV(PPC7450, CYCLES_THREE_INSTR_DISPATCHED)		\
2007	__PMC_EV(PPC7450, THRESHOLD_INSTR_QUEUE_ENTRIES_CYCLES)		\
2008	__PMC_EV(PPC7450, THRESHOLD_VEC_INSTR_QUEUE_ENTRIES_CYCLES)	\
2009	__PMC_EV(PPC7450, CYCLES_NO_COMPLETED_INSTRS)			\
2010	__PMC_EV(PPC7450, IU2_INSTR_COMPLETED)				\
2011	__PMC_EV(PPC7450, BRANCHES_COMPLETED)				\
2012	__PMC_EV(PPC7450, EIEIO_INSTR_COMPLETED)			\
2013	__PMC_EV(PPC7450, MTSPR_INSTR_COMPLETED)			\
2014	__PMC_EV(PPC7450, SC_INSTR_COMPLETED)				\
2015	__PMC_EV(PPC7450, LS_LM_COMPLETED)				\
2016	__PMC_EV(PPC7450, ITLB_HW_TABLE_SEARCH_CYCLES)			\
2017	__PMC_EV(PPC7450, DTLB_HW_SEARCH_CYCLES_OVER_THRESHOLD)		\
2018	__PMC_EV(PPC7450, L1_INSTR_CACHE_ACCESSES)			\
2019	__PMC_EV(PPC7450, INSTR_BKPT_MATCHES)				\
2020	__PMC_EV(PPC7450, L1_DATA_CACHE_LOAD_MISS_CYCLES_OVER_THRESHOLD)\
2021	__PMC_EV(PPC7450, L1_DATA_SNOOP_HIT_ON_MODIFIED)		\
2022	__PMC_EV(PPC7450, LOAD_MISS_ALIAS)				\
2023	__PMC_EV(PPC7450, LOAD_MISS_ALIAS_ON_TOUCH)			\
2024	__PMC_EV(PPC7450, TOUCH_ALIAS)					\
2025	__PMC_EV(PPC7450, L1_DATA_SNOOP_HIT_CASTOUT_QUEUE)		\
2026	__PMC_EV(PPC7450, L1_DATA_SNOOP_HIT_CASTOUT)			\
2027	__PMC_EV(PPC7450, L1_DATA_SNOOP_HITS)				\
2028	__PMC_EV(PPC7450, WRITE_THROUGH_STORES)				\
2029	__PMC_EV(PPC7450, CACHE_INHIBITED_STORES)			\
2030	__PMC_EV(PPC7450, L1_DATA_LOAD_HIT)				\
2031	__PMC_EV(PPC7450, L1_DATA_TOUCH_HIT)				\
2032	__PMC_EV(PPC7450, L1_DATA_STORE_HIT)				\
2033	__PMC_EV(PPC7450, L1_DATA_TOTAL_HITS)				\
2034	__PMC_EV(PPC7450, DST_INSTR_DISPATCHED)				\
2035	__PMC_EV(PPC7450, REFRESHED_DSTS)				\
2036	__PMC_EV(PPC7450, SUCCESSFUL_DST_TABLE_SEARCHES)		\
2037	__PMC_EV(PPC7450, DSS_INSTR_COMPLETED)				\
2038	__PMC_EV(PPC7450, DST_STREAM_0_CACHE_LINE_FETCHES)		\
2039	__PMC_EV(PPC7450, VTQ_SUSPENDS_DUE_TO_CTX_CHANGE)		\
2040	__PMC_EV(PPC7450, VTQ_LINE_FETCH_HIT)				\
2041	__PMC_EV(PPC7450, VEC_LOAD_INSTR_COMPLETED)			\
2042	__PMC_EV(PPC7450, FP_STORE_INSTR_COMPLETED_IN_LSU)		\
2043	__PMC_EV(PPC7450, FPU_RENORMALIZATION)				\
2044	__PMC_EV(PPC7450, FPU_DENORMALIZATION)				\
2045	__PMC_EV(PPC7450, FP_STORE_CAUSES_STALL_IN_LSU)			\
2046	__PMC_EV(PPC7450, LD_ST_TRUE_ALIAS_STALL)			\
2047	__PMC_EV(PPC7450, LSU_INDEXED_ALIAS_STALL)			\
2048	__PMC_EV(PPC7450, LSU_ALIAS_VS_FSQ_WB0_WB1)			\
2049	__PMC_EV(PPC7450, LSU_ALIAS_VS_CSQ)				\
2050	__PMC_EV(PPC7450, LSU_LOAD_HIT_LINE_ALIAS_VS_CSQ0)		\
2051	__PMC_EV(PPC7450, LSU_LOAD_MISS_LINE_ALIAS_VS_CSQ0)		\
2052	__PMC_EV(PPC7450, LSU_TOUCH_LINE_ALIAS_VS_FSQ_WB0_WB1)		\
2053	__PMC_EV(PPC7450, LSU_TOUCH_ALIAS_VS_CSQ)			\
2054	__PMC_EV(PPC7450, LSU_LMQ_FULL_STALL)				\
2055	__PMC_EV(PPC7450, FP_LOAD_INSTR_COMPLETED_IN_LSU)		\
2056	__PMC_EV(PPC7450, FP_LOAD_SINGLE_INSTR_COMPLETED_IN_LSU)	\
2057	__PMC_EV(PPC7450, FP_LOAD_DOUBLE_COMPLETED_IN_LSU)		\
2058	__PMC_EV(PPC7450, LSU_RA_LATCH_STALL)				\
2059	__PMC_EV(PPC7450, LSU_LOAD_VS_STORE_QUEUE_ALIAS_STALL)		\
2060	__PMC_EV(PPC7450, LSU_LMQ_INDEX_ALIAS)				\
2061	__PMC_EV(PPC7450, LSU_STORE_QUEUE_INDEX_ALIAS)			\
2062	__PMC_EV(PPC7450, LSU_CSQ_FORWARDING)				\
2063	__PMC_EV(PPC7450, LSU_MISALIGNED_LOAD_FINISH)			\
2064	__PMC_EV(PPC7450, LSU_MISALIGN_STORE_COMPLETED)			\
2065	__PMC_EV(PPC7450, LSU_MISALIGN_STALL)				\
2066	__PMC_EV(PPC7450, FP_ONE_QUARTER_FPSCR_RENAMES_BUSY)		\
2067	__PMC_EV(PPC7450, FP_ONE_HALF_FPSCR_RENAMES_BUSY)		\
2068	__PMC_EV(PPC7450, FP_THREE_QUARTERS_FPSCR_RENAMES_BUSY)		\
2069	__PMC_EV(PPC7450, FP_ALL_FPSCR_RENAMES_BUSY)			\
2070	__PMC_EV(PPC7450, FP_DENORMALIZED_RESULT)			\
2071	__PMC_EV(PPC7450, L1_DATA_TOTAL_MISSES)				\
2072	__PMC_EV(PPC7450, DISPATCHES_TO_FPR_ISSUE_QUEUE)		\
2073	__PMC_EV(PPC7450, LSU_INSTR_COMPLETED)				\
2074	__PMC_EV(PPC7450, LOAD_INSTR_COMPLETED)				\
2075	__PMC_EV(PPC7450, SS_SM_INSTR_COMPLETED)			\
2076	__PMC_EV(PPC7450, TLBIE_INSTR_COMPLETED)			\
2077	__PMC_EV(PPC7450, LWARX_INSTR_COMPLETED)			\
2078	__PMC_EV(PPC7450, MFSPR_INSTR_COMPLETED)			\
2079	__PMC_EV(PPC7450, REFETCH_SERIALIZATION)			\
2080	__PMC_EV(PPC7450, COMPLETION_QUEUE_ENTRIES_OVER_THRESHOLD)	\
2081	__PMC_EV(PPC7450, CYCLES_ONE_INSTR_DISPATCHED)			\
2082	__PMC_EV(PPC7450, CYCLES_TWO_INSTR_COMPLETED)			\
2083	__PMC_EV(PPC7450, ITLB_NON_SPECULATIVE_MISSES)			\
2084	__PMC_EV(PPC7450, CYCLES_WAITING_FROM_L1_INSTR_CACHE_MISS)	\
2085	__PMC_EV(PPC7450, L1_DATA_LOAD_ACCESS_MISS)			\
2086	__PMC_EV(PPC7450, L1_DATA_TOUCH_MISS)				\
2087	__PMC_EV(PPC7450, L1_DATA_STORE_MISS)				\
2088	__PMC_EV(PPC7450, L1_DATA_TOUCH_MISS_CYCLES)			\
2089	__PMC_EV(PPC7450, L1_DATA_CYCLES_USED)				\
2090	__PMC_EV(PPC7450, DST_STREAM_1_CACHE_LINE_FETCHES)		\
2091	__PMC_EV(PPC7450, VTQ_STREAM_CANCELED_PREMATURELY)		\
2092	__PMC_EV(PPC7450, VTQ_RESUMES_DUE_TO_CTX_CHANGE)		\
2093	__PMC_EV(PPC7450, VTQ_LINE_FETCH_MISS)				\
2094	__PMC_EV(PPC7450, VTQ_LINE_FETCH)				\
2095	__PMC_EV(PPC7450, TLBIE_SNOOPS)					\
2096	__PMC_EV(PPC7450, L1_INSTR_CACHE_RELOADS)			\
2097	__PMC_EV(PPC7450, L1_DATA_CACHE_RELOADS)			\
2098	__PMC_EV(PPC7450, L1_DATA_CACHE_CASTOUTS_TO_L2)			\
2099	__PMC_EV(PPC7450, STORE_MERGE_GATHER)				\
2100	__PMC_EV(PPC7450, CACHEABLE_STORE_MERGE_TO_32_BYTES)		\
2101	__PMC_EV(PPC7450, DATA_BKPT_MATCHES)				\
2102	__PMC_EV(PPC7450, FALL_THROUGH_BRANCHES_PROCESSED)		\
2103	__PMC_EV(PPC7450,						\
2104	    FIRST_SPECULATIVE_BRANCH_BUFFER_RESOLVED_CORRECTLY)		\
2105	__PMC_EV(PPC7450, SECOND_SPECULATION_BUFFER_ACTIVE)		\
2106	__PMC_EV(PPC7450, BPU_STALL_ON_LR_DEPENDENCY)			\
2107	__PMC_EV(PPC7450, BTIC_MISS)					\
2108	__PMC_EV(PPC7450, BRANCH_LINK_STACK_CORRECTLY_RESOLVED)		\
2109	__PMC_EV(PPC7450, FPR_ISSUE_STALLED)				\
2110	__PMC_EV(PPC7450, SWITCHES_BETWEEN_PRIV_USER)			\
2111	__PMC_EV(PPC7450, LSU_COMPLETES_FP_STORE_SINGLE)		\
2112	__PMC_EV(PPC7450, VR_ISSUE_QUEUE_DISPATCHES)			\
2113	__PMC_EV(PPC7450, VR_STALLS)					\
2114	__PMC_EV(PPC7450, GPR_RENAME_BUFFER_ENTRIES_OVER_THRESHOLD)	\
2115	__PMC_EV(PPC7450, FPR_ISSUE_QUEUE_ENTRIES)			\
2116	__PMC_EV(PPC7450, FPU_INSTR_COMPLETED)				\
2117	__PMC_EV(PPC7450, STWCX_INSTR_COMPLETED)			\
2118	__PMC_EV(PPC7450, LS_LM_INSTR_PIECES)				\
2119	__PMC_EV(PPC7450, ITLB_HW_SEARCH_CYCLES_OVER_THRESHOLD)		\
2120	__PMC_EV(PPC7450, DTLB_MISSES)					\
2121	__PMC_EV(PPC7450, CANCELLED_L1_INSTR_CACHE_MISSES)		\
2122	__PMC_EV(PPC7450, L1_DATA_CACHE_OP_HIT)				\
2123	__PMC_EV(PPC7450, L1_DATA_LOAD_MISS_CYCLES)			\
2124	__PMC_EV(PPC7450, L1_DATA_PUSHES)				\
2125	__PMC_EV(PPC7450, L1_DATA_TOTAL_MISS)				\
2126	__PMC_EV(PPC7450, VT2_FETCHES)					\
2127	__PMC_EV(PPC7450, TAKEN_BRANCHES_PROCESSED)			\
2128	__PMC_EV(PPC7450, BRANCH_FLUSHES)				\
2129	__PMC_EV(PPC7450,						\
2130	    SECOND_SPECULATIVE_BRANCH_BUFFER_RESOLVED_CORRECTLY)	\
2131	__PMC_EV(PPC7450, THIRD_SPECULATION_BUFFER_ACTIVE)		\
2132	__PMC_EV(PPC7450, BRANCH_UNIT_STALL_ON_CTR_DEPENDENCY)		\
2133	__PMC_EV(PPC7450, FAST_BTIC_HIT)				\
2134	__PMC_EV(PPC7450, BRANCH_LINK_STACK_MISPREDICTED)		\
2135	__PMC_EV(PPC7450, CYCLES_THREE_INSTR_COMPLETED)			\
2136	__PMC_EV(PPC7450, CYCLES_NO_INSTR_DISPATCHED)			\
2137	__PMC_EV(PPC7450, GPR_ISSUE_QUEUE_ENTRIES_OVER_THRESHOLD)	\
2138	__PMC_EV(PPC7450, GPR_ISSUE_QUEUE_STALLED)			\
2139	__PMC_EV(PPC7450, IU1_INSTR_COMPLETED)				\
2140	__PMC_EV(PPC7450, DSSALL_INSTR_COMPLETED)			\
2141	__PMC_EV(PPC7450, TLBSYNC_INSTR_COMPLETED)			\
2142	__PMC_EV(PPC7450, SYNC_INSTR_COMPLETED)				\
2143	__PMC_EV(PPC7450, SS_SM_INSTR_PIECES)				\
2144	__PMC_EV(PPC7450, DTLB_HW_SEARCH_CYCLES)			\
2145	__PMC_EV(PPC7450, SNOOP_RETRIES)				\
2146	__PMC_EV(PPC7450, SUCCESSFUL_STWCX)				\
2147	__PMC_EV(PPC7450, DST_STREAM_3_CACHE_LINE_FETCHES)		\
2148	__PMC_EV(PPC7450,						\
2149	    THIRD_SPECULATIVE_BRANCH_BUFFER_RESOLVED_CORRECTLY)		\
2150	__PMC_EV(PPC7450, MISPREDICTED_BRANCHES)			\
2151	__PMC_EV(PPC7450, FOLDED_BRANCHES)				\
2152	__PMC_EV(PPC7450, FP_STORE_DOUBLE_COMPLETES_IN_LSU)		\
2153	__PMC_EV(PPC7450, L2_CACHE_HITS)				\
2154	__PMC_EV(PPC7450, L3_CACHE_HITS)				\
2155	__PMC_EV(PPC7450, L2_INSTR_CACHE_MISSES)			\
2156	__PMC_EV(PPC7450, L3_INSTR_CACHE_MISSES)			\
2157	__PMC_EV(PPC7450, L2_DATA_CACHE_MISSES)				\
2158	__PMC_EV(PPC7450, L3_DATA_CACHE_MISSES)				\
2159	__PMC_EV(PPC7450, L2_LOAD_HITS)					\
2160	__PMC_EV(PPC7450, L2_STORE_HITS)				\
2161	__PMC_EV(PPC7450, L3_LOAD_HITS)					\
2162	__PMC_EV(PPC7450, L3_STORE_HITS)				\
2163	__PMC_EV(PPC7450, L2_TOUCH_HITS)				\
2164	__PMC_EV(PPC7450, L3_TOUCH_HITS)				\
2165	__PMC_EV(PPC7450, SNOOP_MODIFIED)				\
2166	__PMC_EV(PPC7450, SNOOP_VALID)					\
2167	__PMC_EV(PPC7450, INTERVENTION)					\
2168	__PMC_EV(PPC7450, L2_CACHE_MISSES)				\
2169	__PMC_EV(PPC7450, L3_CACHE_MISSES)				\
2170	__PMC_EV(PPC7450, L2_CACHE_CASTOUTS)				\
2171	__PMC_EV(PPC7450, L3_CACHE_CASTOUTS)				\
2172	__PMC_EV(PPC7450, L2SQ_FULL_CYCLES)				\
2173	__PMC_EV(PPC7450, L3SQ_FULL_CYCLES)				\
2174	__PMC_EV(PPC7450, RAQ_FULL_CYCLES)				\
2175	__PMC_EV(PPC7450, WAQ_FULL_CYCLES)				\
2176	__PMC_EV(PPC7450, L1_EXTERNAL_INTERVENTIONS)			\
2177	__PMC_EV(PPC7450, L2_EXTERNAL_INTERVENTIONS)			\
2178	__PMC_EV(PPC7450, L3_EXTERNAL_INTERVENTIONS)			\
2179	__PMC_EV(PPC7450, EXTERNAL_INTERVENTIONS)			\
2180	__PMC_EV(PPC7450, EXTERNAL_PUSHES)				\
2181	__PMC_EV(PPC7450, EXTERNAL_SNOOP_RETRY)				\
2182	__PMC_EV(PPC7450, DTQ_FULL_CYCLES)				\
2183	__PMC_EV(PPC7450, BUS_RETRY)					\
2184	__PMC_EV(PPC7450, L2_VALID_REQUEST)				\
2185	__PMC_EV(PPC7450, BORDQ_FULL)					\
2186	__PMC_EV(PPC7450, BUS_TAS_FOR_READS)				\
2187	__PMC_EV(PPC7450, BUS_TAS_FOR_WRITES)				\
2188	__PMC_EV(PPC7450, BUS_READS_NOT_RETRIED)			\
2189	__PMC_EV(PPC7450, BUS_WRITES_NOT_RETRIED)			\
2190	__PMC_EV(PPC7450, BUS_READS_WRITES_NOT_RETRIED)			\
2191	__PMC_EV(PPC7450, BUS_RETRY_DUE_TO_L1_RETRY)			\
2192	__PMC_EV(PPC7450, BUS_RETRY_DUE_TO_PREVIOUS_ADJACENT)		\
2193	__PMC_EV(PPC7450, BUS_RETRY_DUE_TO_COLLISION)			\
2194	__PMC_EV(PPC7450, BUS_RETRY_DUE_TO_INTERVENTION_ORDERING)	\
2195	__PMC_EV(PPC7450, SNOOP_REQUESTS)				\
2196	__PMC_EV(PPC7450, PREFETCH_ENGINE_REQUEST)			\
2197	__PMC_EV(PPC7450, PREFETCH_ENGINE_COLLISION_VS_LOAD)		\
2198	__PMC_EV(PPC7450, PREFETCH_ENGINE_COLLISION_VS_STORE)		\
2199	__PMC_EV(PPC7450, PREFETCH_ENGINE_COLLISION_VS_INSTR_FETCH)	\
2200	__PMC_EV(PPC7450,						\
2201	    PREFETCH_ENGINE_COLLISION_VS_LOAD_STORE_INSTR_FETCH)	\
2202	__PMC_EV(PPC7450, PREFETCH_ENGINE_FULL)
2203
2204#define PMC_EV_PPC7450_FIRST	PMC_EV_PPC7450_CYCLE
2205#define PMC_EV_PPC7450_LAST	PMC_EV_PPC7450_PREFETCH_ENGINE_FULL
2206
2207#define __PMC_EV_PPC970() \
2208	__PMC_EV(PPC970, INSTR_COMPLETED) \
2209	__PMC_EV(PPC970, MARKED_GROUP_DISPATCH) \
2210	__PMC_EV(PPC970, MARKED_STORE_COMPLETED) \
2211	__PMC_EV(PPC970, GCT_EMPTY) \
2212	__PMC_EV(PPC970, RUN_CYCLES) \
2213	__PMC_EV(PPC970, OVERFLOW) \
2214	__PMC_EV(PPC970, CYCLES) \
2215	__PMC_EV(PPC970, THRESHOLD_TIMEOUT) \
2216	__PMC_EV(PPC970, GROUP_DISPATCH) \
2217	__PMC_EV(PPC970, BR_MARKED_INSTR_FINISH) \
2218	__PMC_EV(PPC970, GCT_EMPTY_BY_SRQ_FULL) \
2219	__PMC_EV(PPC970, STOP_COMPLETION) \
2220	__PMC_EV(PPC970, LSU_EMPTY) \
2221	__PMC_EV(PPC970, MARKED_STORE_WITH_INTR) \
2222	__PMC_EV(PPC970, CYCLES_IN_SUPER) \
2223	__PMC_EV(PPC970, VPU_MARKED_INSTR_COMPLETED) \
2224	__PMC_EV(PPC970, FXU0_IDLE_FXU1_BUSY) \
2225	__PMC_EV(PPC970, SRQ_EMPTY) \
2226	__PMC_EV(PPC970, MARKED_GROUP_COMPLETED) \
2227	__PMC_EV(PPC970, CR_MARKED_INSTR_FINISH) \
2228	__PMC_EV(PPC970, DISPATCH_SUCCESS) \
2229	__PMC_EV(PPC970, FXU0_IDLE_FXU1_IDLE) \
2230	__PMC_EV(PPC970, ONE_PLUS_INSTR_COMPLETED) \
2231	__PMC_EV(PPC970, GROUP_MARKED_IDU) \
2232	__PMC_EV(PPC970, MARKED_GROUP_COMPLETE_TIMEOUT) \
2233	__PMC_EV(PPC970, FXU0_BUSY_FXU1_BUSY) \
2234	__PMC_EV(PPC970, MARKED_STORE_SENT_TO_STS) \
2235	__PMC_EV(PPC970, FXU_MARKED_INSTR_FINISHED) \
2236	__PMC_EV(PPC970, MARKED_GROUP_ISSUED) \
2237	__PMC_EV(PPC970, FXU0_BUSY_FXU1_IDLE) \
2238	__PMC_EV(PPC970, GROUP_COMPLETED) \
2239	__PMC_EV(PPC970, FPU_MARKED_INSTR_COMPLETED) \
2240	__PMC_EV(PPC970, MARKED_INSTR_FINISH_ANY_UNIT) \
2241	__PMC_EV(PPC970, EXTERNAL_INTERRUPT) \
2242	__PMC_EV(PPC970, GROUP_DISPATCH_REJECT) \
2243	__PMC_EV(PPC970, LSU_MARKED_INSTR_FINISH) \
2244	__PMC_EV(PPC970, TIMEBASE_EVENT) \
2245	__PMC_EV(PPC970, LSU_COMPLETION_STALL) \
2246	__PMC_EV(PPC970, FXU_COMPLETION_STALL) \
2247	__PMC_EV(PPC970, DCACHE_MISS_COMPLETION_STALL) \
2248	__PMC_EV(PPC970, FPU_COMPLETION_STALL) \
2249	__PMC_EV(PPC970, FXU_LONG_INSTR_COMPLETION_STALL) \
2250	__PMC_EV(PPC970, REJECT_COMPLETION_STALL) \
2251	__PMC_EV(PPC970, FPU_LONG_INSTR_COMPLETION_STALL) \
2252	__PMC_EV(PPC970, GCT_EMPTY_BY_ICACHE_MISS) \
2253	__PMC_EV(PPC970, REJECT_COMPLETION_STALL_ERAT_MISS) \
2254	__PMC_EV(PPC970, GCT_EMPTY_BY_BRANCH_MISS_PREDICT) \
2255	__PMC_EV(PPC970, BUS_HIGH) \
2256	__PMC_EV(PPC970, BUS_LOW) \
2257	__PMC_EV(PPC970, ADDER)
2258
2259
2260#define PMC_EV_PPC970_FIRST		PMC_EV_PPC970_INSTR_COMPLETED
2261#define PMC_EV_PPC970_LAST		PMC_EV_PPC970_ADDER
2262
2263#define __PMC_EV_E500() \
2264	__PMC_EV(E500, CYCLES) \
2265	__PMC_EV(E500, INSTR_COMPLETED) \
2266	__PMC_EV(E500, UOPS_COMPLETED) \
2267	__PMC_EV(E500, INSTR_FETCHED) \
2268	__PMC_EV(E500, UOPS_DECODED) \
2269	__PMC_EV(E500, PM_EVENT_TRANSITIONS) \
2270	__PMC_EV(E500, PM_EVENT_CYCLES) \
2271	__PMC_EV(E500, BRANCH_INSTRS_COMPLETED) \
2272	__PMC_EV(E500, LOAD_UOPS_COMPLETED) \
2273	__PMC_EV(E500, STORE_UOPS_COMPLETED) \
2274	__PMC_EV(E500, CQ_REDIRECTS) \
2275	__PMC_EV(E500, BRANCHES_FINISHED) \
2276	__PMC_EV(E500, TAKEN_BRANCHES_FINISHED) \
2277	__PMC_EV(E500, FINISHED_UNCOND_BRANCHES_MISS_BTB) \
2278	__PMC_EV(E500, BRANCH_MISPRED) \
2279	__PMC_EV(E500, BTB_BRANCH_MISPRED_FROM_DIRECTION) \
2280	__PMC_EV(E500, BTB_HITS_PSEUDO_HITS) \
2281	__PMC_EV(E500, CYCLES_DECODE_STALLED) \
2282	__PMC_EV(E500, CYCLES_ISSUE_STALLED) \
2283	__PMC_EV(E500, CYCLES_BRANCH_ISSUE_STALLED) \
2284	__PMC_EV(E500, CYCLES_SU1_SCHED_STALLED) \
2285	__PMC_EV(E500, CYCLES_SU2_SCHED_STALLED) \
2286	__PMC_EV(E500, CYCLES_MU_SCHED_STALLED) \
2287	__PMC_EV(E500, CYCLES_LRU_SCHED_STALLED) \
2288	__PMC_EV(E500, CYCLES_BU_SCHED_STALLED) \
2289	__PMC_EV(E500, TOTAL_TRANSLATED) \
2290	__PMC_EV(E500, LOADS_TRANSLATED) \
2291	__PMC_EV(E500, STORES_TRANSLATED) \
2292	__PMC_EV(E500, TOUCHES_TRANSLATED) \
2293	__PMC_EV(E500, CACHEOPS_TRANSLATED) \
2294	__PMC_EV(E500, CACHE_INHIBITED_ACCESS_TRANSLATED) \
2295	__PMC_EV(E500, GUARDED_LOADS_TRANSLATED) \
2296	__PMC_EV(E500, WRITE_THROUGH_STORES_TRANSLATED) \
2297	__PMC_EV(E500, MISALIGNED_LOAD_STORE_ACCESS_TRANSLATED) \
2298	__PMC_EV(E500, TOTAL_ALLOCATED_TO_DLFB) \
2299	__PMC_EV(E500, LOADS_TRANSLATED_ALLOCATED_TO_DLFB) \
2300	__PMC_EV(E500, STORES_COMPLETED_ALLOCATED_TO_DLFB) \
2301	__PMC_EV(E500, TOUCHES_TRANSLATED_ALLOCATED_TO_DLFB) \
2302	__PMC_EV(E500, STORES_COMPLETED) \
2303	__PMC_EV(E500, DATA_L1_CACHE_LOCKS) \
2304	__PMC_EV(E500, DATA_L1_CACHE_RELOADS) \
2305	__PMC_EV(E500, DATA_L1_CACHE_CASTOUTS) \
2306	__PMC_EV(E500, LOAD_MISS_DLFB_FULL) \
2307	__PMC_EV(E500, LOAD_MISS_LDQ_FULL) \
2308	__PMC_EV(E500, LOAD_GUARDED_MISS) \
2309	__PMC_EV(E500, STORE_TRANSLATE_WHEN_QUEUE_FULL) \
2310	__PMC_EV(E500, ADDRESS_COLLISION) \
2311	__PMC_EV(E500, DATA_MMU_MISS) \
2312	__PMC_EV(E500, DATA_MMU_BUSY) \
2313	__PMC_EV(E500, PART2_MISALIGNED_CACHE_ACCESS) \
2314	__PMC_EV(E500, LOAD_MISS_DLFB_FULL_CYCLES) \
2315	__PMC_EV(E500, LOAD_MISS_LDQ_FULL_CYCLES) \
2316	__PMC_EV(E500, LOAD_GUARDED_MISS_CYCLES) \
2317	__PMC_EV(E500, STORE_TRANSLATE_WHEN_QUEUE_FULL_CYCLES) \
2318	__PMC_EV(E500, ADDRESS_COLLISION_CYCLES) \
2319	__PMC_EV(E500, DATA_MMU_MISS_CYCLES) \
2320	__PMC_EV(E500, DATA_MMU_BUSY_CYCLES) \
2321	__PMC_EV(E500, PART2_MISALIGNED_CACHE_ACCESS_CYCLES) \
2322	__PMC_EV(E500, INSTR_L1_CACHE_LOCKS) \
2323	__PMC_EV(E500, INSTR_L1_CACHE_RELOADS) \
2324	__PMC_EV(E500, INSTR_L1_CACHE_FETCHES) \
2325	__PMC_EV(E500, INSTR_MMU_TLB4K_RELOADS) \
2326	__PMC_EV(E500, INSTR_MMU_VSP_RELOADS) \
2327	__PMC_EV(E500, DATA_MMU_TLB4K_RELOADS) \
2328	__PMC_EV(E500, DATA_MMU_VSP_RELOADS) \
2329	__PMC_EV(E500, L2MMU_MISSES) \
2330	__PMC_EV(E500, BIU_MASTER_REQUESTS) \
2331	__PMC_EV(E500, BIU_MASTER_INSTR_SIDE_REQUESTS) \
2332	__PMC_EV(E500, BIU_MASTER_DATA_SIDE_REQUESTS) \
2333	__PMC_EV(E500, BIU_MASTER_DATA_SIDE_CASTOUT_REQUESTS) \
2334	__PMC_EV(E500, BIU_MASTER_RETRIES) \
2335	__PMC_EV(E500, SNOOP_REQUESTS) \
2336	__PMC_EV(E500, SNOOP_HITS) \
2337	__PMC_EV(E500, SNOOP_PUSHES) \
2338	__PMC_EV(E500, SNOOP_RETRIES) \
2339	__PMC_EV(E500, DLFB_LOAD_MISS_CYCLES) \
2340	__PMC_EV(E500, ILFB_FETCH_MISS_CYCLES) \
2341	__PMC_EV(E500, EXT_INPU_INTR_LATENCY_CYCLES) \
2342	__PMC_EV(E500, CRIT_INPUT_INTR_LATENCY_CYCLES) \
2343	__PMC_EV(E500, EXT_INPUT_INTR_PENDING_LATENCY_CYCLES) \
2344	__PMC_EV(E500, CRIT_INPUT_INTR_PENDING_LATENCY_CYCLES) \
2345	__PMC_EV(E500, PMC0_OVERFLOW) \
2346	__PMC_EV(E500, PMC1_OVERFLOW) \
2347	__PMC_EV(E500, PMC2_OVERFLOW) \
2348	__PMC_EV(E500, PMC3_OVERFLOW) \
2349	__PMC_EV(E500, INTERRUPTS_TAKEN) \
2350	__PMC_EV(E500, EXT_INPUT_INTR_TAKEN) \
2351	__PMC_EV(E500, CRIT_INPUT_INTR_TAKEN) \
2352	__PMC_EV(E500, SYSCALL_TRAP_INTR) \
2353	__PMC_EV(E500, TLB_BIT_TRANSITIONS) \
2354	__PMC_EV(E500, L2_LINEFILL_BUFFER) \
2355	__PMC_EV(E500, LV2_VS) \
2356	__PMC_EV(E500, CASTOUTS_RELEASED) \
2357	__PMC_EV(E500, INTV_ALLOCATIONS) \
2358	__PMC_EV(E500, DLFB_RETRIES_TO_MBAR) \
2359	__PMC_EV(E500, STORE_RETRIES) \
2360	__PMC_EV(E500, STASH_L1_HITS) \
2361	__PMC_EV(E500, STASH_L2_HITS) \
2362	__PMC_EV(E500, STASH_BUSY_1) \
2363	__PMC_EV(E500, STASH_BUSY_2) \
2364	__PMC_EV(E500, STASH_BUSY_3) \
2365	__PMC_EV(E500, STASH_HITS) \
2366	__PMC_EV(E500, STASH_HIT_DLFB) \
2367	__PMC_EV(E500, STASH_REQUESTS) \
2368	__PMC_EV(E500, STASH_REQUESTS_L1) \
2369	__PMC_EV(E500, STASH_REQUESTS_L2) \
2370	__PMC_EV(E500, STALLS_NO_CAQ_OR_COB) \
2371	__PMC_EV(E500, L2_CACHE_ACCESSES) \
2372	__PMC_EV(E500, L2_HIT_CACHE_ACCESSES) \
2373	__PMC_EV(E500, L2_CACHE_DATA_ACCESSES) \
2374	__PMC_EV(E500, L2_CACHE_DATA_HITS) \
2375	__PMC_EV(E500, L2_CACHE_INSTR_ACCESSES) \
2376	__PMC_EV(E500, L2_CACHE_INSTR_HITS) \
2377	__PMC_EV(E500, L2_CACHE_ALLOCATIONS) \
2378	__PMC_EV(E500, L2_CACHE_DATA_ALLOCATIONS) \
2379	__PMC_EV(E500, L2_CACHE_DIRTY_DATA_ALLOCATIONS) \
2380	__PMC_EV(E500, L2_CACHE_INSTR_ALLOCATIONS) \
2381	__PMC_EV(E500, L2_CACHE_UPDATES) \
2382	__PMC_EV(E500, L2_CACHE_CLEAN_UPDATES) \
2383	__PMC_EV(E500, L2_CACHE_DIRTY_UPDATES) \
2384	__PMC_EV(E500, L2_CACHE_CLEAN_REDUNDANT_UPDATES) \
2385	__PMC_EV(E500, L2_CACHE_DIRTY_REDUNDANT_UPDATES) \
2386	__PMC_EV(E500, L2_CACHE_LOCKS) \
2387	__PMC_EV(E500, L2_CACHE_CASTOUTS) \
2388	__PMC_EV(E500, L2_CACHE_DATA_DIRTY_HITS) \
2389	__PMC_EV(E500, INSTR_LFB_WENT_HIGH_PRIORITY) \
2390	__PMC_EV(E500, SNOOP_THROTTLING_TURNED_ON) \
2391	__PMC_EV(E500, L2_CLEAN_LINE_INVALIDATIONS) \
2392	__PMC_EV(E500, L2_INCOHERENT_LINE_INVALIDATIONS) \
2393	__PMC_EV(E500, L2_COHERENT_LINE_INVALIDATIONS) \
2394	__PMC_EV(E500, COHERENT_LOOKUP_MISS_DUE_TO_VALID_BUT_INCOHERENT_MATCHES) \
2395	__PMC_EV(E500, IAC1S_DETECTED) \
2396	__PMC_EV(E500, IAC2S_DETECTED) \
2397	__PMC_EV(E500, DAC1S_DTECTED) \
2398	__PMC_EV(E500, DAC2S_DTECTED) \
2399	__PMC_EV(E500, DVT0_DETECTED) \
2400	__PMC_EV(E500, DVT1_DETECTED) \
2401	__PMC_EV(E500, DVT2_DETECTED) \
2402	__PMC_EV(E500, DVT3_DETECTED) \
2403	__PMC_EV(E500, DVT4_DETECTED) \
2404	__PMC_EV(E500, DVT5_DETECTED) \
2405	__PMC_EV(E500, DVT6_DETECTED) \
2406	__PMC_EV(E500, DVT7_DETECTED) \
2407	__PMC_EV(E500, CYCLES_COMPLETION_STALLED_NEXUS_FIFO_FULL) \
2408	__PMC_EV(E500, FPU_DOUBLE_PUMP) \
2409	__PMC_EV(E500, FPU_FINISH) \
2410	__PMC_EV(E500, FPU_DIVIDE_CYCLES) \
2411	__PMC_EV(E500, FPU_DENORM_INPUT_CYCLES) \
2412	__PMC_EV(E500, FPU_RESULT_STALL_CYCLES) \
2413	__PMC_EV(E500, FPU_FPSCR_FULL_STALL) \
2414	__PMC_EV(E500, FPU_PIPE_SYNC_STALLS) \
2415	__PMC_EV(E500, FPU_INPUT_DATA_STALLS) \
2416	__PMC_EV(E500, DECORATED_LOADS) \
2417	__PMC_EV(E500, DECORATED_STORES) \
2418	__PMC_EV(E500, LOAD_RETRIES) \
2419	__PMC_EV(E500, STWCX_SUCCESSES) \
2420	__PMC_EV(E500, STWCX_FAILURES) \
2421
2422#define PMC_EV_E500_FIRST		PMC_EV_E500_CYCLES
2423#define PMC_EV_E500_LAST		PMC_EV_E500_STWCX_FAILURES
2424/*
2425 * All known PMC events.
2426 *
2427 * PMC event numbers are allocated sparsely to allow new PMC events to
2428 * be added to a PMC class without breaking ABI compatibility.  The
2429 * current allocation scheme is:
2430 *
2431 * START	#EVENTS		DESCRIPTION
2432 * 0		0x1000		Reserved
2433 * 0x1000	0x0001		TSC
2434 * 0x2000	0x0080		AMD K7 events
2435 * 0x2080	0x0100		AMD K8 events
2436 * 0x10000	0x0080		INTEL architectural fixed-function events
2437 * 0x10080	0x0F80		free (was INTEL architectural programmable events)
2438 * 0x11000	0x0080		free (was INTEL Pentium 4 events)
2439 * 0x11080	0x0080		free (was INTEL Pentium MMX events)
2440 * 0x11100	0x0100		free (was INTEL Pentium Pro/P-II/P-III/Pentium-M events)
2441 * 0x11200	0x00FF		free (was INTEL XScale events)
2442 * 0x11300	0x00FF		free (was MIPS 24K events)
2443 * 0x11400	0x00FF		free (was Octeon events)
2444 * 0x11500	0x00FF		free (was MIPS 74K events)
2445 * 0x11600	0x00FF		free (was BERI statcounters)
2446 * 0x13000	0x00FF		MPC7450 events
2447 * 0x13100	0x00FF		IBM PPC970 events
2448 * 0x13200	0x00FF		free (was IBM POWER8 events)
2449 * 0x13300	0x00FF		Freescale e500 events
2450 * 0x14000	0x0100		ARMv7 events
2451 * 0x14100	0x0400		ARMv8 events
2452 * 0x14500	0x0020		ARM DMC-620 clkdiv2 events
2453 * 0x14520	0x0080		ARM DMC-620 clk events
2454 * 0x14600	0x0100		ARM CMN-600 events
2455 * 0x20000	0x1000		Software events
2456 */
2457#define	__PMC_EVENTS()					\
2458	__PMC_EV_BLOCK(TSC,		0x01000)	\
2459	__PMC_EV_TSC()					\
2460	__PMC_EV_BLOCK(K7,		0x02000)	\
2461	__PMC_EV_K7()					\
2462	__PMC_EV_BLOCK(K8,		0x02080)	\
2463	__PMC_EV_K8()					\
2464	__PMC_EV_BLOCK(IAF,		0x10000)	\
2465	__PMC_EV_IAF()					\
2466	__PMC_EV_BLOCK(PPC7450,		0x13000)	\
2467	__PMC_EV_PPC7450()				\
2468	__PMC_EV_BLOCK(PPC970,		0x13100)	\
2469	__PMC_EV_PPC970()				\
2470	__PMC_EV_BLOCK(E500,		0x13300)	\
2471	__PMC_EV_E500()					\
2472	__PMC_EV_BLOCK(ARMV7,		0x14000)	\
2473	__PMC_EV_ARMV7()				\
2474	__PMC_EV_BLOCK(ARMV8,		0x14100)	\
2475	__PMC_EV_ARMV8()				\
2476	__PMC_EV_BLOCK(DMC620_PMU_CD2,	0x14500)	\
2477	__PMC_EV_DMC620_PMU_CD2()			\
2478	__PMC_EV_BLOCK(DMC620_PMU_C,	0x14520)	\
2479	__PMC_EV_DMC620_PMU_C()				\
2480	__PMC_EV_BLOCK(CMN600_PMU,	0x14600)	\
2481	__PMC_EV_CMN600_PMU()
2482
2483#define	PMC_EVENT_FIRST	PMC_EV_TSC_TSC
2484#define	PMC_EVENT_LAST	PMC_EV_SOFT_LAST
2485
2486#endif /* _DEV_HWPMC_PMC_EVENTS_H_ */