[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1654651005-15475-1-git-send-email-quic_clew@quicinc.com>
Date: Tue, 7 Jun 2022 18:16:41 -0700
From: Chris Lew <quic_clew@...cinc.com>
To: <bjorn.andersson@...aro.org>, <mathieu.poirier@...aro.org>
CC: <linux-remoteproc@...r.kernel.org>,
<linux-arm-msm@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<quic_clew@...cinc.com>
Subject: [PATCH 0/4] Introduction of rpmsg_rx_done
This series proposes an implementation for the rpmsg framework to do
deferred cleanup of buffers provided in the rx callback. The current
implementation assumes that the client is done with the buffer after
returning from the rx callback.
In some cases where the data size is large, the client may want to
avoid copying the data in the rx callback for later processing. This
series proposes two new facilities for signaling that they want to
hold on to a buffer after the rx callback.
They are:
- New API rpmsg_rx_done() to tell the rpmsg framework the client is
done with the buffer
- New return codes for the rx callback to signal that the client will
hold onto a buffer and later call rpmsg_rx_done()
This series implements the qcom_glink_native backend for these new
facilities.
Chris Lew (4):
rpmsg: core: Add rx done hooks
rpmsg: char: Add support to use rpmsg_rx_done
rpmsg: glink: Try to send rx done in irq
rpmsg: glink: Add support for rpmsg_rx_done
drivers/rpmsg/qcom_glink_native.c | 112 ++++++++++++++++++++++++++++++--------
drivers/rpmsg/rpmsg_char.c | 50 ++++++++++++++++-
drivers/rpmsg/rpmsg_core.c | 20 +++++++
drivers/rpmsg/rpmsg_internal.h | 1 +
include/linux/rpmsg.h | 24 ++++++++
5 files changed, 183 insertions(+), 24 deletions(-)
--
2.7.4
Powered by blists - more mailing lists