diff options
| author | Igor Nabirushkin <inabirushkin@nvidia.com> | 2014-06-24 04:18:29 -0400 |
|---|---|---|
| committer | Igor Nabirushkin <inabirushkin@nvidia.com> | 2017-07-13 10:18:40 -0400 |
| commit | ef78302f2a43d2a6e902f23ae5b98fa7b655939a (patch) | |
| tree | db3562127b0fc0a3e7b0f30279e37bdd5d664898 /include/linux/tegra_profiler.h | |
| parent | 26c40d919818a093bc48cd29ce5762d435e1bb53 (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.h | 11 |
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 | |||
| 293 | struct quadd_header_data { | 297 | struct 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 | ||
| 343 | struct quadd_parameters { | 348 | struct 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 | ||
| 394 | struct quadd_comm_cap { | 399 | struct quadd_comm_cap { |
| 395 | u32 pmu:1, | 400 | u32 pmu:1, |
