On Mon, Jul 19, 2021 at 12:34 PM Viresh Kumar <viresh.kumar@xxxxxxxxxx> wrote: > On 14-07-21, 23:07, Arnd Bergmann wrote: > > On Wed, Jul 14, 2021 at 5:43 PM Rob Herring <robh+dt@xxxxxxxxxx> wrote: > > > I guess it comes down to is 'virtio,mmio' providing a bus or is it > > > just a device? I guess a bus (so 2 nodes) does make sense here. > > > 'virtio,mmio' defines how you access/discover the virtio queues (the > > > bus) and the functional device (i2c, gpio, iommu, etc.) is accessed > > > via the virtio queues. > > > > It's not really a bus since there is only ever one device behind it. > > A better analogy would be your 'serdev' framework: You could > > have a 8250 or a pl011 uart, and behind that have a mouse, GPS > > receiver or bluetooth dongle. > > > > In Documentation/devicetree/bindings/serial/serial.yaml, you also > > have two nodes for a single device, so we could follow that > > example. > > So two device nodes is final then ? Pretty much like how this patchset did it > already ? I need to get rid of reg thing and use "virtio,DID" though. Let's give Rob another day to reply here. I think two nodes is easier to get working than one node, even when we continue supporting the current iommu binding that relies on a single node, but we could make it work either way if necessary. Arnd