perf/x86/intel/uncore: Remove hard-coded implementation for Node ID mapping location
authorKan Liang <kan.liang@intel.com>
Tue, 16 Aug 2016 20:09:48 +0000 (16:09 -0400)
committerIngo Molnar <mingo@kernel.org>
Mon, 5 Sep 2016 11:15:07 +0000 (13:15 +0200)
commit68ce4a0dea168e99d422aed8f93eca5528fd0e50
treed11468103cfcbb3cb2f465ef9065ec885f52f1b4
parent2cc538412a1ca103923ec400a339a5b3833e0280
perf/x86/intel/uncore: Remove hard-coded implementation for Node ID mapping location

The method to build PCI bus to socket mapping is similar among
platforms. However, the PCI location which stores Node ID mapping could
vary between different platforms. For example, the Node ID mapping address
on Skylake server is different from the previous platform. Also, to
build the mapping for the PCI bus without UBOX, it has to start from
bus 0 on Skylake server.

This patch removes the current hardcoded implementation and adds
three parameters for snbep_pci2phy_map_init(). This way the Node ID mapping
address and bus searching direction can be configured according to
different platforms.

Signed-off-by: Kan Liang <kan.liang@intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Nilay Vaish <nilayvaish@gmail.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vince Weaver <vincent.weaver@maine.edu>
Link: http://lkml.kernel.org/r/1471378190-17276-1-git-send-email-kan.liang@intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/events/intel/uncore_snbep.c