> Please explain how you would design your generic rpmsg-gpio driver which is > derived > From gpio-virtio?
We have already seen the virtio commands are pretty much identical to what i suggested. You could just replace virtqueue_add_sgs() with rpmsg_sendto() and reimplement virtio_gpio_request_vq() to be the callback registered with rpmsg_create_ept(). The rest of basic GPIO handling should not need any changes at all. Interrupt support does however need some changes. The virtio_gpio_request_vq() replacement would need to see if the received message indicates an interrupt and call the equivalent of virtio_gpio_event_vq(), since rpmsg does not have a separate mechanism to deliver interrupts, unlike rpmsg. At a guess, 90% of the code would stay the same? Andrew

