perf/x86: Add Intel Tiger Lake uncore support
authorKan Liang <kan.liang@linux.intel.com>
Thu, 6 Feb 2020 16:15:27 +0000 (08:15 -0800)
committerIngo Molnar <mingo@kernel.org>
Tue, 11 Feb 2020 12:23:49 +0000 (13:23 +0100)
commitfdb64822443ec9fb8c3a74b598a74790ae8d2e22
treeb849b2362b4b2cfd428ea1a6df2c3ee0fe041f5f
parentdb278b90c326ce5895be09b6171f5ff3df1e3cca
perf/x86: Add Intel Tiger Lake uncore support

For MSR type of uncore units, there is no difference between Ice Lake
and Tiger Lake. Share the same code with Ice Lake.

Tiger Lake has two MCs. Both of them are located at 0:0:0. The BAR
offset is still 0x48. The offset of the two MCs is 0x10000.
Each MC has three counters to count every read/write/total issued by the
Memory Controller to DRAM. The counters can be accessed by MMIO.
They are free-running counters.

The offset of counters are different for TIGERLAKE_L and TIGERLAKE.
Add separated mmio_init() functions.

Signed-off-by: Kan Liang <kan.liang@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Reviewed-by: Andi Kleen <ak@linux.intel.com>
Link: https://lkml.kernel.org/r/20200206161527.3529-1-kan.liang@linux.intel.com
arch/x86/events/intel/uncore.c
arch/x86/events/intel/uncore.h
arch/x86/events/intel/uncore_snb.c