> You can fine Viresh's vhost-user implementation at > https://lore.kernel.org/qemu-devel/cover.1617278395.git.viresh.kumar@linaro.org/t/#m3b5044bad9769b170f505e63bd081eb27cef8db2 It looks OK so far; yet, it is not complete. But it might be bearable in the end. > As you say, it does get a bit clumsy, but I think there is also a good argument > to be made that the clumsiness is based on the host Linux user interface > more than the on the requirements of the physical interface, > and that should not have to be reflected in the virtio specification. Makes sense to me. > Right, this one has come up before as well: the preliminary result > was to assume that this probably won't be needed, but would be easy > enough to add later if necessary. If adding support incrementally works for such an interface, this makes sense as well. So, where are we? As I understand, this v10 does not support I2C transactions (or I2C_RDWR as you said). But you want to support all clients. So, this doesn't match, or?