[PATCH v6 0/8] rpmsg: Make RPMSG name service modular

Mathieu Poirier
2020-11-18T21:37:53Z

This revision addresses comments received from the previous revision,
i.e V5. Please see details below.

It starts by making the RPMSG protocol transport agnostic by
moving the headers it uses to generic types and using those in the
current implementation. From there it re-uses the work that Arnaud
published[1] to make the name service modular.

Tested on stm32mp157 with the RPMSG client sample application. Applies
cleanly on rpmsg-next.

Thanks,
Mathieu

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

-------
New for V6:
- Rebased to rpmsg-next
- Move rpmsg_ns_register_device() to rpmsg_ns.c for automatic module loading

Arnaud Pouliquen (4):
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

Mathieu Poirier (4):
rpmsg: Introduce __rpmsg{16|32|64} types
rpmsg: virtio: Move from virtio to rpmsg byte conversion
rpmsg: Move structure rpmsg_ns_msg to header file
rpmsg: Make rpmsg_{register|unregister}_device() public

drivers/rpmsg/Kconfig | 9 ++
drivers/rpmsg/Makefile | 1 +
drivers/rpmsg/rpmsg_core.c | 44 ++++++++
drivers/rpmsg/rpmsg_internal.h | 14 ++-
drivers/rpmsg/rpmsg_ns.c | 126 +++++++++++++++++++++
drivers/rpmsg/virtio_rpmsg_bus.c | 185 +++++++++++--------------------
include/linux/rpmsg.h | 63 ++++++++++-
include/linux/rpmsg/byteorder.h | 67 +++++++++++
include/linux/rpmsg/ns.h | 45 ++++++++
include/uapi/linux/rpmsg_types.h | 11 ++
10 files changed, 438 insertions(+), 127 deletions(-)
create mode 100644 drivers/rpmsg/rpmsg_ns.c
create mode 100644 include/linux/rpmsg/byteorder.h
create mode 100644 include/linux/rpmsg/ns.h
create mode 100644 include/uapi/linux/rpmsg_types.h

--
2.25.1