From: Loic Pallardy <loic.pallardy@st.com>
To: <bjorn.andersson@linaro.org>, <ohad@wizery.com>
Cc: <linux-remoteproc@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, <arnaud.pouliquen@st.com>,
<benjamin.gaignard@linaro.org>,
Loic Pallardy <loic.pallardy@st.com>
Subject: [PATCH v3 00/13] remoteproc: add fixed memory region support
Date: Thu, 1 Mar 2018 17:23:47 +0100 [thread overview]
Message-ID: <1519921440-21356-1-git-send-email-loic.pallardy@st.com> (raw)
The aim of the series is to implement carveout memory management as
discussed during OpenAMP weekly call and defined in proposed document [1]
This first series focus only on adding support of the different types of
carveout memories (dynamic, fixed, platform driver depend...).
64bit resource table will be addressed in a next series.
[1]: http://openamp.github.io/docs/mca/coprocessor-memory-definition-v6.pdf
---
Changes sine V2:
Reshuffle the series to:
- Take into account Bjorn's comments.
- Add patch to check consistency between carveout resource request and IOMMU
support.
- Introduce platform specific prepare and unprepare ops to enable HW like
clock, bus, regulator, memory region... before loading co-processor firmware.
- Rely on memory carveout management for all remoteproc memory allocations.
- Lookup pre-registered carveout by name first.
- Create a subdevice for each vdev declared in firmware resource table that
will be used by virtio based driver to retrieve specific memory pool.
This series takes some assumptions for carveout names associated to vdev:
- For vring: "vdev%xvring%x" with vdev index from resource table and vring index
in vdev.
- For vdev buffer: "vdev%xbuffer" with vdev index from resource table
This will be changed in the future, adding names field in vdev resource in
next resource table version.
Changes since V1:
- Minor corrections on first 7 patches (error management)
- Add "memory device" support on the top of first 7 patches.
Goal is to answer use case reported during OpenAMP weekly discussion:
- "Be able to specify memory region for vring and buffer allocation, even
if no specific request defined in firmware resource table."
Patches offer the capability to create a "memory device" associated to a
carveout with a dedicated DMA memory pool. Different resource handlers are
modified to look-up for specific carveout by name. If match found and associated
"memory device" present, device is used instead of rproc platform device for
allocation.
Loic Pallardy (13):
remoteproc: configure IOMMU only if device address requested
remoteproc: add rproc_va_to_pa function
remoteproc: add release ops in rproc_mem_entry struct
remoteproc: add name in rproc_mem_entry struct
remoteproc: add helper function to allocate and init rproc_mem_entry
struct
remoteproc: introduce rproc_add_carveout function
remoteproc: introduce rproc_find_carveout_by_name function
remoteproc: add prepare and unprepare ops
remoteproc: modify rproc_handle_carveout to support pre-registered
region
remoteproc: modify vring allocation to support pre-registered region
remoteproc: create vdev subdevice with specific dma memory pool
rpmsg: virtio: allocate buffer from parent
remoteproc: st: add reserved memory support
drivers/remoteproc/remoteproc_core.c | 332 ++++++++++++++++++++++++++++----
drivers/remoteproc/remoteproc_debugfs.c | 1 +
drivers/remoteproc/remoteproc_virtio.c | 2 +-
drivers/remoteproc/st_remoteproc.c | 68 ++++++-
drivers/rpmsg/virtio_rpmsg_bus.c | 2 +-
include/linux/remoteproc.h | 22 ++-
6 files changed, 379 insertions(+), 48 deletions(-)
--
1.9.1
next reply other threads:[~2018-03-01 16:29 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-01 16:23 Loic Pallardy [this message]
2018-03-01 16:23 ` [PATCH v3 01/13] remoteproc: configure IOMMU only if device address requested Loic Pallardy
2018-03-01 16:23 ` [PATCH v3 02/13] remoteproc: add rproc_va_to_pa function Loic Pallardy
2018-05-10 0:11 ` Bjorn Andersson
2018-03-01 16:23 ` [PATCH v3 03/13] remoteproc: add release ops in rproc_mem_entry struct Loic Pallardy
2018-05-10 0:53 ` Bjorn Andersson
2018-03-01 16:23 ` [PATCH v3 04/13] remoteproc: add name " Loic Pallardy
2018-05-10 0:12 ` Bjorn Andersson
2018-03-01 16:23 ` [PATCH v3 05/13] remoteproc: add helper function to allocate and init " Loic Pallardy
2018-03-01 16:23 ` [PATCH v3 06/13] remoteproc: introduce rproc_add_carveout function Loic Pallardy
2018-05-10 0:56 ` Bjorn Andersson
2018-03-01 16:23 ` [PATCH v3 07/13] remoteproc: introduce rproc_find_carveout_by_name function Loic Pallardy
2018-05-10 0:19 ` Bjorn Andersson
2018-05-14 14:40 ` Loic PALLARDY
2018-03-01 16:23 ` [PATCH v3 08/13] remoteproc: add prepare and unprepare ops Loic Pallardy
2018-05-10 0:52 ` Bjorn Andersson
2018-05-14 15:03 ` Loic PALLARDY
2018-10-24 3:12 ` Suman Anna
2018-03-01 16:23 ` [PATCH v3 09/13] remoteproc: modify rproc_handle_carveout to support pre-registered region Loic Pallardy
2018-05-10 0:42 ` Bjorn Andersson
2018-05-14 14:52 ` Loic PALLARDY
2018-03-01 16:23 ` [PATCH v3 10/13] remoteproc: modify vring allocation " Loic Pallardy
2018-05-10 0:59 ` Bjorn Andersson
2018-05-14 15:43 ` Loic PALLARDY
2018-03-01 16:23 ` [PATCH v3 11/13] remoteproc: create vdev subdevice with specific dma memory pool Loic Pallardy
2018-05-10 1:06 ` Bjorn Andersson
2018-05-14 15:57 ` Loic PALLARDY
2018-03-01 16:23 ` [PATCH v3 12/13] rpmsg: virtio: allocate buffer from parent Loic Pallardy
2018-03-01 16:24 ` [PATCH v3 13/13] remoteproc: st: add reserved memory support Loic Pallardy
2018-04-03 12:04 ` [PATCH v3 00/13] remoteproc: add fixed memory region support Loic PALLARDY
2018-06-25 3:23 ` Anup Patel
2018-06-26 8:17 ` Loic PALLARDY
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1519921440-21356-1-git-send-email-loic.pallardy@st.com \
--to=loic.pallardy@st.com \
--cc=arnaud.pouliquen@st.com \
--cc=benjamin.gaignard@linaro.org \
--cc=bjorn.andersson@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-remoteproc@vger.kernel.org \
--cc=ohad@wizery.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).