| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/ipmi/ |
| D | ipmi-ipmb.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/ipmi/ipmi-ipmb.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: IPMI IPMB device 9 description: IPMI IPMB device bindings 12 - Corey Minyard <cminyard@mvista.com> 17 - ipmi-ipmb 21 - const: ipmi 28 description: The address of the BMC on the IPMB bus. Defaults to 0x20. [all …]
|
| /kernel/linux/linux-6.6/drivers/char/ipmi/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 # IPMI device configuration 7 tristate 'IPMI top-level message handler' 11 This enables the central IPMI message handler, required for IPMI 14 IPMI is a standard for managing sensors (temperature, 17 See <file:Documentation/driver-api/ipmi.rst> for more details on the driver. 33 When a panic occurs, this will cause the IPMI message handler to, 34 by default, generate an IPMI event describing the panic to each 44 When a panic occurs, this will cause the IPMI message handler to, 45 by default, generate IPMI OEM type f0 events holding the IPMB [all …]
|
| D | ipmi_si_hotmod.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Handling for dynamically adding/removing IPMI devices through 12 #include <linux/ipmi.h> 21 …"Add and remove interfaces. See Documentation/driver-api/ipmi.rst in the kernel sources for the g… 31 * ipmb=<ipmb addr> 67 return -EINVAL; in parse_str() 80 return -EINVAL; in parse_str() 91 return -EINVAL; in check_hotmod_int_op() 96 return -EINVAL; in check_hotmod_int_op() 110 h->iftype = IPMI_PLAT_IF_SI; in parse_hotmod_str() [all …]
|
| D | ipmb_dev_int.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * IPMB driver to receive a request and send a response 8 * This was inspired by Brendan Higgins' ipmi-bmc-bt-i2c driver. 34 #define IPMB_MSG_PAYLOAD_LEN_MAX (MAX_MSG_LEN - IPMB_REQUEST_LEN_MIN - 1) 71 return container_of(file->private_data, struct ipmb_dev, miscdev); in to_ipmb_dev() 84 spin_lock_irq(&ipmb_dev->lock); in ipmb_read() 86 while (list_empty(&ipmb_dev->request_queue)) { in ipmb_read() 87 spin_unlock_irq(&ipmb_dev->lock); in ipmb_read() 89 if (file->f_flags & O_NONBLOCK) in ipmb_read() 90 return -EAGAIN; in ipmb_read() [all …]
|
| D | ipmi_ipmb.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * Driver to talk to a remote management controller on IPMB. 22 #define DEVICE_NAME "ipmi-ipmb" 74 u8 *msg = iidev->rcvmsg; in valid_ipmb() 77 if (iidev->overrun) in valid_ipmb() 81 if (iidev->rcvlen < 7) in valid_ipmb() 88 if (iidev->rcvlen < 8) in valid_ipmb() 94 if (ipmb_checksum(msg + 3, iidev->rcvlen - 3) != 0) in valid_ipmb() 103 u8 *msg = iidev->rcvmsg; in ipmi_ipmb_check_msg_done() 107 if (iidev->rcvlen == 0) in ipmi_ipmb_check_msg_done() [all …]
|
| D | ipmi_poweroff.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * MontaVista IPMI Poweroff extension to sys_reboot 15 #define pr_fmt(fmt) "IPMI poweroff: " fmt 24 #include <linux/ipmi.h> 31 * conveniently matches the IPMI chassis control values. */ 35 /* the IPMI data command */ 38 /* Which interface to use, -1 means the first we see. */ 39 static int ifnum_to_use = -1; 66 "timer. Setting to -1 defaults to the first registered " 72 " Set to non-zero to enable power cycle instead of power" [all …]
|
| D | ipmi_si_hardcode.c | 1 // SPDX-License-Identifier: GPL-2.0+ 51 …fic IPMI register in bytes. This should generally be 1, 2, 4, or 8 for an 8-bit, 16-bit, 32-bit, o… 54 …e data read from the. IPMI register, in bits. For instance, if the data is read from a 32-bit wor… 57 …"Set the default IPMB slave address for the controller. Normally this is 0x20, but can be overrid… 73 t = match_string(si_to_str, -1, si_type_str); in ipmi_hardcode_init_one() 90 ipmi_platform_add("hardcode-ipmi-si", i, &p); in ipmi_hardcode_init_one() 129 ipmi_remove_platform_device_by_name("hardcode-ipmi-si"); in ipmi_si_hardcode_exit()
|
| /kernel/linux/linux-6.6/Documentation/driver-api/ |
| D | ipmb.rst | 2 IPMB Driver for a Satellite MC 5 The Intelligent Platform Management Bus or IPMB, is an 9 IPMB is also associated with the messaging protocol through the 10 IPMB bus. 12 The devices using the IPMB are usually management 15 hot-swapping disk drivers in the system chassis, etc... 17 When an IPMB is implemented in the system, the BMC serves as 18 a controller to give system software access to the IPMB. The BMC 19 sends IPMI requests to a device (usually a Satellite Management 20 Controller or Satellite MC) via IPMB and the device [all …]
|
| D | ipmi.rst | 2 The Linux IPMI Driver 7 The Intelligent Platform Management Interface, or IPMI, is a 12 standardized database for field-replaceable units (FRUs) and a watchdog 15 To use this, you need an interface to an IPMI controller in your 17 management software that can use the IPMI system. 19 This document describes how to use the IPMI driver for Linux. If you 20 are not familiar with IPMI itself, see the web site at 21 https://www.intel.com/design/servers/ipmi/index.htm. IPMI is a big 25 ------------- 27 The Linux IPMI driver is modular, which means you have to pick several [all …]
|
| D | index.rst | 1 .. SPDX-License-Identifier: GPL-2.0 12 .. class:: toc-title 19 driver-model/index 23 early-userspace/index 26 device-io 27 dma-buf 30 message-based 33 frame-buffer 44 ipmb 45 ipmi [all …]
|
| /kernel/linux/linux-5.10/Documentation/driver-api/ |
| D | ipmb.rst | 2 IPMB Driver for a Satellite MC 5 The Intelligent Platform Management Bus or IPMB, is an 9 IPMB is also associated with the messaging protocol through the 10 IPMB bus. 12 The devices using the IPMB are usually management 15 hot-swapping disk drivers in the system chassis, etc... 17 When an IPMB is implemented in the system, the BMC serves as 18 a controller to give system software access to the IPMB. The BMC 19 sends IPMI requests to a device (usually a Satellite Management 20 Controller or Satellite MC) via IPMB and the device [all …]
|
| D | ipmi.rst | 2 The Linux IPMI Driver 7 The Intelligent Platform Management Interface, or IPMI, is a 12 standardized database for field-replaceable units (FRUs) and a watchdog 15 To use this, you need an interface to an IPMI controller in your 17 management software that can use the IPMI system. 19 This document describes how to use the IPMI driver for Linux. If you 20 are not familiar with IPMI itself, see the web site at 21 https://www.intel.com/design/servers/ipmi/index.htm. IPMI is a big 25 ------------- 27 The Linux IPMI driver is modular, which means you have to pick several [all …]
|
| D | index.rst | 10 .. class:: toc-title 17 driver-model/index 21 early-userspace/index 24 device-io 25 dma-buf 28 message-based 30 frame-buffer 39 ipmb 40 ipmi 58 s390-drivers [all …]
|
| /kernel/linux/linux-5.10/drivers/char/ipmi/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 # IPMI device configuration 7 tristate 'IPMI top-level message handler' 11 This enables the central IPMI message handler, required for IPMI 14 IPMI is a standard for managing sensors (temperature, 17 See <file:Documentation/driver-api/ipmi.rst> for more details on the driver. 33 When a panic occurs, this will cause the IPMI message handler to, 34 by default, generate an IPMI event describing the panic to each 44 When a panic occurs, this will cause the IPMI message handler to, 45 by default, generate IPMI OEM type f0 events holding the IPMB [all …]
|
| D | ipmi_si_hotmod.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * Handling for dynamically adding/removing IPMI devices through 12 #include <linux/ipmi.h> 21 " Documentation/driver-api/ipmi.rst in the kernel sources for the" 32 * ipmb=<ipmb addr> 68 return -EINVAL; in parse_str() 81 return -EINVAL; in parse_str() 92 return -EINVAL; in check_hotmod_int_op() 97 return -EINVAL; in check_hotmod_int_op() 111 h->iftype = IPMI_PLAT_IF_SI; in parse_hotmod_str() [all …]
|
| D | ipmi_poweroff.c | 1 // SPDX-License-Identifier: GPL-2.0+ 5 * MontaVista IPMI Poweroff extension to sys_reboot 15 #define pr_fmt(fmt) "IPMI poweroff: " fmt 24 #include <linux/ipmi.h> 31 * conveniently matches the IPMI chassis control values. */ 35 /* the IPMI data command */ 38 /* Which interface to use, -1 means the first we see. */ 39 static int ifnum_to_use = -1; 66 "timer. Setting to -1 defaults to the first registered " 72 " Set to non-zero to enable power cycle instead of power" [all …]
|
| D | ipmi_si_hardcode.c | 1 // SPDX-License-Identifier: GPL-2.0+ 61 MODULE_PARM_DESC(regsizes, "The size of the specific IPMI register in bytes." 62 " This should generally be 1, 2, 4, or 8 for an 8-bit," 63 " 16-bit, 32-bit, or 64-bit register. Use this if you" 64 " the 8-bit IPMI register has to be read from a larger" 68 " IPMI register, in bits. For instance, if the data" 69 " is read from a 32-bit word and the IPMI data is in" 70 " bit 8-15, then the shift would be 8"); 72 MODULE_PARM_DESC(slave_addrs, "Set the default IPMB slave address for" 95 * Allow a firmware-specified interface to be in ipmi_hardcode_init_one() [all …]
|
| D | ipmb_dev_int.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * IPMB driver to receive a request and send a response 8 * This was inspired by Brendan Higgins' ipmi-bmc-bt-i2c driver. 34 #define IPMB_MSG_PAYLOAD_LEN_MAX (MAX_MSG_LEN - IPMB_REQUEST_LEN_MIN - 1) 71 return container_of(file->private_data, struct ipmb_dev, miscdev); in to_ipmb_dev() 84 spin_lock_irq(&ipmb_dev->lock); in ipmb_read() 86 while (list_empty(&ipmb_dev->request_queue)) { in ipmb_read() 87 spin_unlock_irq(&ipmb_dev->lock); in ipmb_read() 89 if (file->f_flags & O_NONBLOCK) in ipmb_read() 90 return -EAGAIN; in ipmb_read() [all …]
|
| /kernel/linux/linux-6.6/include/uapi/linux/ |
| D | ipmi.h | 1 /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */ 3 * ipmi.h 5 * MontaVista IPMI interface 22 * This file describes an interface to an IPMI driver. You have to 23 * have a fairly good understanding of IPMI to use this, so go read 26 * With that said, this driver provides a multi-user interface to the 27 * IPMI driver, and it allows multiple IPMI physical interfaces below 32 * Multi-user means that multiple applications may use the driver, 53 in section 6.5 of the IPMI 1.5 manual. */ 71 /* An IPMB Address. */ [all …]
|
| /kernel/linux/linux-6.6/include/linux/ |
| D | ipmi_smi.h | 1 /* SPDX-License-Identifier: GPL-2.0+ */ 5 * MontaVista IPMI system management interface 21 #include <linux/ipmi.h> 26 * This files describes the interface for IPMI system management interface 27 * drivers to bind into the IPMI message handler. 30 /* Structure for the low-level drivers. */ 48 * * IPMB (over a IPMB to another MC) 53 * +-----------+-----+------+ 55 * +-----------+-----+------+ 60 * +-----------+-----+------+------+ [all …]
|
| D | ipmi.h | 1 /* SPDX-License-Identifier: GPL-2.0+ */ 3 * ipmi.h 5 * MontaVista IPMI interface 17 #include <uapi/linux/ipmi.h> 27 * Opaque type for a IPMI message user. One of these is needed to 69 * Place-holder for the data, don't make any assumptions about 87 * the only IPMI routines that can be called are ipmi_request 95 * Called when the interface detects a watchdog pre-timeout. If 115 /* Create a new user of the IPMI layer on the given interface number. */ 122 * Destroy the given user of the IPMI layer. Note that after this [all …]
|
| /kernel/linux/linux-5.10/include/uapi/linux/ |
| D | ipmi.h | 1 /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */ 3 * ipmi.h 5 * MontaVista IPMI interface 22 * This file describes an interface to an IPMI driver. You have to 23 * have a fairly good understanding of IPMI to use this, so go read 26 * With that said, this driver provides a multi-user interface to the 27 * IPMI driver, and it allows multiple IPMI physical interfaces below 32 * Multi-user means that multiple applications may use the driver, 53 in section 6.5 of the IPMI 1.5 manual. */ 71 /* An IPMB Address. */ [all …]
|
| /kernel/linux/linux-6.6/drivers/acpi/ |
| D | acpi_ipmi.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * acpi_ipmi.c - ACPI IPMI opregion 12 #include <linux/ipmi.h> 16 MODULE_DESCRIPTION("ACPI IPMI Opregion driver"); 22 /* the IPMI timeout is 5s */ 30 /* the IPMI request message list */ 37 int ipmi_ifnum; /* IPMI interface number */ 50 * NOTE: IPMI System Interface Selection 51 * There is no system interface specified by the IPMI operation 53 * handle set. IPMI messages passed from the ACPI codes are sent [all …]
|
| /kernel/linux/linux-5.10/drivers/acpi/ |
| D | acpi_ipmi.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * acpi_ipmi.c - ACPI IPMI opregion 12 #include <linux/ipmi.h> 16 MODULE_DESCRIPTION("ACPI IPMI Opregion driver"); 22 /* the IPMI timeout is 5s */ 30 /* the IPMI request message list */ 37 int ipmi_ifnum; /* IPMI interface number */ 50 * NOTE: IPMI System Interface Selection 51 * There is no system interface specified by the IPMI operation 53 * handle set. IPMI messages passed from the ACPI codes are sent [all …]
|
| /kernel/linux/linux-6.6/Documentation/translations/zh_CN/driver-api/ |
| D | index.rst | 1 .. SPDX-License-Identifier: GPL-2.0 3 .. include:: ../disclaimer-zh_CN.rst 5 :Original: Documentation/driver-api/index.rst 20 .. class:: toc-title 32 * driver-model/index 36 * early-userspace/index 39 * device-io 40 * dma-buf 43 * message-based 46 * frame-buffer [all …]
|