xref: /freebsd/sys/contrib/device-tree/Bindings/ipmi/ipmi-ipmb.yaml (revision 8bab661a3316d8bd9b9fbd11a3b4371b91507bd2)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/ipmi/ipmi-ipmb.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: IPMI IPMB device
8
9description: IPMI IPMB device bindings
10
11maintainers:
12  - Corey Minyard <cminyard@mvista.com>
13
14properties:
15  compatible:
16    enum:
17      - ipmi-ipmb
18
19  device_type:
20    items:
21      - const: "ipmi"
22
23  reg:
24    maxItems: 1
25
26  bmcaddr:
27    $ref: /schemas/types.yaml#/definitions/uint8
28    description: The address of the BMC on the IPMB bus.  Defaults to 0x20.
29
30  retry-time:
31    $ref: /schemas/types.yaml#/definitions/uint32
32    description: |
33      Time between retries of sends, in milliseconds.  Defaults to 250.
34
35  max-retries:
36    $ref: /schemas/types.yaml#/definitions/uint32
37    description: Number of retries before a failure is declared.  Defaults to 1.
38
39  slave-dev:
40    $ref: /schemas/types.yaml#/definitions/phandle
41    description: |
42      The slave i2c device.  If not present, the main device is used. This
43      lets you use two devices on the IPMB, one for master and one for slave,
44      in case you have a slave device that can only be a slave.  The slave
45      will receive messages and the master will transmit.
46
47required:
48  - compatible
49  - reg
50
51additionalProperties: false
52
53examples:
54  - |
55    i2c {
56            #address-cells = <1>;
57            #size-cells = <0>;
58
59            ipmi-ipmb@40 {
60                    compatible = "ipmi-ipmb";
61                    device_type = "ipmi";
62                    reg = <0x40>;
63                    bmcaddr = /bits/ 8 <0x20>;
64                    retry-time = <250>;
65                    max-retries = <1>;
66            };
67    };
68