Source
x
static int qcom_l3_cache_pmu_offline_cpu(unsigned int cpu, struct hlist_node *node)
/*
* Driver for the L3 cache PMUs in Qualcomm Technologies chips.
*
* The driver supports a distributed cache architecture where the overall
* cache for a socket is comprised of multiple slices each with its own PMU.
* Access to each individual PMU is provided even though all CPUs share all
* the slices. User space needs to aggregate to individual counts to provide
* a global picture.
*
* See Documentation/perf/qcom_l3_pmu.txt for more details.
*
* Copyright (c) 2015-2017, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
/*
* General constants
*/
/* Number of counters on each PMU */
/* Mask for the event type field within perf_event_attr.config and EVTYPE reg */
/*
* Bit position of the 'long counter' flag within perf_event_attr.config.
* Reserve some space between the event type and this flag to allow expansion
* in the event type field.
*/
/*
* Register offsets
*/
/* Perfmon registers */
/* Basic counter registers */
/*
* Bit field definitions
*/
/* L3_HML3_PM_CR */
/* L3_HML3_PM_XCNTCTL/L3_HML3_PM_CNTCTLx */
/* L3_HML3_PM_EVTYPEx */
/* Reset value for all the filter registers */
/* L3_M_BC_CR */