mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
coresight: etm3x: implementing perf_enable/disable() API
That way traces can be enabled and disabled automatically from the Perf subystem using the PMU abstraction. Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
2127154d11
commit
882d5e1124
5 changed files with 99 additions and 9 deletions
|
@ -14,6 +14,7 @@
|
|||
#define _LINUX_CORESIGHT_H
|
||||
|
||||
#include <linux/device.h>
|
||||
#include <linux/perf_event.h>
|
||||
#include <linux/sched.h>
|
||||
|
||||
/* Peripheral id registers (0xFD0-0xFEC) */
|
||||
|
@ -206,14 +207,15 @@ struct coresight_ops_link {
|
|||
* @cpu_id: returns the value of the CPU number this component
|
||||
* is associated to.
|
||||
* @trace_id: returns the value of the component's trace ID as known
|
||||
to the HW.
|
||||
* to the HW.
|
||||
* @enable: enables tracing for a source.
|
||||
* @disable: disables tracing for a source.
|
||||
*/
|
||||
struct coresight_ops_source {
|
||||
int (*cpu_id)(struct coresight_device *csdev);
|
||||
int (*trace_id)(struct coresight_device *csdev);
|
||||
int (*enable)(struct coresight_device *csdev, u32 mode);
|
||||
int (*enable)(struct coresight_device *csdev,
|
||||
struct perf_event_attr *attr, u32 mode);
|
||||
void (*disable)(struct coresight_device *csdev);
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue