[PATCH 00/10] rpmsg: Make RPMSG name service modular

From: Mathieu Poirier
Date: Mon Sep 21 2020 - 20:10:04 EST

Hi all,

After looking at Guennadi[1] and Arnaud's patchsets[2] it became
clear that we need to go back to a generic rpmsg_ns_msg structure
if we wanted to make progress. To do that some of the work from
Arnaud had to be modified in a way that common name service
functionality was transport agnostic.

This patchset is based on Arnaud's work but also include a patch
from Guennadi and some input from me. It should serve as a
foundation for the next revision of [1].

Applies on rpmsg-next (4e3dda0bc603) and tested on stm32mp157. I
did not test the modularisation.

Comments and feedback would be greatly appreciated.


[1]. https://patchwork.kernel.org/project/linux-remoteproc/list/?series=346593
[2]. https://patchwork.kernel.org/project/linux-remoteproc/list/?series=338335

Arnaud Pouliquen (5):
rpmsg: virtio: rename rpmsg_create_channel
rpmsg: core: Add channel creation internal API
rpmsg: virtio: Add rpmsg channel device ops
rpmsg: Turn name service into a stand alone driver
rpmsg: virtio: use rpmsg ns device for the ns announcement

Guennadi Liakhovetski (1):
rpmsg: Move common structures and defines to headers

Mathieu Poirier (4):
rpmsg: virtio: Move virtio RPMSG structures to private header
rpmsg: core: Add RPMSG byte conversion operations
rpmsg: virtio: Make endianness conversion virtIO specific
rpmsg: ns: Make Name service module transport agnostic

drivers/rpmsg/Kconfig | 9 +
drivers/rpmsg/Makefile | 1 +
drivers/rpmsg/rpmsg_core.c | 96 +++++++++++
drivers/rpmsg/rpmsg_internal.h | 102 +++++++++++
drivers/rpmsg/rpmsg_ns.c | 108 ++++++++++++
drivers/rpmsg/virtio_rpmsg_bus.c | 284 +++++++++----------------------
include/linux/rpmsg_ns.h | 83 +++++++++
include/uapi/linux/rpmsg.h | 3 +
8 files changed, 487 insertions(+), 199 deletions(-)
create mode 100644 drivers/rpmsg/rpmsg_ns.c
create mode 100644 include/linux/rpmsg_ns.h