|
Packit |
577717 |
/*
|
|
Packit |
577717 |
* Copyright (c) 2014 Google Inc. All rights reserved
|
|
Packit |
577717 |
* Contributed by Stephane Eranian <eranian@gmail.com>
|
|
Packit |
577717 |
*
|
|
Packit |
577717 |
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
Packit |
577717 |
* of this software and associated documentation files (the "Software"), to deal
|
|
Packit |
577717 |
* in the Software without restriction, including without limitation the rights
|
|
Packit |
577717 |
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
|
|
Packit |
577717 |
* of the Software, and to permit persons to whom the Software is furnished to do so,
|
|
Packit |
577717 |
* subject to the following conditions:
|
|
Packit |
577717 |
*
|
|
Packit |
577717 |
* The above copyright notice and this permission notice shall be included in all
|
|
Packit |
577717 |
* copies or substantial portions of the Software.
|
|
Packit |
577717 |
*
|
|
Packit |
577717 |
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
|
Packit |
577717 |
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
|
|
Packit |
577717 |
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
Packit |
577717 |
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
|
|
Packit |
577717 |
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
|
|
Packit |
577717 |
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
Packit |
577717 |
*
|
|
Packit |
577717 |
* This file is part of libpfm, a performance monitoring support library for
|
|
Packit |
577717 |
* applications on Linux.
|
|
Packit |
577717 |
*
|
|
Packit |
577717 |
* This file has been automatically generated.
|
|
Packit |
577717 |
*
|
|
Packit |
577717 |
* PMU: ivbep_unc_r2pcie (Intel IvyBridge-EP R2PCIe uncore)
|
|
Packit |
577717 |
*/
|
|
Packit |
577717 |
|
|
Packit |
577717 |
static const intel_x86_umask_t ivbep_unc_r2_ring_ad_used[]={
|
|
Packit |
577717 |
{ .uname = "CCW_VR0_EVEN",
|
|
Packit |
577717 |
.udesc = "Counter-clockwise and even ring polarity on virtual ring 0",
|
|
Packit |
577717 |
.ucode = 0x400,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .uname = "CCW_VR0_ODD",
|
|
Packit |
577717 |
.udesc = "Counter-clockwise and odd ring polarity on virtual ring 0",
|
|
Packit |
577717 |
.ucode = 0x800,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .uname = "CW_VR0_EVEN",
|
|
Packit |
577717 |
.udesc = "Clockwise and even ring polarity on virtual ring 0",
|
|
Packit |
577717 |
.ucode = 0x100,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .uname = "CW_VR0_ODD",
|
|
Packit |
577717 |
.udesc = "Clockwise and odd ring polarity on virtual ring 0",
|
|
Packit |
577717 |
.ucode = 0x200,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .uname = "CCW_VR1_EVEN",
|
|
Packit |
577717 |
.udesc = "Counter-clockwise and even ring polarity on virtual ring 1",
|
|
Packit |
577717 |
.ucode = 0x400,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .uname = "CCW_VR1_ODD",
|
|
Packit |
577717 |
.udesc = "Counter-clockwise and odd ring polarity on virtual ring 1",
|
|
Packit |
577717 |
.ucode = 0x800,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .uname = "CW_VR1_EVEN",
|
|
Packit |
577717 |
.udesc = "Clockwise and even ring polarity on virtual ring 1",
|
|
Packit |
577717 |
.ucode = 0x100,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .uname = "CW_VR1_ODD",
|
|
Packit |
577717 |
.udesc = "Clockwise and odd ring polarity on virtual ring 1",
|
|
Packit |
577717 |
.ucode = 0x200,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .uname = "CW",
|
|
Packit |
577717 |
.udesc = "Clockwise with any polarity on either virtual rings",
|
|
Packit |
577717 |
.ucode = 0x3300,
|
|
Packit |
577717 |
.uflags = INTEL_X86_NCOMBO,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .uname = "CCW",
|
|
Packit |
577717 |
.udesc = "Counter-clockwise with any polarity on either virtual rings",
|
|
Packit |
577717 |
.ucode = 0xcc00,
|
|
Packit |
577717 |
.uflags = INTEL_X86_NCOMBO,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
};
|
|
Packit |
577717 |
|
|
Packit |
577717 |
static const intel_x86_umask_t ivbep_unc_r2_rxr_ak_bounces[]={
|
|
Packit |
577717 |
{ .uname = "CW",
|
|
Packit |
577717 |
.udesc = "Clockwise",
|
|
Packit |
577717 |
.ucode = 0x100,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .uname = "CCW",
|
|
Packit |
577717 |
.udesc = "Counter-clockwise",
|
|
Packit |
577717 |
.ucode = 0x200,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
};
|
|
Packit |
577717 |
|
|
Packit |
577717 |
static const intel_x86_umask_t ivbep_unc_r2_rxr_occupancy[]={
|
|
Packit |
577717 |
{ .uname = "DRS",
|
|
Packit |
577717 |
.udesc = "DRS Ingress queue",
|
|
Packit |
577717 |
.ucode = 0x800,
|
|
Packit |
577717 |
.uflags = INTEL_X86_DFL,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
};
|
|
Packit |
577717 |
|
|
Packit |
577717 |
static const intel_x86_umask_t ivbep_unc_r2_ring_iv_used[]={
|
|
Packit |
577717 |
{ .uname = "CW",
|
|
Packit |
577717 |
.udesc = "Clockwise with any polarity on either virtual rings",
|
|
Packit |
577717 |
.ucode = 0x3300,
|
|
Packit |
577717 |
.uflags = INTEL_X86_NCOMBO,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .uname = "CCW",
|
|
Packit |
577717 |
.udesc = "Counter-clockwise with any polarity on either virtual rings",
|
|
Packit |
577717 |
.ucode = 0xcc00,
|
|
Packit |
577717 |
.uflags = INTEL_X86_NCOMBO,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .uname = "ANY",
|
|
Packit |
577717 |
.udesc = "any direction and any polarity on any virtual ring",
|
|
Packit |
577717 |
.ucode = 0xff00,
|
|
Packit |
577717 |
.uflags = INTEL_X86_NCOMBO | INTEL_X86_DFL,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
};
|
|
Packit |
577717 |
|
|
Packit |
577717 |
static const intel_x86_umask_t ivbep_unc_r2_rxr_cycles_ne[]={
|
|
Packit |
577717 |
{ .uname = "NCB",
|
|
Packit |
577717 |
.udesc = "NCB Ingress queue",
|
|
Packit |
577717 |
.ucode = 0x1000,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .uname = "NCS",
|
|
Packit |
577717 |
.udesc = "NCS Ingress queue",
|
|
Packit |
577717 |
.ucode = 0x2000,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
};
|
|
Packit |
577717 |
|
|
Packit |
577717 |
static const intel_x86_umask_t ivbep_unc_r2_txr_cycles_full[]={
|
|
Packit |
577717 |
{ .uname = "AD",
|
|
Packit |
577717 |
.udesc = "AD Egress queue",
|
|
Packit |
577717 |
.ucode = 0x100,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .uname = "AK",
|
|
Packit |
577717 |
.udesc = "AK Egress queue",
|
|
Packit |
577717 |
.ucode = 0x200,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .uname = "BL",
|
|
Packit |
577717 |
.udesc = "BL Egress queue",
|
|
Packit |
577717 |
.ucode = 0x400,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
};
|
|
Packit |
577717 |
|
|
Packit |
577717 |
static const intel_x86_entry_t intel_ivbep_unc_r2_pe[]={
|
|
Packit |
577717 |
{ .name = "UNC_R2_CLOCKTICKS",
|
|
Packit |
577717 |
.desc = "Number of uclks in domain",
|
|
Packit |
577717 |
.code = 0x1,
|
|
Packit |
577717 |
.cntmsk = 0xf,
|
|
Packit |
577717 |
.modmsk = IVBEP_UNC_R2PCIE_ATTRS,
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .name = "UNC_R2_RING_AD_USED",
|
|
Packit |
577717 |
.desc = "R2 AD Ring in Use",
|
|
Packit |
577717 |
.code = 0x7,
|
|
Packit |
577717 |
.cntmsk = 0xf,
|
|
Packit |
577717 |
.ngrp = 1,
|
|
Packit |
577717 |
.modmsk = IVBEP_UNC_R2PCIE_ATTRS,
|
|
Packit |
577717 |
.numasks = LIBPFM_ARRAY_SIZE(ivbep_unc_r2_ring_ad_used),
|
|
Packit |
577717 |
.umasks = ivbep_unc_r2_ring_ad_used
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .name = "UNC_R2_RING_AK_USED",
|
|
Packit |
577717 |
.desc = "R2 AK Ring in Use",
|
|
Packit |
577717 |
.code = 0x8,
|
|
Packit |
577717 |
.cntmsk = 0xf,
|
|
Packit |
577717 |
.ngrp = 1,
|
|
Packit |
577717 |
.modmsk = IVBEP_UNC_R2PCIE_ATTRS,
|
|
Packit |
577717 |
.numasks = LIBPFM_ARRAY_SIZE(ivbep_unc_r2_ring_ad_used),
|
|
Packit |
577717 |
.umasks = ivbep_unc_r2_ring_ad_used /* shared */
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .name = "UNC_R2_RING_BL_USED",
|
|
Packit |
577717 |
.desc = "R2 BL Ring in Use",
|
|
Packit |
577717 |
.code = 0x9,
|
|
Packit |
577717 |
.cntmsk = 0xf,
|
|
Packit |
577717 |
.ngrp = 1,
|
|
Packit |
577717 |
.modmsk = IVBEP_UNC_R2PCIE_ATTRS,
|
|
Packit |
577717 |
.numasks = LIBPFM_ARRAY_SIZE(ivbep_unc_r2_ring_ad_used),
|
|
Packit |
577717 |
.umasks = ivbep_unc_r2_ring_ad_used /* shared */
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .name = "UNC_R2_RING_IV_USED",
|
|
Packit |
577717 |
.desc = "R2 IV Ring in Use",
|
|
Packit |
577717 |
.code = 0xa,
|
|
Packit |
577717 |
.cntmsk = 0xf,
|
|
Packit |
577717 |
.ngrp = 1,
|
|
Packit |
577717 |
.modmsk = IVBEP_UNC_R2PCIE_ATTRS,
|
|
Packit |
577717 |
.numasks = LIBPFM_ARRAY_SIZE(ivbep_unc_r2_ring_iv_used),
|
|
Packit |
577717 |
.umasks = ivbep_unc_r2_ring_iv_used
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .name = "UNC_R2_RXR_AK_BOUNCES",
|
|
Packit |
577717 |
.desc = "AK Ingress Bounced",
|
|
Packit |
577717 |
.code = 0x12,
|
|
Packit |
577717 |
.cntmsk = 0x1,
|
|
Packit |
577717 |
.modmsk = IVBEP_UNC_R2PCIE_ATTRS,
|
|
Packit |
577717 |
.ngrp = 1,
|
|
Packit |
577717 |
.numasks = LIBPFM_ARRAY_SIZE(ivbep_unc_r2_rxr_ak_bounces),
|
|
Packit |
577717 |
.umasks = ivbep_unc_r2_rxr_ak_bounces
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .name = "UNC_R2_RXR_OCCUPANCY",
|
|
Packit |
577717 |
.desc = "Ingress occupancy accumulator",
|
|
Packit |
577717 |
.code = 0x13,
|
|
Packit |
577717 |
.cntmsk = 0x1,
|
|
Packit |
577717 |
.modmsk = IVBEP_UNC_R2PCIE_ATTRS,
|
|
Packit |
577717 |
.ngrp = 1,
|
|
Packit |
577717 |
.numasks = LIBPFM_ARRAY_SIZE(ivbep_unc_r2_rxr_occupancy),
|
|
Packit |
577717 |
.umasks = ivbep_unc_r2_rxr_occupancy
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .name = "UNC_R2_RXR_CYCLES_NE",
|
|
Packit |
577717 |
.desc = "Ingress Cycles Not Empty",
|
|
Packit |
577717 |
.code = 0x10,
|
|
Packit |
577717 |
.cntmsk = 0x3,
|
|
Packit |
577717 |
.ngrp = 1,
|
|
Packit |
577717 |
.modmsk = IVBEP_UNC_R2PCIE_ATTRS,
|
|
Packit |
577717 |
.numasks = LIBPFM_ARRAY_SIZE(ivbep_unc_r2_rxr_cycles_ne),
|
|
Packit |
577717 |
.umasks = ivbep_unc_r2_rxr_cycles_ne
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .name = "UNC_R2_RXR_INSERTS",
|
|
Packit |
577717 |
.desc = "Ingress inserts",
|
|
Packit |
577717 |
.code = 0x11,
|
|
Packit |
577717 |
.cntmsk = 0x3,
|
|
Packit |
577717 |
.ngrp = 1,
|
|
Packit |
577717 |
.modmsk = IVBEP_UNC_R2PCIE_ATTRS,
|
|
Packit |
577717 |
.numasks = LIBPFM_ARRAY_SIZE(ivbep_unc_r2_rxr_cycles_ne),
|
|
Packit |
577717 |
.umasks = ivbep_unc_r2_rxr_cycles_ne, /* shared */
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .name = "UNC_R2_TXR_CYCLES_FULL",
|
|
Packit |
577717 |
.desc = "Egress Cycles Full",
|
|
Packit |
577717 |
.code = 0x25,
|
|
Packit |
577717 |
.cntmsk = 0x1,
|
|
Packit |
577717 |
.ngrp = 1,
|
|
Packit |
577717 |
.modmsk = IVBEP_UNC_R2PCIE_ATTRS,
|
|
Packit |
577717 |
.numasks = LIBPFM_ARRAY_SIZE(ivbep_unc_r2_txr_cycles_full),
|
|
Packit |
577717 |
.umasks = ivbep_unc_r2_txr_cycles_full
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .name = "UNC_R2_TXR_CYCLES_NE",
|
|
Packit |
577717 |
.desc = "Egress Cycles Not Empty",
|
|
Packit |
577717 |
.code = 0x23,
|
|
Packit |
577717 |
.cntmsk = 0x1,
|
|
Packit |
577717 |
.ngrp = 1,
|
|
Packit |
577717 |
.modmsk = IVBEP_UNC_R2PCIE_ATTRS,
|
|
Packit |
577717 |
.numasks = LIBPFM_ARRAY_SIZE(ivbep_unc_r2_txr_cycles_full),
|
|
Packit |
577717 |
.umasks = ivbep_unc_r2_txr_cycles_full /* shared */
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .name = "UNC_R2_TXR_NACK_CCW",
|
|
Packit |
577717 |
.desc = "Egress counter-clockwise BACK",
|
|
Packit |
577717 |
.code = 0x28,
|
|
Packit |
577717 |
.cntmsk = 0x1,
|
|
Packit |
577717 |
.ngrp = 1,
|
|
Packit |
577717 |
.modmsk = IVBEP_UNC_R2PCIE_ATTRS,
|
|
Packit |
577717 |
.numasks = LIBPFM_ARRAY_SIZE(ivbep_unc_r2_txr_cycles_full),
|
|
Packit |
577717 |
.umasks = ivbep_unc_r2_txr_cycles_full /* shared */
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
{ .name = "UNC_R2_TXR_NACK_CW",
|
|
Packit |
577717 |
.desc = "Egress clockwise BACK",
|
|
Packit |
577717 |
.code = 0x26,
|
|
Packit |
577717 |
.cntmsk = 0x1,
|
|
Packit |
577717 |
.ngrp = 1,
|
|
Packit |
577717 |
.modmsk = IVBEP_UNC_R2PCIE_ATTRS,
|
|
Packit |
577717 |
.numasks = LIBPFM_ARRAY_SIZE(ivbep_unc_r2_txr_cycles_full),
|
|
Packit |
577717 |
.umasks = ivbep_unc_r2_txr_cycles_full /* shared */
|
|
Packit |
577717 |
},
|
|
Packit |
577717 |
};
|