| /linux/include/linux/ | 
| H A D | peci.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */2 /* Copyright (c) 2018-2021 Intel Corporation */
 13  * Currently we don't support any PECI command over 32 bytes.
 21  * struct peci_controller_ops - PECI controller specific methods
 22  * @xfer: PECI transfer function
 24  * PECI controllers may have different hardware interfaces - the drivers
 25  * implementing PECI controllers can use this structure to abstract away those
 26  * differences by exposing a common interface for PECI core.
 29 	int (*xfer)(struct peci_controller *controller, u8 addr, struct peci_request *req);
 33  * struct peci_controller - PECI controller
 [all …]
 
 | 
| /linux/Documentation/devicetree/bindings/peci/ | 
| H A D | peci-aspeed.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)3 ---
 4 $id: http://devicetree.org/schemas/peci/peci-aspeed.yaml#
 5 $schema: http://devicetree.org/meta-schemas/core.yaml#
 7 title: Aspeed PECI Bus
 10   - Iwona Winiarska <iwona.winiarska@intel.com>
 11   - Jae Hyun Yoo <jae.hyun.yoo@linux.intel.com>
 14   - $ref: peci-controller.yaml#
 19       - aspeed,ast2400-peci
 20       - aspeed,ast2500-peci
 [all …]
 
 | 
| H A D | nuvoton,npcm-peci.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)3 ---
 4 $id: http://devicetree.org/schemas/peci/nuvoton,npcm-peci.yaml#
 5 $schema: http://devicetree.org/meta-schemas/core.yaml#
 7 title: Nuvoton PECI Bus
 10   - Tomer Maimon <tmaimon77@gmail.com>
 13   - $ref: peci-controller.yaml#
 18       - nuvoton,npcm750-peci
 19       - nuvoton,npcm845-peci
 29       Clock source for PECI controller. Should reference the APB clock.
 [all …]
 
 | 
| H A D | peci-controller.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)3 ---
 4 $id: http://devicetree.org/schemas/peci/peci-controller.yaml#
 5 $schema: http://devicetree.org/meta-schemas/core.yaml#
 7 title: Generic for PECI
 10   - Iwona Winiarska <iwona.winiarska@intel.com>
 13   PECI (Platform Environment Control Interface) is an interface that provides a
 19     pattern: "^peci-controller(@.*)?$"
 21   cmd-timeout-ms:
 28   - |
 [all …]
 
 | 
| /linux/Documentation/peci/ | 
| H A D | peci.rst | 1 .. SPDX-License-Identifier: GPL-2.0-only7 The Platform Environment Control Interface (PECI) is a communication
 9 (e.g. Baseboard Management Controller, BMC).
 10 PECI provides services that allow the management controller to
 13 controller is acting as a PECI originator and the processor - as
 14 a PECI responder.
 15 PECI can be used in both single processor and multiple-processor based
 19 Intel PECI specification is not released as a dedicated document,
 24 PECI Wire
 25 ---------
 [all …]
 
 | 
| /linux/drivers/peci/ | 
| H A D | core.c | 1 // SPDX-License-Identifier: GPL-2.0-only2 // Copyright (c) 2018-2021 Intel Corporation
 10 #include <linux/peci.h>
 21 	struct peci_controller *controller = to_peci_controller(dev);  in peci_controller_dev_release()  local
 23 	mutex_destroy(&controller->bus_lock);  in peci_controller_dev_release()
 24 	ida_free(&peci_controller_ida, controller->id);  in peci_controller_dev_release()
 25 	kfree(controller);  in peci_controller_dev_release()
 32 int peci_controller_scan_devices(struct peci_controller *controller)  in peci_controller_scan_devices()  argument
 38 		ret = peci_device_create(controller, addr);  in peci_controller_scan_devices()
 49 	struct peci_controller *controller;  in peci_controller_alloc()  local
 [all …]
 
 | 
| H A D | device.c | 1 // SPDX-License-Identifier: GPL-2.0-only2 // Copyright (c) 2018-2021 Intel Corporation
 5 #include <linux/peci.h>
 6 #include <linux/peci-cpu.h>
 12  * PECI device can be removed using sysfs, but the removal can also happen as
 13  * a result of controller being removed.
 14  * Mutex is used to protect PECI device from being double-deleted.
 29 	 * PECI device may be in a state where it is unable to return a proper  in peci_get_revision()
 37 		return -EIO;  in peci_get_revision()
 103 	device->info.x86_vfm = IFM(peci_x86_cpu_family(cpu_id), peci_x86_cpu_model(cpu_id));  in peci_device_info_init()
 [all …]
 
 | 
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only3 menuconfig PECI  config
 4 	tristate "PECI support"
 6 	  The Platform Environment Control Interface (PECI) is an interface
 10 	  If you are building a Baseboard Management Controller (BMC) kernel
 15 	  will be called peci.
 17 if PECI
 20 	tristate "PECI CPU"
 23 	  This option enables peci-cpu driver for Intel processors. It is
 32 	  will be called peci-cpu.
 [all …]
 
 | 
| H A D | request.c | 1 // SPDX-License-Identifier: GPL-2.0-only7 #include <linux/peci.h>
 90 	return req->rx.buf[0];  in peci_request_data_cc()
 94  * peci_request_status() - return -errno based on PECI completion code
 95  * @req: the PECI request that contains response data with completion code
 97  * It can't be used for Ping(), GetDIB() and GetTemp() - for those commands we
 100  * Return: -errno
 107 		dev_dbg(&req->device->dev, "ret: %#02x\n", cc);  in peci_request_status()
 115 		return -EAGAIN;  in peci_request_status()
 117 		return -EINVAL;  in peci_request_status()
 [all …]
 
 | 
| H A D | cpu.c | 1 // SPDX-License-Identifier: GPL-2.0-only6 #include <linux/peci.h>
 7 #include <linux/peci-cpu.h>
 13  * peci_temp_read() - read the maximum die temperature from PECI target device
 14  * @device: PECI device to which request is going to be sent
 17  * It uses GetTemp PECI command.
 38  * peci_pcs_read() - read PCS register
 39  * @device: PECI device to which request is going to be sent
 44  * It uses RdPkgConfig PECI command.
 70  * peci_pci_local_read() - read 32-bit memory location using raw address
 [all …]
 
 | 
| H A D | internal.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */2 /* Copyright (c) 2018-2021 Intel Corporation */
 15 /* PECI CPU address range 0x30-0x37 */
 67  * struct peci_device_id - PECI device data to match
 69  * @x86_vfm: device vendor-family-model
 79 int peci_device_create(struct peci_controller *controller, u8 addr);
 86  * struct peci_driver - PECI driver
 90  * @id_table: PECI device match table to decide which device to bind
 104  * peci_driver_register() - register PECI driver
 107  * PECI drivers that don't need to do anything special in module init should
 [all …]
 
 | 
| H A D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0-only4 peci-y := core.o request.o device.o sysfs.o
 5 obj-$(CONFIG_PECI) += peci.o
 6 peci-cpu-y := cpu.o
 7 obj-$(CONFIG_PECI_CPU) += peci-cpu.o
 10 obj-y += controller/
 
 | 
| /linux/drivers/peci/controller/ | 
| H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only4 	tristate "ASPEED PECI support"
 10 	  This option enables PECI controller driver for ASPEED AST2400,
 12 	  connected to it, and communicate with them using PECI protocol.
 18 	  be called peci-aspeed.
 21 	tristate "Nuvoton NPCM PECI support"
 26 	  This option enables PECI controller driver for Nuvoton NPCM7XX
 28 	  to it and communicate with them using PECI protocol.
 31 	  Interface (PECI) bus adapter driver on the Nuvoton NPCM SoCs.
 34 	  will be called peci-npcm.
 
 | 
| H A D | peci-aspeed.c | 1 // SPDX-License-Identifier: GPL-2.0-only2 // Copyright (c) 2012-2017 ASPEED Technology Inc.
 3 // Copyright (c) 2018-2021 Intel Corporation
 10 #include <linux/clk-provider.h>
 19 #include <linux/peci.h>
 23 /* ASPEED PECI Registers */
 124 	struct peci_controller *controller;  member
 144 	u32 val = readl(priv->base + ASPEED_PECI_CTRL);  in aspeed_peci_controller_enable()
 149 	writel(val, priv->base + ASPEED_PECI_CTRL);  in aspeed_peci_controller_enable()
 157 	writel(ASPEED_PECI_INT_MASK, priv->base + ASPEED_PECI_INT_STS);  in aspeed_peci_init_regs()
 [all …]
 
 | 
| /linux/Documentation/hwmon/ | 
| H A D | it87.rst | 174     - Christophe Gauthron175     - Jean Delvare <jdelvare@suse.de>
 179 -----------------
 192     misconfigured by BIOS - PWM values would be inverted. This option tries
 209   Provided since there are reports that system-wide acpi_enfore_resources=lax
 217 -------------------
 219 All the chips supported by this driver are LPC Super-I/O chips, accessed
 220 through the LPC bus (ISA-like I/O ports). The IT8712F additionally has an
 228 -----------
 237 include an 'environment controller' with 3 temperature sensors, 3 fan
 [all …]
 
 | 
| /linux/drivers/hwmon/ | 
| H A D | it87.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later3  *  it87.c - Part of lm_sensors, Linux kernel modules for hardware
 6  *  The IT8705F is an LPC-based Super I/O part that contains UARTs, a
 7  *  parallel port, an IR port, a MIDI port, a floppy controller, etc., in
 8  *  addition to an Environment Controller (Enhanced Hardware Monitor and
 9  *  Fan Controller)
 11  *  This driver supports only the Environment Controller in the IT8705F and
 41  *  Copyright (C) 2005-2010 Jean Delvare <jdelvare@suse.de>
 53 #include <linux/hwmon-sysfs.h>
 54 #include <linux/hwmon-vid.h>
 [all …]
 
 | 
| /linux/tools/arch/x86/kcpuid/ | 
| H A D | cpuid.csv | 1 # SPDX-License-Identifier: CC0-1.02 # Generator: x86-cpuid-db v2.4
 5 # Auto-generated file.
 6 # Please submit all updates and bugfixes to https://x86-cpuid.org
 16        0x0,         0,  ebx,    31:0,    cpu_vendorid_0         , CPU vendor ID string bytes 0 - 3
 17        0x0,         0,  ecx,    31:0,    cpu_vendorid_2         , CPU vendor ID string bytes 8 - 11
 18        0x0,         0,  edx,    31:0,    cpu_vendorid_1         , CPU vendor ID string bytes 4 -
 [all...]
 |