perf/x86/intel/uncore: Add Sapphire Rapids server IMC support
authorKan Liang <kan.liang@linux.intel.com>
Wed, 30 Jun 2021 21:08:31 +0000 (14:08 -0700)
committerPeter Zijlstra <peterz@infradead.org>
Fri, 2 Jul 2021 13:58:39 +0000 (15:58 +0200)
commit85f2e30f987ecc73fbb5e24eda0f36ba7f337c5c
treed4c830c50454e9b6ce0f40299362fbe0c41899ee
parent0654dfdc7e1ca30d36810ab694712da3de18440c
perf/x86/intel/uncore: Add Sapphire Rapids server IMC support

The Sapphire Rapids IMC provides the interface to the DRAM and
communicates to the rest of the uncore through the M2M block.

The layout of the control registers for a IMC uncore unit is a little
bit different from the generic one. There is a fixed counter for IMC.
So a specific format and ops are required. Expose the common MMIO ops
which can be reused.

Signed-off-by: Kan Liang <kan.liang@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Andi Kleen <ak@linux.intel.com>
Link: https://lore.kernel.org/r/1625087320-194204-8-git-send-email-kan.liang@linux.intel.com
arch/x86/events/intel/uncore_discovery.c
arch/x86/events/intel/uncore_discovery.h
arch/x86/events/intel/uncore_snbep.c