dt-bindings: virtio: Convert virtio-mmio to DT schema
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 Acked-by: Jean-Philippe Brucker <jean-philippe@linaro.org> Signed-off-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20210607193928.3092186-1-robh@kernel.org/
This commit is contained in:
parent
bb718cad0a
commit
13542a69b9
@ -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
|
60
Documentation/devicetree/bindings/virtio/mmio.yaml
Normal file
60
Documentation/devicetree/bindings/virtio/mmio.yaml
Normal file
@ -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>;
|
||||
};
|
||||
|
||||
...
|
Loading…
Reference in New Issue
Block a user