[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YL8eHxe4dpE4R2Bm@myrica>
Date: Tue, 8 Jun 2021 09:37:03 +0200
From: Jean-Philippe Brucker <jean-philippe@...aro.org>
To: Rob Herring <robh@...nel.org>
Cc: "Michael S. Tsirkin" <mst@...hat.com>, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, Jason Wang <jasowang@...hat.com>,
virtualization@...ts.linux-foundation.org
Subject: Re: [PATCH] dt-bindings: virtio: Convert virtio-mmio to DT schema
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@...hat.com>
> Cc: Jason Wang <jasowang@...hat.com>
> Cc: Jean-Philippe Brucker <jean-philippe@...aro.org>
> Cc: virtualization@...ts.linux-foundation.org
> Signed-off-by: Rob Herring <robh@...nel.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@...aro.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@...0 {
> - compatible = "virtio,mmio";
> - reg = <0x3000 0x100>;
> - interrupts = <41>;
> -
> - /* Device has endpoint ID 23 */
> - iommus = <&viommu 23>
> - }
> -
> - viommu: iommu@...0 {
> - 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@...aro.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@...0 {
> + compatible = "virtio,mmio";
> + reg = <0x3000 0x100>;
> + interrupts = <41>;
> +
> + /* Device has endpoint ID 23 */
> + iommus = <&viommu 23>;
> + };
> +
> + viommu: iommu@...0 {
> + compatible = "virtio,mmio";
> + reg = <0x3100 0x100>;
> + interrupts = <42>;
> +
> + #iommu-cells = <1>;
> + };
> +
> +...
> --
> 2.27.0
>
Powered by blists - more mailing lists