03f7c1d2a4
Based on getPerfCountInfo v1.018 documentation, some of the
hv_gpci events were deprecated for platform firmware that
supports counter_info_version 0x8 or above.
Fix the hv_gpci event list by adding a new attribute group
called "hv_gpci_event_attrs_v6" and a "ENABLE_EVENTS_COUNTERINFO_V6"
macro to enable these events for platform firmware
that supports counter_info_version 0x6 or below. And assigning
the hv_gpci event list based on output counter info version
of underlying plaform.
Fixes: 97bf264018
("powerpc/perf/hv-gpci: add the remaining gpci requests")
Signed-off-by: Kajol Jain <kjain@linux.ibm.com>
Reviewed-by: Madhavan Srinivasan <maddy@linux.ibm.com>
Reviewed-by: Athira Rajeev <atrajeev@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20221130174513.87501-1-kjain@linux.ibm.com
36 lines
771 B
C
36 lines
771 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef LINUX_POWERPC_PERF_HV_GPCI_H_
|
|
#define LINUX_POWERPC_PERF_HV_GPCI_H_
|
|
|
|
/*
|
|
* counter info version => fw version/reference (spec version)
|
|
*
|
|
* 8 => power8 (1.07)
|
|
* [7 is skipped by spec 1.07]
|
|
* 6 => TLBIE (1.07)
|
|
* 5 => v7r7m0.phyp (1.05)
|
|
* [4 skipped]
|
|
* 3 => v7r6m0.phyp (?)
|
|
* [1,2 skipped]
|
|
* 0 => v7r{2,3,4}m0.phyp (?)
|
|
*/
|
|
#define COUNTER_INFO_VERSION_CURRENT 0x8
|
|
|
|
/* capability mask masks. */
|
|
enum {
|
|
HV_GPCI_CM_GA = (1 << 7),
|
|
HV_GPCI_CM_EXPANDED = (1 << 6),
|
|
HV_GPCI_CM_LAB = (1 << 5)
|
|
};
|
|
|
|
#define REQUEST_FILE "../hv-gpci-requests.h"
|
|
#define NAME_LOWER hv_gpci
|
|
#define NAME_UPPER HV_GPCI
|
|
#define ENABLE_EVENTS_COUNTERINFO_V6
|
|
#include "req-gen/perf.h"
|
|
#undef REQUEST_FILE
|
|
#undef NAME_LOWER
|
|
#undef NAME_UPPER
|
|
|
|
#endif
|