Hi, Currently the DT only provides support for following node types for virtio-mmio nodes: virtio_mmio@a000000 { dma-coherent; interrupts = <0x00 0x10 0x01>; reg = <0x00 0xa000000 0x00 0x200>; compatible = "virtio,mmio"; }; And each virtio-mmio corresponds to a virtio-device. But there is no way for other users in the DT to show their dependency on virtio devices. This patchset provides that support. The first patch update virtio,mmio bindings to allow for device subnodes to be present and the second patch updates the virtio-mmio driver to update the of_node. Other patches add bindings for i2c and gpio virtio devices (they have some dependencies, mentioned in the patches). Tested on x86 with qemu for arm64. -- Viresh Viresh Kumar (5): dt-bindings: virtio: mmio: Add support for device subnode virtio_mmio: Bind virtio device to device-tree node dt-bindings: i2c: Add bindings for i2c-virtio i2c: virtio: Update i2c-adapter's of_node dt-bindings: gpio: Add bindings for gpio-virtio .../devicetree/bindings/gpio/gpio-virtio.yaml | 67 +++++++++++++++++++ .../devicetree/bindings/i2c/i2c-virtio.yaml | 59 ++++++++++++++++ .../devicetree/bindings/virtio/mmio.yaml | 41 ++++++++++++ drivers/i2c/busses/i2c-virtio.c | 1 + drivers/virtio/virtio_mmio.c | 44 ++++++++++++ include/dt-bindings/virtio/virtio_ids.h | 1 + 6 files changed, 213 insertions(+) create mode 100644 Documentation/devicetree/bindings/gpio/gpio-virtio.yaml create mode 100644 Documentation/devicetree/bindings/i2c/i2c-virtio.yaml create mode 120000 include/dt-bindings/virtio/virtio_ids.h -- 2.31.1.272.g89b43f80a514