platform/x86/intel/tpmi: Process CPU package mapping
mainline inclusion from mainline-v6.3-rc1 commit 762ed313 category: feature bugzilla: https://gitee.com/openeuler/intel-kernel/issues/I8WOEC Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=762ed313574652ac604fb95dd601232a6e0320ef ------------------------------------- There is one Intel Out-of-Band (OOB) PCI device per CPU package. Since TPMI feature is exposed via OOB PCI device, there will be multiple TPMI device instances on a multi CPU package system. There are several PM features, which needs to associate APIC based CPU package ID information to a TPMI instance. For example if Intel Speed Select feature requires control of a CPU package, it needs to identify right TPMI device instance. There is one special TPMI ID (ID = 0x81) in the PFS. The MMIO region of this TPMI ID points to a mapping table: - PCI Bus ID - PCI Device ID - APIC based Package ID This mapping information can be used by any PM feature driver which requires mapping from a CPU package to a TPMI device instance. Unlike other TPMI features, device node is not created for this feature ID (0x81). Instead store the mapping information as platform data, which is part of the per PCI device TPMI instance (struct intel_tpmi_info). Later the TPMI feature drivers can get the mapping information using an interface "tpmi_get_platform_data()" Intel-SIG: commit 762ed313 platform/x86/intel/tpmi: Process CPU package mapping. Backport Intel_tpmi base driver. Signed-off-by:Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Reviewed-by:
Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Acked-by:
Rafael J. Wysocki <rafael.j.wysocki@intel.com> Link: https://lore.kernel.org/r/20230202010738.2186174-6-srinivas.pandruvada@linux.intel.com Reviewed-by:
Hans de Goede <hdegoede@redhat.com> Signed-off-by:
Hans de Goede <hdegoede@redhat.com> [ Yingbao Jia: amend commit log ] Signed-off-by:
Yingbao Jia <yingbao.jia@intel.com>
Loading
Please sign in to comment