summaryrefslogtreecommitdiffstats
path: root/include/linux/tegra_profiler.h
diff options
context:
space:
mode:
authorIgor Nabirushkin <inabirushkin@nvidia.com>2014-06-24 04:18:29 -0400
committerIgor Nabirushkin <inabirushkin@nvidia.com>2017-07-13 10:18:40 -0400
commitef78302f2a43d2a6e902f23ae5b98fa7b655939a (patch)
treedb3562127b0fc0a3e7b0f30279e37bdd5d664898 /include/linux/tegra_profiler.h
parent26c40d919818a093bc48cd29ce5762d435e1bb53 (diff)
misc: tegra-profiler: add time source option
* Add time source option (CNTVCT or kernel monotonic clock). * Do not use arch timer if user does not have direct access to CNTVCT register. Bug 1508327 Change-Id: I0efc619146c1256ac57120b8646ecd8e819a1315 Signed-off-by: Igor Nabirushkin <inabirushkin@nvidia.com> Reviewed-on: http://git-master/r/427620 (cherry picked from commit 48d251b3b70aeaa14e8532223f7c418041ac1a37)
Diffstat (limited to 'include/linux/tegra_profiler.h')
-rw-r--r--include/linux/tegra_profiler.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/include/linux/tegra_profiler.h b/include/linux/tegra_profiler.h
index 3ba50b60b..5434d58ce 100644
--- a/include/linux/tegra_profiler.h
+++ b/include/linux/tegra_profiler.h
@@ -19,8 +19,8 @@
19 19
20#include <linux/ioctl.h> 20#include <linux/ioctl.h>
21 21
22#define QUADD_SAMPLES_VERSION 29 22#define QUADD_SAMPLES_VERSION 30
23#define QUADD_IO_VERSION 12 23#define QUADD_IO_VERSION 13
24 24
25#define QUADD_IO_VERSION_DYNAMIC_RB 5 25#define QUADD_IO_VERSION_DYNAMIC_RB 5
26#define QUADD_IO_VERSION_RB_MAX_FILL_COUNT 6 26#define QUADD_IO_VERSION_RB_MAX_FILL_COUNT 6
@@ -30,6 +30,7 @@
30#define QUADD_IO_VERSION_BT_UNWIND_TABLES 10 30#define QUADD_IO_VERSION_BT_UNWIND_TABLES 10
31#define QUADD_IO_VERSION_UNWIND_MIXED 11 31#define QUADD_IO_VERSION_UNWIND_MIXED 11
32#define QUADD_IO_VERSION_EXTABLES_MMAP 12 32#define QUADD_IO_VERSION_EXTABLES_MMAP 12
33#define QUADD_IO_VERSION_ARCH_TIMER_OPT 13
33 34
34#define QUADD_SAMPLE_VERSION_THUMB_MODE_FLAG 17 35#define QUADD_SAMPLE_VERSION_THUMB_MODE_FLAG 17
35#define QUADD_SAMPLE_VERSION_GROUP_SAMPLES 18 36#define QUADD_SAMPLE_VERSION_GROUP_SAMPLES 18
@@ -42,6 +43,7 @@
42#define QUADD_SAMPLE_VERSION_USE_ARCH_TIMER 27 43#define QUADD_SAMPLE_VERSION_USE_ARCH_TIMER 27
43#define QUADD_SAMPLE_VERSION_SCHED_SAMPLES 28 44#define QUADD_SAMPLE_VERSION_SCHED_SAMPLES 28
44#define QUADD_SAMPLE_VERSION_HDR_UNW_METHOD 29 45#define QUADD_SAMPLE_VERSION_HDR_UNW_METHOD 29
46#define QUADD_SAMPLE_VERSION_HDR_ARCH_TIMER 30
45 47
46#define QUADD_MAX_COUNTERS 32 48#define QUADD_MAX_COUNTERS 32
47#define QUADD_MAX_PROCESS 64 49#define QUADD_MAX_PROCESS 64
@@ -290,6 +292,8 @@ struct quadd_debug_data {
290#define QUADD_HDR_UNW_METHOD_SHIFT 0 292#define QUADD_HDR_UNW_METHOD_SHIFT 0
291#define QUADD_HDR_UNW_METHOD_MASK (0x07 << QUADD_HDR_UNW_METHOD_SHIFT) 293#define QUADD_HDR_UNW_METHOD_MASK (0x07 << QUADD_HDR_UNW_METHOD_SHIFT)
292 294
295#define QUADD_HDR_USE_ARCH_TIMER (1 << 3)
296
293struct quadd_header_data { 297struct quadd_header_data {
294 u16 magic; 298 u16 magic;
295 u16 version; 299 u16 version;
@@ -339,6 +343,7 @@ enum {
339#define QUADD_PARAM_EXTRA_BT_FP (1 << 1) 343#define QUADD_PARAM_EXTRA_BT_FP (1 << 1)
340#define QUADD_PARAM_EXTRA_BT_UNWIND_TABLES (1 << 2) 344#define QUADD_PARAM_EXTRA_BT_UNWIND_TABLES (1 << 2)
341#define QUADD_PARAM_EXTRA_BT_MIXED (1 << 3) 345#define QUADD_PARAM_EXTRA_BT_MIXED (1 << 3)
346#define QUADD_PARAM_EXTRA_USE_ARCH_TIMER (1 << 4)
342 347
343struct quadd_parameters { 348struct quadd_parameters {
344 u32 freq; 349 u32 freq;
@@ -389,7 +394,7 @@ enum {
389#define QUADD_COMM_CAP_EXTRA_SPECIAL_ARCH_MMAP (1 << 5) 394#define QUADD_COMM_CAP_EXTRA_SPECIAL_ARCH_MMAP (1 << 5)
390#define QUADD_COMM_CAP_EXTRA_UNWIND_MIXED (1 << 6) 395#define QUADD_COMM_CAP_EXTRA_UNWIND_MIXED (1 << 6)
391#define QUADD_COMM_CAP_EXTRA_UNW_ENTRY_TYPE (1 << 7) 396#define QUADD_COMM_CAP_EXTRA_UNW_ENTRY_TYPE (1 << 7)
392#define QUADD_COMM_CAP_EXTRA_USE_ARCH_TIMER (1 << 8) 397#define QUADD_COMM_CAP_EXTRA_ARCH_TIMER (1 << 8)
393 398
394struct quadd_comm_cap { 399struct quadd_comm_cap {
395 u32 pmu:1, 400 u32 pmu:1,