mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-08-31 06:09:56 +00:00

Add device tree binding document for the IPMB device interface. This device is already in use in both driver and .dts files. Reviewed-by: Rob Herring (Arm) <robh@kernel.org> Signed-off-by: Ninad Palsule <ninad@linux.ibm.com> Acked-by: Corey Minyard <corey@minyard.net> Link: https://patch.msgid.link/20250204194115.3899174-2-ninad@linux.ibm.com Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
57 lines
1.5 KiB
YAML
57 lines
1.5 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/ipmi/ipmb-dev.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: The Intelligent Platform Management Bus(IPMB) Device
|
|
|
|
description: |
|
|
The IPMB is an I2C bus which provides interconnection between a Baseboard
|
|
Management Controller(BMC) and chassis electronics. The BMC sends IPMI
|
|
requests to intelligent controllers like Satellite Management Controller(MC)
|
|
devices via IPMB and the device sends responses back to the BMC.
|
|
This device uses an I2C slave device to send and receive IPMB messages,
|
|
either on a BMC or other MC. A miscellaneous device provices a user space
|
|
program to communicate with the kernel and the backend device. Some IPMB
|
|
devices only support the I2C protocol and not the SMB protocol.
|
|
|
|
IPMB communications protocol Specification V1.0
|
|
https://www.intel.com/content/dam/www/public/us/en/documents/product-briefs/ipmp-spec-v1.0.pdf
|
|
|
|
maintainers:
|
|
- Ninad Palsule <ninad@linux.ibm.com>
|
|
|
|
properties:
|
|
compatible:
|
|
enum:
|
|
- ipmb-dev
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
i2c-protocol:
|
|
description:
|
|
Use I2C block transfer instead of SMBUS block transfer.
|
|
type: boolean
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/i2c/i2c.h>
|
|
i2c {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
ipmb-dev@10 {
|
|
compatible = "ipmb-dev";
|
|
reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
|
|
i2c-protocol;
|
|
};
|
|
};
|