Message ID | 20210607193928.3092186-1-robh@kernel.org |
---|---|
State | Accepted |
Commit | 13542a69b918db0118b75d9825bcc775c9c36ed3 |
Headers | show |
Series | dt-bindings: virtio: Convert virtio-mmio to DT schema | expand |
On Mon, Jun 07, 2021 at 02:39:28PM -0500, Rob Herring wrote: > Convert the virtio-mmio binding to DT schema format. > > Cc: "Michael S. Tsirkin" <mst@redhat.com> > Cc: Jason Wang <jasowang@redhat.com> > Cc: Jean-Philippe Brucker <jean-philippe@linaro.org> > Cc: virtualization@lists.linux-foundation.org > Signed-off-by: Rob Herring <robh@kernel.org> > --- > Jean-Philippe, hopefully you are okay with being listed as the > maintainer here. You're the only active person that's touched this > binding. Sure, no problem. I can work on the conversion of virtio/iommu.txt as well, so I'll learn a bit more about the yaml syntax. Acked-by: Jean-Philippe Brucker <jean-philippe@linaro.org> > > .../devicetree/bindings/virtio/mmio.txt | 47 --------------- > .../devicetree/bindings/virtio/mmio.yaml | 60 +++++++++++++++++++ > 2 files changed, 60 insertions(+), 47 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/virtio/mmio.txt > create mode 100644 Documentation/devicetree/bindings/virtio/mmio.yaml > > diff --git a/Documentation/devicetree/bindings/virtio/mmio.txt b/Documentation/devicetree/bindings/virtio/mmio.txt > deleted file mode 100644 > index 0a575f329f6e..000000000000 > --- a/Documentation/devicetree/bindings/virtio/mmio.txt > +++ /dev/null > @@ -1,47 +0,0 @@ > -* virtio memory mapped device > - > -See https://ozlabs.org/~rusty/virtio-spec/ for more details. > - > -Required properties: > - > -- compatible: "virtio,mmio" compatibility string > -- reg: control registers base address and size including configuration space > -- interrupts: interrupt generated by the device > - > -Required properties for virtio-iommu: > - > -- #iommu-cells: When the node corresponds to a virtio-iommu device, it is > - linked to DMA masters using the "iommus" or "iommu-map" > - properties [1][2]. #iommu-cells specifies the size of the > - "iommus" property. For virtio-iommu #iommu-cells must be > - 1, each cell describing a single endpoint ID. > - > -Optional properties: > - > -- iommus: If the device accesses memory through an IOMMU, it should > - have an "iommus" property [1]. Since virtio-iommu itself > - does not access memory through an IOMMU, the "virtio,mmio" > - node cannot have both an "#iommu-cells" and an "iommus" > - property. > - > -Example: > - > - virtio_block@3000 { > - compatible = "virtio,mmio"; > - reg = <0x3000 0x100>; > - interrupts = <41>; > - > - /* Device has endpoint ID 23 */ > - iommus = <&viommu 23> > - } > - > - viommu: iommu@3100 { > - compatible = "virtio,mmio"; > - reg = <0x3100 0x100>; > - interrupts = <42>; > - > - #iommu-cells = <1> > - } > - > -[1] Documentation/devicetree/bindings/iommu/iommu.txt > -[2] Documentation/devicetree/bindings/pci/pci-iommu.txt > diff --git a/Documentation/devicetree/bindings/virtio/mmio.yaml b/Documentation/devicetree/bindings/virtio/mmio.yaml > new file mode 100644 > index 000000000000..444bfa24affc > --- /dev/null > +++ b/Documentation/devicetree/bindings/virtio/mmio.yaml > @@ -0,0 +1,60 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/virtio/mmio.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: virtio memory mapped devices > + > +maintainers: > + - Jean-Philippe Brucker <jean-philippe@linaro.org> > + > +description: > + See https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=virtio for > + more details. > + > +properties: > + compatible: > + const: virtio-mmio > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + > + '#iommu-cells': > + description: Required when the node corresponds to a virtio-iommu device. > + const: 1 > + > + iommus: > + description: Required for devices making accesses thru an IOMMU. > + maxItems: 1 > + > +required: > + - compatible > + - reg > + - interrupts > + > +additionalProperties: false > + > +examples: > + - | > + virtio@3000 { > + compatible = "virtio,mmio"; > + reg = <0x3000 0x100>; > + interrupts = <41>; > + > + /* Device has endpoint ID 23 */ > + iommus = <&viommu 23>; > + }; > + > + viommu: iommu@3100 { > + compatible = "virtio,mmio"; > + reg = <0x3100 0x100>; > + interrupts = <42>; > + > + #iommu-cells = <1>; > + }; > + > +... > -- > 2.27.0 >
On Mon, Jun 7, 2021 at 2:39 PM Rob Herring <robh@kernel.org> wrote: > > Convert the virtio-mmio binding to DT schema format. > > Cc: "Michael S. Tsirkin" <mst@redhat.com> > Cc: Jason Wang <jasowang@redhat.com> > Cc: Jean-Philippe Brucker <jean-philippe@linaro.org> > Cc: virtualization@lists.linux-foundation.org > Signed-off-by: Rob Herring <robh@kernel.org> > --- > Jean-Philippe, hopefully you are okay with being listed as the > maintainer here. You're the only active person that's touched this > binding. > > .../devicetree/bindings/virtio/mmio.txt | 47 --------------- > .../devicetree/bindings/virtio/mmio.yaml | 60 +++++++++++++++++++ > 2 files changed, 60 insertions(+), 47 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/virtio/mmio.txt > create mode 100644 Documentation/devicetree/bindings/virtio/mmio.yaml > > diff --git a/Documentation/devicetree/bindings/virtio/mmio.txt b/Documentation/devicetree/bindings/virtio/mmio.txt > deleted file mode 100644 > index 0a575f329f6e..000000000000 > --- a/Documentation/devicetree/bindings/virtio/mmio.txt > +++ /dev/null > @@ -1,47 +0,0 @@ > -* virtio memory mapped device > - > -See https://ozlabs.org/~rusty/virtio-spec/ for more details. > - > -Required properties: > - > -- compatible: "virtio,mmio" compatibility string > -- reg: control registers base address and size including configuration space > -- interrupts: interrupt generated by the device > - > -Required properties for virtio-iommu: > - > -- #iommu-cells: When the node corresponds to a virtio-iommu device, it is > - linked to DMA masters using the "iommus" or "iommu-map" > - properties [1][2]. #iommu-cells specifies the size of the > - "iommus" property. For virtio-iommu #iommu-cells must be > - 1, each cell describing a single endpoint ID. > - > -Optional properties: > - > -- iommus: If the device accesses memory through an IOMMU, it should > - have an "iommus" property [1]. Since virtio-iommu itself > - does not access memory through an IOMMU, the "virtio,mmio" > - node cannot have both an "#iommu-cells" and an "iommus" > - property. > - > -Example: > - > - virtio_block@3000 { > - compatible = "virtio,mmio"; > - reg = <0x3000 0x100>; > - interrupts = <41>; > - > - /* Device has endpoint ID 23 */ > - iommus = <&viommu 23> > - } > - > - viommu: iommu@3100 { > - compatible = "virtio,mmio"; > - reg = <0x3100 0x100>; > - interrupts = <42>; > - > - #iommu-cells = <1> > - } > - > -[1] Documentation/devicetree/bindings/iommu/iommu.txt > -[2] Documentation/devicetree/bindings/pci/pci-iommu.txt > diff --git a/Documentation/devicetree/bindings/virtio/mmio.yaml b/Documentation/devicetree/bindings/virtio/mmio.yaml > new file mode 100644 > index 000000000000..444bfa24affc > --- /dev/null > +++ b/Documentation/devicetree/bindings/virtio/mmio.yaml > @@ -0,0 +1,60 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/virtio/mmio.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: virtio memory mapped devices > + > +maintainers: > + - Jean-Philippe Brucker <jean-philippe@linaro.org> > + > +description: > + See https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=virtio for > + more details. > + > +properties: > + compatible: > + const: virtio-mmio This should be virtio,mmio.
diff --git a/Documentation/devicetree/bindings/virtio/mmio.txt b/Documentation/devicetree/bindings/virtio/mmio.txt deleted file mode 100644 index 0a575f329f6e..000000000000 --- a/Documentation/devicetree/bindings/virtio/mmio.txt +++ /dev/null @@ -1,47 +0,0 @@ -* virtio memory mapped device - -See https://ozlabs.org/~rusty/virtio-spec/ for more details. - -Required properties: - -- compatible: "virtio,mmio" compatibility string -- reg: control registers base address and size including configuration space -- interrupts: interrupt generated by the device - -Required properties for virtio-iommu: - -- #iommu-cells: When the node corresponds to a virtio-iommu device, it is - linked to DMA masters using the "iommus" or "iommu-map" - properties [1][2]. #iommu-cells specifies the size of the - "iommus" property. For virtio-iommu #iommu-cells must be - 1, each cell describing a single endpoint ID. - -Optional properties: - -- iommus: If the device accesses memory through an IOMMU, it should - have an "iommus" property [1]. Since virtio-iommu itself - does not access memory through an IOMMU, the "virtio,mmio" - node cannot have both an "#iommu-cells" and an "iommus" - property. - -Example: - - virtio_block@3000 { - compatible = "virtio,mmio"; - reg = <0x3000 0x100>; - interrupts = <41>; - - /* Device has endpoint ID 23 */ - iommus = <&viommu 23> - } - - viommu: iommu@3100 { - compatible = "virtio,mmio"; - reg = <0x3100 0x100>; - interrupts = <42>; - - #iommu-cells = <1> - } - -[1] Documentation/devicetree/bindings/iommu/iommu.txt -[2] Documentation/devicetree/bindings/pci/pci-iommu.txt diff --git a/Documentation/devicetree/bindings/virtio/mmio.yaml b/Documentation/devicetree/bindings/virtio/mmio.yaml new file mode 100644 index 000000000000..444bfa24affc --- /dev/null +++ b/Documentation/devicetree/bindings/virtio/mmio.yaml @@ -0,0 +1,60 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/virtio/mmio.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: virtio memory mapped devices + +maintainers: + - Jean-Philippe Brucker <jean-philippe@linaro.org> + +description: + See https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=virtio for + more details. + +properties: + compatible: + const: virtio-mmio + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + '#iommu-cells': + description: Required when the node corresponds to a virtio-iommu device. + const: 1 + + iommus: + description: Required for devices making accesses thru an IOMMU. + maxItems: 1 + +required: + - compatible + - reg + - interrupts + +additionalProperties: false + +examples: + - | + virtio@3000 { + compatible = "virtio,mmio"; + reg = <0x3000 0x100>; + interrupts = <41>; + + /* Device has endpoint ID 23 */ + iommus = <&viommu 23>; + }; + + viommu: iommu@3100 { + compatible = "virtio,mmio"; + reg = <0x3100 0x100>; + interrupts = <42>; + + #iommu-cells = <1>; + }; + +...
Convert the virtio-mmio binding to DT schema format. Cc: "Michael S. Tsirkin" <mst@redhat.com> Cc: Jason Wang <jasowang@redhat.com> Cc: Jean-Philippe Brucker <jean-philippe@linaro.org> Cc: virtualization@lists.linux-foundation.org Signed-off-by: Rob Herring <robh@kernel.org> --- Jean-Philippe, hopefully you are okay with being listed as the maintainer here. You're the only active person that's touched this binding. .../devicetree/bindings/virtio/mmio.txt | 47 --------------- .../devicetree/bindings/virtio/mmio.yaml | 60 +++++++++++++++++++ 2 files changed, 60 insertions(+), 47 deletions(-) delete mode 100644 Documentation/devicetree/bindings/virtio/mmio.txt create mode 100644 Documentation/devicetree/bindings/virtio/mmio.yaml -- 2.27.0