|
Linux Kernel
3.7.1
|
#include <linux/bitmap.h>#include <linux/interrupt.h>#include <linux/kernel.h>#include <linux/export.h>#include <linux/perf_event.h>#include <linux/platform_device.h>#include <linux/spinlock.h>#include <linux/uaccess.h>#include <asm/cputype.h>#include <asm/irq.h>#include <asm/irq_regs.h>#include <asm/pmu.h>#include <asm/stacktrace.h>Go to the source code of this file.
Data Structures | |
| struct | frame_tail |
Macros | |
| #define | pr_fmt(fmt) "hw perfevents: " fmt |
| #define | ARMPMU_MAX_HWEVENTS 32 |
| #define | to_arm_pmu(p) (container_of(p, struct arm_pmu, pmu)) |
| #define | HW_OP_UNSUPPORTED 0xFFFF |
| #define | C(_x) PERF_COUNT_HW_CACHE_##_x |
| #define | CACHE_OP_UNSUPPORTED 0xFFFF |
| #define | ARMV8_IDX_CYCLE_COUNTER 0 |
| #define | ARMV8_IDX_COUNTER0 1 |
| #define | ARMV8_IDX_COUNTER_LAST (ARMV8_IDX_CYCLE_COUNTER + cpu_pmu->num_events - 1) |
| #define | ARMV8_MAX_COUNTERS 32 |
| #define | ARMV8_COUNTER_MASK (ARMV8_MAX_COUNTERS - 1) |
| #define | ARMV8_IDX_TO_COUNTER(x) (((x) - ARMV8_IDX_COUNTER0) & ARMV8_COUNTER_MASK) |
| #define | ARMV8_PMCR_E (1 << 0) /* Enable all counters */ |
| #define | ARMV8_PMCR_P (1 << 1) /* Reset all counters */ |
| #define | ARMV8_PMCR_C (1 << 2) /* Cycle counter reset */ |
| #define | ARMV8_PMCR_D (1 << 3) /* CCNT counts every 64th cpu cycle */ |
| #define | ARMV8_PMCR_X (1 << 4) /* Export to ETM */ |
| #define | ARMV8_PMCR_DP (1 << 5) /* Disable CCNT if non-invasive debug*/ |
| #define | ARMV8_PMCR_N_SHIFT 11 /* Number of counters supported */ |
| #define | ARMV8_PMCR_N_MASK 0x1f |
| #define | ARMV8_PMCR_MASK 0x3f /* Mask for writable bits */ |
| #define | ARMV8_OVSR_MASK 0xffffffff /* Mask for writable bits */ |
| #define | ARMV8_OVERFLOWED_MASK ARMV8_OVSR_MASK |
| #define | ARMV8_EVTYPE_MASK 0xc00000ff /* Mask for writable bits */ |
| #define | ARMV8_EVTYPE_EVENT 0xff /* Mask for EVENT bits */ |
| #define | ARMV8_EXCLUDE_EL1 (1 << 31) |
| #define | ARMV8_EXCLUDE_EL0 (1 << 30) |
| #define | ARMV8_INCLUDE_EL2 (1 << 27) |
Functions | |
| int | armpmu_get_max_events (void) |
| EXPORT_SYMBOL_GPL (armpmu_get_max_events) | |
| int | perf_num_counters (void) |
| EXPORT_SYMBOL_GPL (perf_num_counters) | |
| int | armpmu_event_set_period (struct perf_event *event, struct hw_perf_event *hwc, int idx) |
| u64 | armpmu_event_update (struct perf_event *event, struct hw_perf_event *hwc, int idx) |
| int __init | armpmu_register (struct arm_pmu *armpmu, char *name, int type) |
| arch_initcall (cpu_pmu_reset) | |
| device_initcall (register_pmu_driver) | |
| early_initcall (init_hw_perf_events) | |
| struct frame_tail | __attribute__ ((packed)) |
| void | perf_callchain_user (struct perf_callchain_entry *entry, struct pt_regs *regs) |
| void | perf_callchain_kernel (struct perf_callchain_entry *entry, struct pt_regs *regs) |
Variables | |
| struct frame_tail __user * | fp |
| unsigned long | lr |
| #define ARMPMU_MAX_HWEVENTS 32 |
Definition at line 42 of file perf_event.c.
| #define ARMV8_COUNTER_MASK (ARMV8_MAX_COUNTERS - 1) |
Definition at line 742 of file perf_event.c.
| #define ARMV8_EVTYPE_EVENT 0xff /* Mask for EVENT bits */ |
Definition at line 777 of file perf_event.c.
| #define ARMV8_EVTYPE_MASK 0xc00000ff /* Mask for writable bits */ |
Definition at line 776 of file perf_event.c.
| #define ARMV8_EXCLUDE_EL0 (1 << 30) |
Definition at line 783 of file perf_event.c.
| #define ARMV8_EXCLUDE_EL1 (1 << 31) |
Definition at line 782 of file perf_event.c.
| #define ARMV8_IDX_COUNTER0 1 |
Definition at line 738 of file perf_event.c.
| #define ARMV8_IDX_COUNTER_LAST (ARMV8_IDX_CYCLE_COUNTER + cpu_pmu->num_events - 1) |
Definition at line 739 of file perf_event.c.
| #define ARMV8_IDX_CYCLE_COUNTER 0 |
Definition at line 737 of file perf_event.c.
| #define ARMV8_IDX_TO_COUNTER | ( | x | ) | (((x) - ARMV8_IDX_COUNTER0) & ARMV8_COUNTER_MASK) |
Definition at line 751 of file perf_event.c.
| #define ARMV8_INCLUDE_EL2 (1 << 27) |
Definition at line 784 of file perf_event.c.
| #define ARMV8_MAX_COUNTERS 32 |
Definition at line 741 of file perf_event.c.
| #define ARMV8_OVERFLOWED_MASK ARMV8_OVSR_MASK |
Definition at line 771 of file perf_event.c.
| #define ARMV8_OVSR_MASK 0xffffffff /* Mask for writable bits */ |
Definition at line 770 of file perf_event.c.
Definition at line 759 of file perf_event.c.
| #define ARMV8_PMCR_D (1 << 3) /* CCNT counts every 64th cpu cycle */ |
Definition at line 760 of file perf_event.c.
Definition at line 762 of file perf_event.c.
| #define ARMV8_PMCR_E (1 << 0) /* Enable all counters */ |
Definition at line 757 of file perf_event.c.
| #define ARMV8_PMCR_MASK 0x3f /* Mask for writable bits */ |
Definition at line 765 of file perf_event.c.
| #define ARMV8_PMCR_N_MASK 0x1f |
Definition at line 764 of file perf_event.c.
| #define ARMV8_PMCR_N_SHIFT 11 /* Number of counters supported */ |
Definition at line 763 of file perf_event.c.
| #define ARMV8_PMCR_P (1 << 1) /* Reset all counters */ |
Definition at line 758 of file perf_event.c.
| #define ARMV8_PMCR_X (1 << 4) /* Export to ETM */ |
Definition at line 761 of file perf_event.c.
| #define C | ( | _x | ) | PERF_COUNT_HW_CACHE_##_x |
Definition at line 73 of file perf_event.c.
| #define CACHE_OP_UNSUPPORTED 0xFFFF |
Definition at line 76 of file perf_event.c.
| #define HW_OP_UNSUPPORTED 0xFFFF |
Definition at line 71 of file perf_event.c.
| #define pr_fmt | ( | fmt | ) | "hw perfevents: " fmt |
Definition at line 21 of file perf_event.c.
| #define to_arm_pmu | ( | p | ) | (container_of(p, struct arm_pmu, pmu)) |
Definition at line 48 of file perf_event.c.
Definition at line 578 of file perf_event.c.
|
read |
Definition at line 171 of file esd_usb2.c.
| arch_initcall | ( | cpu_pmu_reset | ) |
| int armpmu_event_set_period | ( | struct perf_event * | event, |
| struct hw_perf_event * | hwc, | ||
| int | idx | ||
| ) |
Definition at line 143 of file perf_event.c.
| u64 armpmu_event_update | ( | struct perf_event * | event, |
| struct hw_perf_event * | hwc, | ||
| int | idx | ||
| ) |
Definition at line 179 of file perf_event.c.
Definition at line 54 of file perf_event.c.
Definition at line 568 of file perf_event.c.
| device_initcall | ( | register_pmu_driver | ) |
| early_initcall | ( | init_hw_perf_events | ) |
| EXPORT_SYMBOL_GPL | ( | armpmu_get_max_events | ) |
| EXPORT_SYMBOL_GPL | ( | perf_num_counters | ) |
| void perf_callchain_kernel | ( | struct perf_callchain_entry * | entry, |
| struct pt_regs * | regs | ||
| ) |
Definition at line 1353 of file perf_event.c.
| void perf_callchain_user | ( | struct perf_callchain_entry * | entry, |
| struct pt_regs * | regs | ||
| ) |
Definition at line 1329 of file perf_event.c.
Definition at line 65 of file perf_event.c.
| struct frame_tail __user* fp |
Definition at line 1294 of file perf_event.c.
| unsigned long lr |
Definition at line 1295 of file perf_event.c.
1.8.2