Branch: refs/heads/main
Home: https://github.com/OpenAMP/libmetal
Commit: f2144b12ae6394712288e0c4a89da381b9830766
https://github.com/OpenAMP/libmetal/commit/f2144b12ae6394712288e0c4a89da381…
Author: Andrew Davis <afd(a)ti.com>
Date: 2023-08-16 (Wed, 16 Aug 2023)
Changed paths:
M lib/alloc.h
M lib/system/freertos/alloc.h
M lib/system/generic/alloc.h
M lib/system/linux/alloc.h
M lib/system/nuttx/alloc.h
M lib/system/zephyr/alloc.h
Log Message:
-----------
lib: refactor alloc.h to not need forward declaration
This should have no functional change, but makes this header consistent
with how the other headers are organized.
Signed-off-by: Andrew Davis <afd(a)ti.com>
Remote Processor Messaging (RPMsg) framework is used to communicate
with remote processor. RPMsg is a virtio-based messaging bus that
allows U-Boot drivers to communicate with remote processors available
on the system. This patch also introduces new virtio transport layer
driver.
To keep things minimal for now hard-coded endpoint is used in U-Boot
to communicate with remote processor using RPMsg protocol. This will
be modified to use multiple endpoints in future.
U-Boot can't receive interrupts from remote processor as per design.
Hence, user has to know when the data will be available from remote
processor and call rpmsg_recv accordingly. Mostly it will be called
to receive response of query done using rpmsg_send.
Some code is already available to allocate memory for RPMsg however,
that framework is mostly TI platform specific and isn't used by any
other platforms. This series makes sure it does not break
previous code for other platforms. If platforms wants to use this new
framework it is expected to set "support_rpmsg_virtio" flag in
relative remoteproc device's platform data.
Also the framework introduced by this series is ported from the Linux
kernel so other platforms which already support RPMsg in the Linux
kernel can easily use this framework in U-Boot as well.
---
Tanmay Shah (10):
remoteproc: move resource table definition
firmware: zynqmp: move zynqmp_pm_request_node API
remoteproc: add remoteproc virtio transport driver
drivers: add RPMsg framework
rpmsg: add sample client driver
cmd: add rpmsg framework commands
remoteproc: add attach/detach commands
remoteproc: add zynqmp driver
configs: zynqmp: enable remoteproc and rpmsg
configs: sandbox: enable rpmsg
MAINTAINERS | 15 +
arch/sandbox/dts/test.dts | 8 +
cmd/Kconfig | 6 +
cmd/Makefile | 1 +
cmd/remoteproc.c | 14 +-
cmd/rpmsg.c | 61 +++
configs/sandbox_defconfig | 4 +
configs/xilinx_zynqmp_virt_defconfig | 6 +
drivers/Kconfig | 2 +
drivers/Makefile | 1 +
drivers/firmware/firmware-zynqmp.c | 27 ++
drivers/power/domain/zynqmp-power-domain.c | 7 -
drivers/remoteproc/Kconfig | 20 +
drivers/remoteproc/Makefile | 2 +
drivers/remoteproc/rproc-elf-loader.c | 33 --
drivers/remoteproc/rproc-uclass.c | 125 +++++-
drivers/remoteproc/rproc_virtio.c | 422 +++++++++++++++++++++
drivers/remoteproc/xlnx_rproc.c | 411 ++++++++++++++++++++
drivers/rpmsg/Kconfig | 39 ++
drivers/rpmsg/Makefile | 13 +
drivers/rpmsg/rpmsg-uclass.c | 156 ++++++++
drivers/rpmsg/rpmsg_internal.h | 52 +++
drivers/rpmsg/rpmsg_sample_client.c | 63 +++
drivers/rpmsg/sandbox_test_rpmsg.c | 88 +++++
drivers/rpmsg/virtio_rpmsg_bus.c | 384 +++++++++++++++++++
drivers/virtio/virtio-uclass.c | 1 +
drivers/virtio/virtio_ring.c | 16 +
include/dm/uclass-id.h | 1 +
include/remoteproc.h | 130 ++++++-
include/rpmsg.h | 145 +++++++
include/rproc_virtio.h | 33 ++
include/virtio.h | 7 +-
include/virtio_ring.h | 32 ++
include/zynqmp_firmware.h | 30 +-
test/dm/Makefile | 1 +
test/dm/rpmsg.c | 41 ++
36 files changed, 2321 insertions(+), 76 deletions(-)
create mode 100644 cmd/rpmsg.c
create mode 100644 drivers/remoteproc/rproc_virtio.c
create mode 100644 drivers/remoteproc/xlnx_rproc.c
create mode 100644 drivers/rpmsg/Kconfig
create mode 100644 drivers/rpmsg/Makefile
create mode 100644 drivers/rpmsg/rpmsg-uclass.c
create mode 100644 drivers/rpmsg/rpmsg_internal.h
create mode 100644 drivers/rpmsg/rpmsg_sample_client.c
create mode 100644 drivers/rpmsg/sandbox_test_rpmsg.c
create mode 100644 drivers/rpmsg/virtio_rpmsg_bus.c
create mode 100644 include/rpmsg.h
create mode 100644 include/rproc_virtio.h
create mode 100644 test/dm/rpmsg.c
base-commit: 94e7cb181ad6bd25d36a11c58e0df64e9f815888
--
2.25.1
Branch: refs/heads/main
Home: https://github.com/OpenAMP/openamp-system-reference
Commit: 56b3456aca4f0da33df426e191ff6b0723e0033d
https://github.com/OpenAMP/openamp-system-reference/commit/56b3456aca4f0da3…
Author: Andrew Davis <afd(a)ti.com>
Date: 2023-07-21 (Fri, 21 Jul 2023)
Changed paths:
A examples/linux/common/common.c
A examples/linux/common/common.h
M examples/linux/rpmsg-echo-test/Makefile
M examples/linux/rpmsg-echo-test/echo_test.c
M examples/linux/rpmsg-mat-mul/Makefile
M examples/linux/rpmsg-mat-mul/mat_mul_demo.c
M examples/linux/rpmsg-proxy-app/Makefile
M examples/linux/rpmsg-proxy-app/proxy_app.c
Log Message:
-----------
examples: linux: Factor out app_rpmsg_create_ept into common file
Signed-off-by: Andrew Davis <afd(a)ti.com>
Commit: 811b152988d06352e9fa37667d2d8c1ec8bb7b6a
https://github.com/OpenAMP/openamp-system-reference/commit/811b152988d06352…
Author: Andrew Davis <afd(a)ti.com>
Date: 2023-07-21 (Fri, 21 Jul 2023)
Changed paths:
M examples/linux/common/common.c
M examples/linux/common/common.h
M examples/linux/rpmsg-echo-test/echo_test.c
M examples/linux/rpmsg-mat-mul/mat_mul_demo.c
M examples/linux/rpmsg-proxy-app/proxy_app.c
Log Message:
-----------
examples: linux: Factor out get_rpmsg_ept_dev_name into common file
Signed-off-by: Andrew Davis <afd(a)ti.com>
Commit: 03733bd4a3effe811397c891dc8709c4d3988c6e
https://github.com/OpenAMP/openamp-system-reference/commit/03733bd4a3effe81…
Author: Andrew Davis <afd(a)ti.com>
Date: 2023-07-21 (Fri, 21 Jul 2023)
Changed paths:
M examples/linux/common/common.c
M examples/linux/common/common.h
M examples/linux/rpmsg-echo-test/echo_test.c
M examples/linux/rpmsg-mat-mul/mat_mul_demo.c
M examples/linux/rpmsg-proxy-app/proxy_app.c
Log Message:
-----------
examples: linux: Factor out bind_rpmsg_chrdev into common file
Signed-off-by: Andrew Davis <afd(a)ti.com>
Commit: e801fa0607ca7989f29226b3da7382bc19369801
https://github.com/OpenAMP/openamp-system-reference/commit/e801fa0607ca7989…
Author: Andrew Davis <afd(a)ti.com>
Date: 2023-07-21 (Fri, 21 Jul 2023)
Changed paths:
M examples/linux/common/common.c
M examples/linux/common/common.h
M examples/linux/rpmsg-echo-test/echo_test.c
M examples/linux/rpmsg-mat-mul/mat_mul_demo.c
M examples/linux/rpmsg-proxy-app/proxy_app.c
Log Message:
-----------
examples: linux: Factor out get_rpmsg_chrdev_fd into common file
Signed-off-by: Andrew Davis <afd(a)ti.com>
Commit: 0ec83bfd5b3008b2713ce5a7b2f33fab26c6b5c8
https://github.com/OpenAMP/openamp-system-reference/commit/0ec83bfd5b3008b2…
Author: Andrew Davis <afd(a)ti.com>
Date: 2023-07-21 (Fri, 21 Jul 2023)
Changed paths:
M examples/linux/common/common.c
M examples/linux/common/common.h
M examples/linux/rpmsg-echo-test/echo_test.c
M examples/linux/rpmsg-mat-mul/mat_mul_demo.c
M examples/linux/rpmsg-proxy-app/proxy_app.c
Log Message:
-----------
examples: linux: Factor out lookup_channel into common file
Signed-off-by: Andrew Davis <afd(a)ti.com>
Commit: 3b2a0ebf7ef6598cb193b01f3d5c585f454fe4af
https://github.com/OpenAMP/openamp-system-reference/commit/3b2a0ebf7ef6598c…
Author: Andrew Davis <afd(a)ti.com>
Date: 2023-07-21 (Fri, 21 Jul 2023)
Changed paths:
M examples/linux/rpmsg-mat-mul/mat_mul_demo.c
Log Message:
-----------
examples: rpmsg-mat-mul: Cleanup matrix printout
Make matrix_print() into a common function and use it for both printing
the input and output matrices. Also add 3 wide padding so the output
looks more like a table when the numbers are not all the same length.
Signed-off-by: Andrew Davis <afd(a)ti.com>
Commit: 7615f43e710cbdb3bbc6acf25aaed35f3328629b
https://github.com/OpenAMP/openamp-system-reference/commit/7615f43e710cbdb3…
Author: Andrew Davis <afd(a)ti.com>
Date: 2023-07-21 (Fri, 21 Jul 2023)
Changed paths:
M examples/linux/rpmsg-echo-test/echo_test.c
M examples/linux/rpmsg-mat-mul/mat_mul_demo.c
M examples/linux/rpmsg-proxy-app/proxy_app.c
Log Message:
-----------
examples: linux: Remove uses of global variables
Usually considered bad practice and the code is more readable without.
Signed-off-by: Andrew Davis <afd(a)ti.com>
Commit: 2dadb557f9b1db6b9bd4b4fe97fef0d57a0e6734
https://github.com/OpenAMP/openamp-system-reference/commit/2dadb557f9b1db6b…
Author: Andrew Davis <afd(a)ti.com>
Date: 2023-07-21 (Fri, 21 Jul 2023)
Changed paths:
M examples/linux/rpmsg-mat-mul/mat_mul_demo.c
Log Message:
-----------
examples: rpmsg-mat-mul: Only send 32bit shutdown message
Signed-off-by: Andrew Davis <afd(a)ti.com>
Commit: 2c5d2064e45faf7e3a542d1232593beec40ff940
https://github.com/OpenAMP/openamp-system-reference/commit/2c5d2064e45faf7e…
Author: Andrew Davis <afd(a)ti.com>
Date: 2023-07-21 (Fri, 21 Jul 2023)
Changed paths:
M examples/linux/rpmsg-mat-mul/mat_mul_demo.c
Log Message:
-----------
examples: rpmsg-mat-mul: Cleanup printouts and remove debug statements
Signed-off-by: Andrew Davis <afd(a)ti.com>
Commit: db1f74a00c63d25b676d2874d28457c464408b9b
https://github.com/OpenAMP/openamp-system-reference/commit/db1f74a00c63d25b…
Author: Andrew Davis <afd(a)ti.com>
Date: 2023-07-21 (Fri, 21 Jul 2023)
Changed paths:
M examples/linux/common/common.c
Log Message:
-----------
examples: linux: Close file on error in bind_rpmsg_chrdev
The file should be closed when returning from this function in the error
path. Fix this here.
Signed-off-by: Andrew Davis <afd(a)ti.com>
Compare: https://github.com/OpenAMP/openamp-system-reference/compare/7f1fb3b84edc...…
Branch: refs/heads/main
Home: https://github.com/OpenAMP/open-amp
Commit: a2456e61ee5b7c55eb3901bdcdd836b7e0f83bbc
https://github.com/OpenAMP/open-amp/commit/a2456e61ee5b7c55eb3901bdcdd836b7…
Author: Iuliana Prodan <iuliana.prodan(a)nxp.com>
Date: 2023-07-17 (Mon, 17 Jul 2023)
Changed paths:
M cmake/options.cmake
M lib/include/openamp/remoteproc_virtio.h
M lib/remoteproc/remoteproc_virtio.c
Log Message:
-----------
remoteproc: do cache invalidation before reading rsc_table info
Do a cache invalidation before reading the resource table's info
since this ca be in a cacheable region.
Make this optional, based on VIRTIO_CACHED_RSC_TABLE.
Signed-off-by: Iuliana Prodan <iuliana.prodan(a)nxp.com>
Commit: 5891cb4b2e813d1c9d10def998952b062304e43f
https://github.com/OpenAMP/open-amp/commit/5891cb4b2e813d1c9d10def998952b06…
Author: Iuliana Prodan <iuliana.prodan(a)nxp.com>
Date: 2023-07-17 (Mon, 17 Jul 2023)
Changed paths:
M README.md
Log Message:
-----------
README: add new cache option for resource table
Add info for WITH_DCACHE_RSC_TABLE option.
Signed-off-by: Iuliana Prodan <iuliana.prodan(a)nxp.com>
Compare: https://github.com/OpenAMP/open-amp/compare/7f906105a9ff...5891cb4b2e81
Branch: refs/heads/main
Home: https://github.com/OpenAMP/open-amp
Commit: 7f906105a9ffef8e59287f0fca68fc8f8df7725c
https://github.com/OpenAMP/open-amp/commit/7f906105a9ffef8e59287f0fca68fc8f…
Author: Bowen Wang <wangbowen6(a)xiaomi.com>
Date: 2023-07-12 (Wed, 12 Jul 2023)
Changed paths:
M lib/include/openamp/virtio.h
M lib/virtio/virtio.c
Log Message:
-----------
virtio: add create_virtqueues and delete_virtqueues in virtio_dispatch
This is the first step to decoupling the virtio device and transport
layer.
Signed-off-by: Bowen Wang <wangbowen6(a)xiaomi.com>
Hello,
I am new to this mailing list. I have done some work recently to get the RPMSG sample running on a dual core STM32H device from ST and it works. In this case both Host and Remote runs Zephyr. My goal is to replace the Remote with a bare-metal and did some research and found open-amp can be used for the same. However, I don't see any libmetal port on STM32 under lib/system/generic. My understanding is that with this, I would be able to modify an existing example in open-amp (under https://github.com/OpenAMP/open-amp/tree/main/apps/examples/rpmsg_sample_ech...) to work with the Zephyr rpmsg example at https://github.com/zephyrproject-rtos/zephyr/tree/main/samples/subsys/ipc/rp...)
Has anyone attempted anything like this that I can leverage on? Other than the libmetal port, what else would be needed to get this inter-work with Zephyr RPMSG sample or should I attempt a different sample from Zephyr to work with open-amp sample? Any help to get me in the right direction would be appreciated.
Thanks.
Murali Karicheri
Branch: refs/heads/main
Home: https://github.com/OpenAMP/libmetal
Commit: 4976e580d4aeb8c88952ba0c00e750b300cc18bf
https://github.com/OpenAMP/libmetal/commit/4976e580d4aeb8c88952ba0c00e750b3…
Author: Arnaud Pouliquen <arnaud.pouliquen(a)foss.st.com>
Date: 2023-07-10 (Mon, 10 Jul 2023)
Changed paths:
M .github/workflows/compliance.yml
M scripts/ci/check_compliance.py
Log Message:
-----------
CI: Fix checkpatch
The CI does not consider "check" reported by checkpatch.
This commit fixes it by:
- rebasing check_compliance.py compliance.yml to integrate Zephyr updates,
- add detection of the "check" in the report.
Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen(a)foss.st.com>
Branch: refs/heads/main
Home: https://github.com/OpenAMP/open-amp
Commit: dcc21e665704b4eab5b5a77910ab39b188d62f31
https://github.com/OpenAMP/open-amp/commit/dcc21e665704b4eab5b5a77910ab39b1…
Author: Arnaud Pouliquen <arnaud.pouliquen(a)foss.st.com>
Date: 2023-07-10 (Mon, 10 Jul 2023)
Changed paths:
M .github/workflows/compliance.yml
M scripts/ci/check_compliance.py
Log Message:
-----------
CI: Fix checkpatch
The CI does not consider "check" reported by checkpatch.
This commit fixes it by:
- rebasing check_compliance.py compliance.yml to integrate Zephyr updates,
- add detection of the "check" in the report.
Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen(a)foss.st.com>
Branch: refs/heads/main
Home: https://github.com/OpenAMP/libmetal
Commit: 6e4b016151dec9419e72c3fc9887f19e7f412e27
https://github.com/OpenAMP/libmetal/commit/6e4b016151dec9419e72c3fc9887f19e…
Author: Ben Levinsky <ben.levinsky(a)xilinx.com>
Date: 2023-06-29 (Thu, 29 Jun 2023)
Changed paths:
M lib/system/generic/xlnx_common/CMakeLists.txt
A lib/system/generic/xlnx_common/zynqmp_aarch64/CMakeLists.txt
A lib/system/generic/xlnx_common/zynqmp_aarch64/sys.c
A lib/system/generic/xlnx_common/zynqmp_aarch64/sys.h
M lib/system/generic/zynqmp_a53/CMakeLists.txt
M lib/system/generic/zynqmp_a53/sys.h
A lib/system/generic/zynqmp_a72/CMakeLists.txt
A lib/system/generic/zynqmp_a72/sys.h
M lib/utilities.h
Log Message:
-----------
lib: add support for A72 Baremetal
Enable cache, IPI, exception and shared-memory operations on Versal A72
for Libmetal.
Additionally, as the code for A72 and A53 is almost identical, move
the common code to generic/xlnx_common/zynqmp_aarch64 and differentiate
the slight differences with macro checks.
Signed-off-by: Ben Levinsky <ben.levinsky(a)xilinx.com>
Acked-by: tanmay.shah(a)xilinx.com
Commit: 7ec5b636e7d6f9d1eb9e19d9689375cbb4be7499
https://github.com/OpenAMP/libmetal/commit/7ec5b636e7d6f9d1eb9e19d9689375cb…
Author: Ben Levinsky <ben.levinsky(a)amd.com>
Date: 2023-06-29 (Thu, 29 Jun 2023)
Changed paths:
M lib/system/generic/xlnx_common/zynqmp_aarch64/sys.c
A lib/system/generic/zynqmp_a78/CMakeLists.txt
A lib/system/generic/zynqmp_a78/sys.h
Log Message:
-----------
lib: add support for A78 Baremetal
Enable cache, IPI, exception and shared-memory operations on Versal A78
for Libmetal.
Signed-off-by: Ben Levinsky <ben.levinsky(a)amd.com>
Compare: https://github.com/OpenAMP/libmetal/compare/cd104fa0fd89...7ec5b636e7d6
Branch: refs/heads/main
Home: https://github.com/OpenAMP/open-amp
Commit: b177618da42e401c6d0f3810f7594f33023111c3
https://github.com/OpenAMP/open-amp/commit/b177618da42e401c6d0f3810f7594f33…
Author: Bowen Wang <wangbowen6(a)xiaomi.com>
Date: 2023-06-22 (Thu, 22 Jun 2023)
Changed paths:
M lib/include/openamp/virtio.h
M lib/virtio/virtio.c
Log Message:
-----------
virtio: follow virtio v1.2 spec, add more virtio status and device id
Follow the virtio v1.2 spec, add more virtio status and device id
definition in virtio.h
Signed-off-by: Bowen Wang <wangbowen6(a)xiaomi.com>
Hello,
I am new to this mailing list. I have done some work recently to get the RPMSG sample running on a dual core STM32H device from ST and it works. In this case both Host and Remote runs Zephyr. My goal is to replace the Remote with a bare-metal and did some research and found open-amp can be used for the same. However, I don't see any libmetal port on STM32 under lib/system/generic. My understanding is that with this, I would be able to modify an existing example in open-amp (under https://github.com/OpenAMP/open-amp/tree/main/apps/examples/rpmsg_sample_ec…) to work with the Zephyr rpmsg example at https://github.com/zephyrproject-rtos/zephyr/tree/main/samples/subsys/ipc/r…)
Has anyone attempted anything like this that I can leverage on? Other than the libmetal port, what else would be needed to get this inter-work with Zephyr RPMSG sample or should I attempt a different sample from Zephyr to work with open-amp sample? Any help to get me in the right direction would be appreciated.
Thanks.
Murali Karicheri
S&C Electric.
________________________________
NOTICE OF CONFIDENTIALITY:
This message may contain information that is considered confidential and which may be prohibited from disclosure under applicable law or by contractual agreement. The information is intended solely for the use of the individual or entity named above. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the information contained in or attached to this message is strictly prohibited. If you have received this email transmission in error, please notify the sender by replying to this email and then delete it from your system.
Branch: refs/heads/main
Home: https://github.com/OpenAMP/libmetal
Commit: 2345b74998e9c9a606266572c658f5e76fe7e82a
https://github.com/OpenAMP/libmetal/commit/2345b74998e9c9a606266572c658f5e7…
Author: Arnaud Pouliquen <arnaud.pouliquen(a)foss.st.com>
Date: 2023-06-05 (Mon, 05 Jun 2023)
Changed paths:
M .github/workflows/continuous-integration.yml
Log Message:
-----------
CI: update checkout action to V3
Node.js 12 actions are deprecated. Use the checkout V3
action to use Node.js 16
Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen(a)foss.st.com>
Commit: cd104fa0fd89b722501aba948effe6e9f940b79c
https://github.com/OpenAMP/libmetal/commit/cd104fa0fd89b722501aba948effe6e9…
Author: Arnaud Pouliquen <arnaud.pouliquen(a)foss.st.com>
Date: 2023-06-05 (Mon, 05 Jun 2023)
Changed paths:
M .github/actions/build_ci/entrypoint.sh
Log Message:
-----------
CI: fix zephyr build issue related to the VERSION file
The Zephyr cmake fails in version.cmake because some fields
are not present in the libmetal VERSION file
Add dummy fields for the CI to fix compatibility issue
Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen(a)foss.st.com>
Compare: https://github.com/OpenAMP/libmetal/compare/28fa2351d6a8...cd104fa0fd89
ST Restricted
> -----Original Message-----
> From: Mathieu Poirier <mathieu.poirier(a)linaro.org>
> Sent: Saturday, May 20, 2023 1:00 AM
> To: Bill Mills <bill.mills(a)linaro.org>
> Cc: Shah, Tanmay <tanmay.shah(a)amd.com>; ed.mooring(a)gmail.com;
> tammy.leino(a)siemens.com; Arnaud POULIQUEN
> <arnaud.pouliquen(a)st.com>; openamp-rp(a)lists.openampproject.org
> Subject: Re: [RFC]: Variable RpMsg buffer size in Linux Kernel
>
> On Thu, 18 May 2023 at 10:27, Bill Mills <bill.mills(a)linaro.org> wrote:
> >
> >
> >
> > On 5/18/23 12:00 PM, Shah, Tanmay wrote:
> > > Hi all,
> > >
> > > As of now, rpmsg buffer size is decided by RPMSG_BUF_SIZE macro.
> > > This is fixed to 512 bytes.
> > >
> > > If platform needs to send larger than 512 bytes of payload, then the
> > > payload needs to be split between multiple buffers.
> > >
> > > Instead of that, it would be useful if platform can configure
> > > RPMSG_BUF_SIZE somehow.
> > >
> > > There are multiple options to achieve this:
> > >
> > > 1. Move RPMSG_BUF_SIZE to Kconfig -> The approach is not accepted as
> > > single kernel may not work for all platforms.
> > > 2. Keep device-tree property that mentions rpmsg buffer size.
> > > 1. Something in dts: “rpmsg-buf-size = <512>”
> > > 2. This way one kernel can work for all the platforms. If property
> > > is not mentioned, then we fallback to default size of 512 bytes.
> > > 3. Dynamic buffer allocation
> > > 1. This effort was done previously. Please refer to following
> > > discussion from kernel and openamp library:
> > >
> > > i.Openamp library: https://github.com/OpenAMP/open-amp/pull/155
> > > <https://github.com/OpenAMP/open-amp/pull/155>
> > >
> > > 1. Conclusion:
> > >
> > > https://github.com/OpenAMP/open-amp/issues/322#issuecomment-
> 98657382
> > > 8
> > > <https://github.com/OpenAMP/open-amp/issues/322#issuecomment-
> 9865738
> > > 28>
> > >
> > > ii.Kernel:
> > > https://patchwork.kernel.org/project/linux-remoteproc/cover/15489492
> > > 80-31794-1-git-send-email-xiaoxiang(a)xiaomi.com/
> > > <https://patchwork.kernel.org/project/linux-remoteproc/cover/1548949
> > > 280-31794-1-git-send-email-xiaoxiang(a)xiaomi.com/>
> > >
> >
> > Lore link to same:
> > https://lore.kernel.org/lkml/20190605043452.GI22737@tuxbook-pro/T/
> >
> > I saw nothing in this thread that I would call a rejection.
> >
> > It made the size choice based on the virtio config space which could
> > come from firmware resource table now or virtio device config space if
> > using virtio-mmio etc.
> >
> > Bjorn did point out that a system where each side allocated its own
> > buffers of whatever size desired would be more flexible but:
> > * did not object to this step
> > * that would be a pretty big departure from what we have not and we
> > would still need to negotiate its use.
> >
> > The biggest issues I saw with the patch series was the details of how
> > it did the config. That could have been fixed with a bit more effort.
> >
> > I would vote we just resurrect this patch set and clean it up rather
> > than going down the DTS route.
> >
>
> I agree - I did not find anything controversial in that patchset either. We can
> start with that and later supplement with the DTS if needed.
Also in favor of this approach
Regards,
Arnaud
>
> > Bill
> >
> > > 2. As part of this, RPMSG_BUF_SIZE is configurable on library side,
> > > but not on kernel side.
> > >
> > > If it looks reasonable to go with approach 2 without side-effects, I
> > > can develop and send the patch.
> > >
> > > Thanks,
> > >
> > > Tanmay
> > >
> >
> > --
> > Bill Mills
> > Principal Technical Consultant, Linaro
> > +1-240-643-0836
> > TZ: US Eastern
> > Work Schedule: Tues/Wed/Thur
Branch: refs/heads/main
Home: https://github.com/OpenAMP/open-amp
Commit: 1697a15f477578104e81092406fb2318a56e2f72
https://github.com/OpenAMP/open-amp/commit/1697a15f477578104e81092406fb2318…
Author: Ben Levinsky <ben.levinsky(a)amd.com>
Date: 2023-05-22 (Mon, 22 May 2023)
Changed paths:
M apps/machine/zynqmp/platform_info.c
Log Message:
-----------
apps: zynqmp: Add Versal_net IPI values.
Enable Linux demos to run on Versal_net by updating the IPI values that
are specific to this hardware platform.
Signed-off-by: Ben Levinsky <ben.levinsky(a)amd.com>
On 5/18/23 12:00 PM, Shah, Tanmay wrote:
> Hi all,
>
> As of now, rpmsg buffer size is decided by RPMSG_BUF_SIZE macro. This is
> fixed to 512 bytes.
>
> If platform needs to send larger than 512 bytes of payload, then the
> payload needs to be split between multiple buffers.
>
> Instead of that, it would be useful if platform can configure
> RPMSG_BUF_SIZE somehow.
>
> There are multiple options to achieve this:
>
> 1. Move RPMSG_BUF_SIZE to Kconfig -> The approach is not accepted as
> single kernel may not work for all platforms.
> 2. Keep device-tree property that mentions rpmsg buffer size.
> 1. Something in dts: “rpmsg-buf-size = <512>”
> 2. This way one kernel can work for all the platforms. If property
> is not mentioned, then we fallback to default size of 512 bytes.
> 3. Dynamic buffer allocation
> 1. This effort was done previously. Please refer to following
> discussion from kernel and openamp library:
>
> i.Openamp library: https://github.com/OpenAMP/open-amp/pull/155
> <https://github.com/OpenAMP/open-amp/pull/155>
>
> 1. Conclusion:
> https://github.com/OpenAMP/open-amp/issues/322#issuecomment-986573828 <https://github.com/OpenAMP/open-amp/issues/322#issuecomment-986573828>
>
> ii.Kernel:
> https://patchwork.kernel.org/project/linux-remoteproc/cover/1548949280-3179… <https://patchwork.kernel.org/project/linux-remoteproc/cover/1548949280-3179…>
>
Lore link to same:
https://lore.kernel.org/lkml/20190605043452.GI22737@tuxbook-pro/T/
I saw nothing in this thread that I would call a rejection.
It made the size choice based on the virtio config space which could
come from firmware resource table now or virtio device config space if
using virtio-mmio etc.
Bjorn did point out that a system where each side allocated its own
buffers of whatever size desired would be more flexible but:
* did not object to this step
* that would be a pretty big departure from what we have not and we
would still need to negotiate its use.
The biggest issues I saw with the patch series was the details of how it
did the config. That could have been fixed with a bit more effort.
I would vote we just resurrect this patch set and clean it up rather
than going down the DTS route.
Bill
> 2. As part of this, RPMSG_BUF_SIZE is configurable on library side,
> but not on kernel side.
>
> If it looks reasonable to go with approach 2 without side-effects, I can
> develop and send the patch.
>
> Thanks,
>
> Tanmay
>
--
Bill Mills
Principal Technical Consultant, Linaro
+1-240-643-0836
TZ: US Eastern
Work Schedule: Tues/Wed/Thur