xref: /freebsd/sys/contrib/device-tree/Bindings/i2c/nvidia,tegra186-bpmp-i2c.yaml (revision e67e85659c0de33e617e5fbf1028c6e8b49eee53)
1*e67e8565SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*e67e8565SEmmanuel Vadot%YAML 1.2
3*e67e8565SEmmanuel Vadot---
4*e67e8565SEmmanuel Vadot$id: http://devicetree.org/schemas/i2c/nvidia,tegra186-bpmp-i2c.yaml#
5*e67e8565SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*e67e8565SEmmanuel Vadot
7*e67e8565SEmmanuel Vadottitle: NVIDIA Tegra186 (and later) BPMP I2C controller
8*e67e8565SEmmanuel Vadot
9*e67e8565SEmmanuel Vadotmaintainers:
10*e67e8565SEmmanuel Vadot  - Thierry Reding <thierry.reding@gmail.com>
11*e67e8565SEmmanuel Vadot  - Jon Hunter <jonathanh@nvidia.com>
12*e67e8565SEmmanuel Vadot
13*e67e8565SEmmanuel Vadotdescription: |
14*e67e8565SEmmanuel Vadot  In Tegra186 and later, the BPMP (Boot and Power Management Processor)
15*e67e8565SEmmanuel Vadot  owns certain HW devices, such as the I2C controller for the power
16*e67e8565SEmmanuel Vadot  management I2C bus. Software running on other CPUs must perform IPC to
17*e67e8565SEmmanuel Vadot  the BPMP in order to execute transactions on that I2C bus. This
18*e67e8565SEmmanuel Vadot  binding describes an I2C bus that is accessed in such a fashion.
19*e67e8565SEmmanuel Vadot
20*e67e8565SEmmanuel Vadot  The BPMP I2C node must be located directly inside the main BPMP node.
21*e67e8565SEmmanuel Vadot  See ../firmware/nvidia,tegra186-bpmp.yaml for details of the BPMP
22*e67e8565SEmmanuel Vadot  binding.
23*e67e8565SEmmanuel Vadot
24*e67e8565SEmmanuel Vadot  This node represents an I2C controller. See ../i2c/i2c.txt for details
25*e67e8565SEmmanuel Vadot  of the core I2C binding.
26*e67e8565SEmmanuel Vadot
27*e67e8565SEmmanuel Vadotproperties:
28*e67e8565SEmmanuel Vadot  compatible:
29*e67e8565SEmmanuel Vadot    const: nvidia,tegra186-bpmp-i2c
30*e67e8565SEmmanuel Vadot
31*e67e8565SEmmanuel Vadot  nvidia,bpmp-bus-id:
32*e67e8565SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
33*e67e8565SEmmanuel Vadot    description: Indicates the I2C bus number this DT node represents,
34*e67e8565SEmmanuel Vadot      as defined by the BPMP firmware.
35*e67e8565SEmmanuel Vadot
36*e67e8565SEmmanuel VadotallOf:
37*e67e8565SEmmanuel Vadot  - $ref: /schemas/i2c/i2c-controller.yaml
38*e67e8565SEmmanuel Vadot
39*e67e8565SEmmanuel VadotunevaluatedProperties: false
40*e67e8565SEmmanuel Vadot
41*e67e8565SEmmanuel Vadotrequired:
42*e67e8565SEmmanuel Vadot  - compatible
43*e67e8565SEmmanuel Vadot  - "#address-cells"
44*e67e8565SEmmanuel Vadot  - "#size-cells"
45*e67e8565SEmmanuel Vadot  - nvidia,bpmp-bus-id
46