Commit 6523d3b2 authored by Iwona Winiarska's avatar Iwona Winiarska Committed by Greg Kroah-Hartman
Browse files

peci: Add core infrastructure



Intel processors provide access for various services designed to support
processor and DRAM thermal management, platform manageability and
processor interface tuning and diagnostics.
Those services are available via the Platform Environment Control
Interface (PECI) that provides a communication channel between the
processor and the Baseboard Management Controller (BMC) or other
platform management device.

This change introduces PECI subsystem by adding the initial core module
and API for controller drivers.

Co-developed-by: default avatarJason M Bills <jason.m.bills@linux.intel.com>
Co-developed-by: default avatarJae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
Reviewed-by: default avatarPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Acked-by: default avatarJoel Stanley <joel@jms.id.au>
Signed-off-by: default avatarJason M Bills <jason.m.bills@linux.intel.com>
Signed-off-by: default avatarJae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
Signed-off-by: default avatarIwona Winiarska <iwona.winiarska@intel.com>
Link: https://lore.kernel.org/r/20220208153639.255278-5-iwona.winiarska@intel.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent ac2743a7
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -15096,6 +15096,14 @@ L: platform-driver-x86@vger.kernel.org
S:	Maintained
F:	drivers/platform/x86/peaq-wmi.c
PECI SUBSYSTEM
M:	Iwona Winiarska <iwona.winiarska@intel.com>
L:	openbmc@lists.ozlabs.org (moderated for non-subscribers)
S:	Supported
F:	Documentation/devicetree/bindings/peci/
F:	drivers/peci/
F:	include/linux/peci.h
PENSANDO ETHERNET DRIVERS
M:	Shannon Nelson <snelson@pensando.io>
M:	drivers@pensando.io
+3 −0
Original line number Diff line number Diff line
@@ -236,4 +236,7 @@ source "drivers/interconnect/Kconfig"
source "drivers/counter/Kconfig"

source "drivers/most/Kconfig"

source "drivers/peci/Kconfig"

endmenu
+1 −0
Original line number Diff line number Diff line
@@ -187,3 +187,4 @@ obj-$(CONFIG_GNSS) += gnss/
obj-$(CONFIG_INTERCONNECT)	+= interconnect/
obj-$(CONFIG_COUNTER)		+= counter/
obj-$(CONFIG_MOST)		+= most/
obj-$(CONFIG_PECI)		+= peci/

drivers/peci/Kconfig

0 → 100644
+15 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only

menuconfig PECI
	tristate "PECI support"
	help
	  The Platform Environment Control Interface (PECI) is an interface
	  that provides a communication channel to Intel processors and
	  chipset components from external monitoring or control devices.

	  If you are building a Baseboard Management Controller (BMC) kernel
	  for Intel platform say Y here and also to the specific driver for
	  your adapter(s) below. If unsure say N.

	  This support is also available as a module. If so, the module
	  will be called peci.

drivers/peci/Makefile

0 → 100644
+5 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only

# Core functionality
peci-y := core.o
obj-$(CONFIG_PECI) += peci.o
Loading