summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAlexey Brodkin <abrodkin@synopsys.com>2015-08-24 13:48:06 +0300
committerVineet Gupta <vgupta@synopsys.com>2015-08-27 14:57:43 +0530
commit36481cf7fbcc666699d54cb267088d2b415ff164 (patch)
tree165f1f7529f38786e7523a33395bf6da33beacc9 /include
parent1fe8bfa5ff3b2e97f26add89b20768fb7c4188c0 (diff)
ARCv2: perf: Support sampling events using overflow interrupts
In times of ARC 700 performance counters didn't have support of interrupt an so for ARC we only had support of non-sampling events. Put simply only "perf stat" was functional. Now with ARC HS we have support of interrupts in performance counters which this change introduces support of. ARC performance counters act in the following way in regard of interrupts generation. [1] A counter counts starting from value set in PCT_COUNT register pair [2] Once counter reaches value set in PCT_INT_CNT interrupt is raised Basic setup look like this: [1] PCT_COUNT = 0; [2] PCT_INT_CNT = __limit_value__; [3] Enable interrupts for that counter and let it run [4] Let counter reach its limit [5] Handle interrupt when it happens Note that PCT HW block is build in CPU core and so ints interrupt line (which is basically OR of all counters IRQs) is wired directly to top-level IRQC. That means do de-assert PCT interrupt it's required to reset IRQs from all counters that have reached their limit values. Acked-by: Peter Zijlstra <peterz@infradead.org> Cc: Arnaldo Carvalho de Melo <acme@kernel.org> Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions