Update previous revision [1] based on Mathieu Poirier's review. This patchset introduces a TTY console on top of the RPMsg framework which enables the following use cases: - Provide a console to communicate easily with the remote processor application. - Provide an interface to get the remote processor log traces without ring buffer limitation. - Ease the migration from MPU + MCU processors to multi core processors (MPU and MCU integrated in one processor) by offering a virtual serial link. An alternative of this proposed solution would consist in using the virtio console: The drawback with that solution is that it requires a specific virtio buffer (in addition to the one already used for RPMsg) which does not fit with remote processors with little memory. The proposed solution allows to multiplex the console with the other rpmsg services, optimizing the memory. The first patch adds an API to the rpmsg framework ('get max transmission unit') and the second one is the rpmsg tty driver itself. Applied and tested on kernel V5.15-rc1 [1] https://lkml.org/lkml/2021/10/8/726 Arnaud Pouliquen (2): rpmsg: core: add API to get MTU tty: add rpmsg driver drivers/rpmsg/rpmsg_core.c | 21 +++ drivers/rpmsg/rpmsg_internal.h | 2 + drivers/rpmsg/virtio_rpmsg_bus.c | 10 ++ drivers/tty/Kconfig | 12 ++ drivers/tty/Makefile | 1 + drivers/tty/rpmsg_tty.c | 274 +++++++++++++++++++++++++++++++ include/linux/rpmsg.h | 10 ++ 7 files changed, 330 insertions(+) create mode 100644 drivers/tty/rpmsg_tty.c -- 2.17.1