On Fri, Nov 19, 2021 at 03:38:36PM +0100, Thierry Reding wrote: > From: Thierry Reding <treding@xxxxxxxxxx> > > Convert the NVIDIA Tegra186 (and later) BPMP I2C bindings from the > free-form text format to json-schema. > > Signed-off-by: Thierry Reding <treding@xxxxxxxxxx> > --- > Changes in v2: > - add missing additionalProperties: false > > .../bindings/i2c/nvidia,tegra186-bpmp-i2c.txt | 42 ------------------- > .../i2c/nvidia,tegra186-bpmp-i2c.yaml | 42 +++++++++++++++++++ > 2 files changed, 42 insertions(+), 42 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/i2c/nvidia,tegra186-bpmp-i2c.txt > create mode 100644 Documentation/devicetree/bindings/i2c/nvidia,tegra186-bpmp-i2c.yaml > > diff --git a/Documentation/devicetree/bindings/i2c/nvidia,tegra186-bpmp-i2c.txt b/Documentation/devicetree/bindings/i2c/nvidia,tegra186-bpmp-i2c.txt > deleted file mode 100644 > index ab240e10debc..000000000000 > --- a/Documentation/devicetree/bindings/i2c/nvidia,tegra186-bpmp-i2c.txt > +++ /dev/null > @@ -1,42 +0,0 @@ > -NVIDIA Tegra186 BPMP I2C controller > - > -In Tegra186, the BPMP (Boot and Power Management Processor) owns certain HW > -devices, such as the I2C controller for the power management I2C bus. Software > -running on other CPUs must perform IPC to the BPMP in order to execute > -transactions on that I2C bus. This binding describes an I2C bus that is > -accessed in such a fashion. > - > -The BPMP I2C node must be located directly inside the main BPMP node. See > -../firmware/nvidia,tegra186-bpmp.txt for details of the BPMP binding. > - > -This node represents an I2C controller. See ../i2c/i2c.txt for details of the > -core I2C binding. > - > -Required properties: > -- compatible: > - Array of strings. > - One of: > - - "nvidia,tegra186-bpmp-i2c". > -- #address-cells: Address cells for I2C device address. > - Single-cell integer. > - Must be <1>. > -- #size-cells: > - Single-cell integer. > - Must be <0>. > -- nvidia,bpmp-bus-id: > - Single-cell integer. > - Indicates the I2C bus number this DT node represent, as defined by the > - BPMP firmware. > - > -Example: > - > -bpmp { > - ... > - > - i2c { > - compatible = "nvidia,tegra186-bpmp-i2c"; > - #address-cells = <1>; > - #size-cells = <0>; > - nvidia,bpmp-bus-id = <5>; > - }; > -}; > diff --git a/Documentation/devicetree/bindings/i2c/nvidia,tegra186-bpmp-i2c.yaml b/Documentation/devicetree/bindings/i2c/nvidia,tegra186-bpmp-i2c.yaml > new file mode 100644 > index 000000000000..351e12124959 > --- /dev/null > +++ b/Documentation/devicetree/bindings/i2c/nvidia,tegra186-bpmp-i2c.yaml > @@ -0,0 +1,42 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/i2c/nvidia,tegra186-bpmp-i2c.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: NVIDIA Tegra186 (and later) BPMP I2C controller > + > +maintainers: > + - Thierry Reding <thierry.reding@xxxxxxxxx> > + - Jon Hunter <jonathanh@xxxxxxxxxx> > + > +description: | > + In Tegra186 and later, the BPMP (Boot and Power Management Processor) > + owns certain HW devices, such as the I2C controller for the power > + management I2C bus. Software running on other CPUs must perform IPC to > + the BPMP in order to execute transactions on that I2C bus. This > + binding describes an I2C bus that is accessed in such a fashion. > + > + The BPMP I2C node must be located directly inside the main BPMP node. > + See ../firmware/nvidia,tegra186-bpmp.yaml for details of the BPMP > + binding. > + > + This node represents an I2C controller. See ../i2c/i2c.txt for details > + of the core I2C binding. > + > +properties: > + compatible: > + const: nvidia,tegra186-bpmp-i2c > + > + "#address-cells": > + const: 1 > + > + "#size-cells": > + const: 0 Covered by i2c-controller.yaml. Add a reference and then use unevaluatedProperties. > + > + nvidia,bpmp-bus-id: > + $ref: /schemas/types.yaml#/definitions/uint32 > + description: Indicates the I2C bus number this DT node represents, > + as defined by the BPMP firmware. > + > +additionalProperties: false > -- > 2.33.1 > >