arm-spe.h 748 B

12345678910111213141516171819202122232425262728293031
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * Arm Statistical Profiling Extensions (SPE) support
  4. * Copyright (c) 2017-2018, Arm Ltd.
  5. */
  6. #ifndef INCLUDE__PERF_ARM_SPE_H__
  7. #define INCLUDE__PERF_ARM_SPE_H__
  8. #define ARM_SPE_PMU_NAME "arm_spe_"
  9. enum {
  10. ARM_SPE_PMU_TYPE,
  11. ARM_SPE_PER_CPU_MMAPS,
  12. ARM_SPE_AUXTRACE_PRIV_MAX,
  13. };
  14. #define ARM_SPE_AUXTRACE_PRIV_SIZE (ARM_SPE_AUXTRACE_PRIV_MAX * sizeof(u64))
  15. union perf_event;
  16. struct perf_session;
  17. struct perf_pmu;
  18. struct auxtrace_record *arm_spe_recording_init(int *err,
  19. struct perf_pmu *arm_spe_pmu);
  20. int arm_spe_process_auxtrace_info(union perf_event *event,
  21. struct perf_session *session);
  22. struct perf_event_attr *arm_spe_pmu_default_config(struct perf_pmu *arm_spe_pmu);
  23. #endif