Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/arch/powerpc/include/asm/cell-pmu.h
26481 views
1
/* SPDX-License-Identifier: GPL-2.0-or-later */
2
/*
3
* Cell Broadband Engine Performance Monitor
4
*
5
* (C) Copyright IBM Corporation 2006
6
*
7
* Author:
8
* David Erb ([email protected])
9
* Kevin Corry ([email protected])
10
*/
11
12
#ifndef __ASM_CELL_PMU_H__
13
#define __ASM_CELL_PMU_H__
14
15
/* The Cell PMU has four hardware performance counters, which can be
16
* configured as four 32-bit counters or eight 16-bit counters.
17
*/
18
#define NR_PHYS_CTRS 4
19
#define NR_CTRS (NR_PHYS_CTRS * 2)
20
21
/* Macros for the pm_control register. */
22
#define CBE_PM_16BIT_CTR(ctr) (1 << (24 - ((ctr) & (NR_PHYS_CTRS - 1))))
23
24
/* Macros for the trace_address register. */
25
#define CBE_PM_TRACE_BUF_EMPTY 0x00000400
26
27
enum pm_reg_name {
28
group_control,
29
debug_bus_control,
30
trace_address,
31
ext_tr_timer,
32
pm_status,
33
pm_control,
34
pm_interval,
35
pm_start_stop,
36
};
37
38
#endif /* __ASM_CELL_PMU_H__ */
39
40