dt-bindings: Add devicetree bindings
Add snapshot of device tree bindings from keystone common kernel, branch "android-mainline-keystone-qcom-release" at c4c12103f9c0 ("Snap for 9228065 from e32903b9a63bb558df8b803b076619c53c16baad to android-mainline-keystone-qcom-release"). Change-Id: I7682079615cbd9f29340a5c1f2a1d84ec441a1f1 Signed-off-by: Melody Olvera <quic_molvera@quicinc.com>
This commit is contained in:
28
bindings/ipmi/aspeed,ast2400-ibt-bmc.txt
Normal file
28
bindings/ipmi/aspeed,ast2400-ibt-bmc.txt
Normal file
@@ -0,0 +1,28 @@
|
||||
* Aspeed BT (Block Transfer) IPMI interface
|
||||
|
||||
The Aspeed SOCs (AST2400 and AST2500) are commonly used as BMCs
|
||||
(BaseBoard Management Controllers) and the BT interface can be used to
|
||||
perform in-band IPMI communication with their host.
|
||||
|
||||
Required properties:
|
||||
|
||||
- compatible : should be one of
|
||||
"aspeed,ast2400-ibt-bmc"
|
||||
"aspeed,ast2500-ibt-bmc"
|
||||
"aspeed,ast2600-ibt-bmc"
|
||||
- reg: physical address and size of the registers
|
||||
- clocks: clock for the device
|
||||
|
||||
Optional properties:
|
||||
|
||||
- interrupts: interrupt generated by the BT interface. without an
|
||||
interrupt, the driver will operate in poll mode.
|
||||
|
||||
Example:
|
||||
|
||||
ibt@1e789140 {
|
||||
compatible = "aspeed,ast2400-ibt-bmc";
|
||||
reg = <0x1e789140 0x18>;
|
||||
interrupts = <8>;
|
||||
clocks = <&syscon ASPEED_CLK_GATE_LCLK>;
|
||||
};
|
106
bindings/ipmi/aspeed,ast2400-kcs-bmc.yaml
Normal file
106
bindings/ipmi/aspeed,ast2400-kcs-bmc.yaml
Normal file
@@ -0,0 +1,106 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/ipmi/aspeed,ast2400-kcs-bmc.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: ASPEED BMC KCS Devices
|
||||
|
||||
maintainers:
|
||||
- Andrew Jeffery <andrew@aj.id.au>
|
||||
|
||||
description: |
|
||||
The Aspeed BMC SoCs typically use the Keyboard-Controller-Style (KCS)
|
||||
interfaces on the LPC bus for in-band IPMI communication with their host.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
oneOf:
|
||||
- description: Channel ID derived from reg
|
||||
items:
|
||||
enum:
|
||||
- aspeed,ast2400-kcs-bmc-v2
|
||||
- aspeed,ast2500-kcs-bmc-v2
|
||||
- aspeed,ast2600-kcs-bmc
|
||||
|
||||
- description: Old-style with explicit channel ID, no reg
|
||||
deprecated: true
|
||||
items:
|
||||
enum:
|
||||
- aspeed,ast2400-kcs-bmc
|
||||
- aspeed,ast2500-kcs-bmc
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
reg:
|
||||
# maxItems: 3
|
||||
items:
|
||||
- description: IDR register
|
||||
- description: ODR register
|
||||
- description: STR register
|
||||
|
||||
aspeed,lpc-io-reg:
|
||||
$ref: '/schemas/types.yaml#/definitions/uint32-array'
|
||||
minItems: 1
|
||||
maxItems: 2
|
||||
description: |
|
||||
The host CPU LPC IO data and status addresses for the device. For most
|
||||
channels the status address is derived from the data address, but the
|
||||
status address may be optionally provided.
|
||||
|
||||
aspeed,lpc-interrupts:
|
||||
$ref: "/schemas/types.yaml#/definitions/uint32-array"
|
||||
minItems: 2
|
||||
maxItems: 2
|
||||
description: |
|
||||
A 2-cell property expressing the LPC SerIRQ number and the interrupt
|
||||
level/sense encoding (specified in the standard fashion).
|
||||
|
||||
Note that the generated interrupt is issued from the BMC to the host, and
|
||||
thus the target interrupt controller is not captured by the BMC's
|
||||
devicetree.
|
||||
|
||||
kcs_chan:
|
||||
deprecated: true
|
||||
$ref: '/schemas/types.yaml#/definitions/uint32'
|
||||
description: The LPC channel number in the controller
|
||||
|
||||
kcs_addr:
|
||||
deprecated: true
|
||||
$ref: '/schemas/types.yaml#/definitions/uint32'
|
||||
description: The host CPU IO map address
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- interrupts
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
allOf:
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
enum:
|
||||
- aspeed,ast2400-kcs-bmc
|
||||
- aspeed,ast2500-kcs-bmc
|
||||
then:
|
||||
required:
|
||||
- kcs_chan
|
||||
- kcs_addr
|
||||
else:
|
||||
required:
|
||||
- reg
|
||||
- aspeed,lpc-io-reg
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
kcs3: kcs@24 {
|
||||
compatible = "aspeed,ast2600-kcs-bmc";
|
||||
reg = <0x24 0x1>, <0x30 0x1>, <0x3c 0x1>;
|
||||
aspeed,lpc-io-reg = <0xca2>;
|
||||
aspeed,lpc-interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
|
||||
interrupts = <8>;
|
||||
};
|
67
bindings/ipmi/ipmi-ipmb.yaml
Normal file
67
bindings/ipmi/ipmi-ipmb.yaml
Normal file
@@ -0,0 +1,67 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/ipmi/ipmi-ipmb.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: IPMI IPMB device bindings
|
||||
|
||||
description: IPMI IPMB device bindings
|
||||
|
||||
maintainers:
|
||||
- Corey Minyard <cminyard@mvista.com>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- ipmi-ipmb
|
||||
|
||||
device_type:
|
||||
items:
|
||||
- const: "ipmi"
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
bmcaddr:
|
||||
$ref: /schemas/types.yaml#/definitions/uint8
|
||||
description: The address of the BMC on the IPMB bus. Defaults to 0x20.
|
||||
|
||||
retry-time:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
description: |
|
||||
Time between retries of sends, in milliseconds. Defaults to 250.
|
||||
|
||||
max-retries:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
description: Number of retries before a failure is declared. Defaults to 1.
|
||||
|
||||
slave-dev:
|
||||
$ref: /schemas/types.yaml#/definitions/phandle
|
||||
description: |
|
||||
The slave i2c device. If not present, the main device is used. This
|
||||
lets you use two devices on the IPMB, one for master and one for slave,
|
||||
in case you have a slave device that can only be a slave. The slave
|
||||
will receive messages and the master will transmit.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ipmi-ipmb@40 {
|
||||
compatible = "ipmi-ipmb";
|
||||
device_type = "ipmi";
|
||||
reg = <0x40>;
|
||||
bmcaddr = /bits/ 8 <0x20>;
|
||||
retry-time = <250>;
|
||||
max-retries = <1>;
|
||||
};
|
||||
};
|
63
bindings/ipmi/ipmi-smic.yaml
Normal file
63
bindings/ipmi/ipmi-smic.yaml
Normal file
@@ -0,0 +1,63 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/ipmi/ipmi-smic.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: IPMI device bindings
|
||||
|
||||
description: IPMI device bindings
|
||||
|
||||
maintainers:
|
||||
- Corey Minyard <cminyard@mvista.com>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- ipmi-kcs
|
||||
- ipmi-smic
|
||||
- ipmi-bt
|
||||
|
||||
device_type:
|
||||
items:
|
||||
- const: "ipmi"
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
description: Interface is polled if this property is omitted.
|
||||
maxItems: 1
|
||||
|
||||
reg-size:
|
||||
description: The access width of the register in bytes. Defaults to 1.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
enum: [1, 2, 4, 8]
|
||||
|
||||
reg-spacing:
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
description: The number of bytes between register starts. Defaults to 1.
|
||||
|
||||
reg-shift:
|
||||
description: |
|
||||
The amount of bits to shift the register content to the right to get
|
||||
the data into bit zero.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
maximum: 56
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
smic@fff3a000 {
|
||||
compatible = "ipmi-smic";
|
||||
device_type = "ipmi";
|
||||
reg = <0xfff3a000 0x1000>;
|
||||
interrupts = <0 24 4>;
|
||||
reg-size = <4>;
|
||||
reg-spacing = <4>;
|
||||
};
|
40
bindings/ipmi/npcm7xx-kcs-bmc.txt
Normal file
40
bindings/ipmi/npcm7xx-kcs-bmc.txt
Normal file
@@ -0,0 +1,40 @@
|
||||
* Nuvoton NPCM KCS (Keyboard Controller Style) IPMI interface
|
||||
|
||||
The Nuvoton SOCs (NPCM) are commonly used as BMCs
|
||||
(Baseboard Management Controllers) and the KCS interface can be
|
||||
used to perform in-band IPMI communication with their host.
|
||||
|
||||
Required properties:
|
||||
- compatible : should be one of
|
||||
"nuvoton,npcm750-kcs-bmc"
|
||||
"nuvoton,npcm845-kcs-bmc", "nuvoton,npcm750-kcs-bmc"
|
||||
- interrupts : interrupt generated by the controller
|
||||
- kcs_chan : The KCS channel number in the controller
|
||||
|
||||
Example:
|
||||
|
||||
lpc_kcs: lpc_kcs@f0007000 {
|
||||
compatible = "nuvoton,npcm750-lpc-kcs", "simple-mfd", "syscon";
|
||||
reg = <0xf0007000 0x40>;
|
||||
reg-io-width = <1>;
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
ranges = <0x0 0xf0007000 0x40>;
|
||||
|
||||
kcs1: kcs1@0 {
|
||||
compatible = "nuvoton,npcm750-kcs-bmc";
|
||||
reg = <0x0 0x40>;
|
||||
interrupts = <0 9 4>;
|
||||
kcs_chan = <1>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
kcs2: kcs2@0 {
|
||||
compatible = "nuvoton,npcm750-kcs-bmc";
|
||||
reg = <0x0 0x40>;
|
||||
interrupts = <0 9 4>;
|
||||
kcs_chan = <2>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
Reference in New Issue
Block a user