Message ID | 1652196676-14745-1-git-send-email-olekstysh@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [V1] libxl/arm: Insert "xen,dev-domid" property to virtio-mmio device node | expand |
Hi Oleksandr, > -----Original Message----- > From: Oleksandr Tyshchenko <olekstysh@gmail.com> > Subject: [PATCH V1] libxl/arm: Insert "xen,dev-domid" property to virtio- > mmio device node > > From: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com> > > Use specific binding for the virtio devices for which the restricted > memory access using Xen grant mappings need to be enabled. > > Based on device-tree binding from Linux: > Documentation/devicetree/bindings/arm/xen,dev-domid.yaml > > Signed-off-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com> This patch looks good to me. So Reviewed-by: Henry Wang <Henry.Wang@arm.com> Kind regards, Henry
diff --git a/tools/libs/light/libxl_arm.c b/tools/libs/light/libxl_arm.c index 37403a2..27ff328 100644 --- a/tools/libs/light/libxl_arm.c +++ b/tools/libs/light/libxl_arm.c @@ -862,7 +862,8 @@ static int make_vpci_node(libxl__gc *gc, void *fdt, static int make_virtio_mmio_node(libxl__gc *gc, void *fdt, - uint64_t base, uint32_t irq) + uint64_t base, uint32_t irq, + uint32_t backend_domid) { int res; gic_interrupt intr; @@ -887,6 +888,14 @@ static int make_virtio_mmio_node(libxl__gc *gc, void *fdt, res = fdt_property(fdt, "dma-coherent", NULL, 0); if (res) return res; + if (backend_domid != LIBXL_TOOLSTACK_DOMID) { + uint32_t domid[1]; + + domid[0] = cpu_to_fdt32(backend_domid); + res = fdt_property(fdt, "xen,dev-domid", domid, sizeof(domid)); + if (res) return res; + } + res = fdt_end_node(fdt); if (res) return res; @@ -1205,7 +1214,8 @@ next_resize: libxl_device_disk *disk = &d_config->disks[i]; if (disk->specification == LIBXL_DISK_SPECIFICATION_VIRTIO) - FDT( make_virtio_mmio_node(gc, fdt, disk->base, disk->irq) ); + FDT( make_virtio_mmio_node(gc, fdt, disk->base, disk->irq, + disk->backend_domid) ); } if (pfdt)