From 4c06a2768dba227a61e00ab502ca09cd73d300f2 Mon Sep 17 00:00:00 2001 From: Bowen Wang Date: Tue, 13 Jan 2026 15:45:32 +0800 Subject: [PATCH] openamp: add mm_priv to struct virtio_device now the virtio device can set it's own memory private data, and can use this private data to store the memory manager handler Signed-off-by: Bowen Wang --- ...-add-mm_priv-to-struct-virtio_deivce.patch | 30 +++++++++++++++++++ openamp/open-amp.cmake | 2 ++ openamp/open-amp.defs | 1 + 3 files changed, 33 insertions(+) create mode 100644 openamp/0013-virtio.h-add-mm_priv-to-struct-virtio_deivce.patch diff --git a/openamp/0013-virtio.h-add-mm_priv-to-struct-virtio_deivce.patch b/openamp/0013-virtio.h-add-mm_priv-to-struct-virtio_deivce.patch new file mode 100644 index 00000000000..628cc951bf6 --- /dev/null +++ b/openamp/0013-virtio.h-add-mm_priv-to-struct-virtio_deivce.patch @@ -0,0 +1,30 @@ +From 8ae5419aa1e549d2b5d97d62af87bb3ede355ee2 Mon Sep 17 00:00:00 2001 +From: Bowen Wang +Date: Thu, 5 Sep 2024 23:02:20 +0800 +Subject: [PATCH 13/13] virtio.h: add mm_priv to struct virtio_deivce + +Support assign private memory data to the virtio device, so the +virtio memory operation api is more easlier to implement. + +Signed-off-by: Bowen Wang +--- + lib/include/openamp/virtio.h | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/lib/include/openamp/virtio.h open-amp/lib/include/openamp/virtio.h +index 0c35c45ccf..475aa695bd 100644 +--- a/lib/include/openamp/virtio.h ++++ open-amp/lib/include/openamp/virtio.h +@@ -207,6 +207,9 @@ struct virtio_device { + /**< Virtio device memory operations */ + const struct virtio_memory_ops *mmops; + ++ /** The memory operation private data */ ++ void *mm_priv; ++ + /** Private data */ + void *priv; + +-- +2.34.1 + diff --git a/openamp/open-amp.cmake b/openamp/open-amp.cmake index 93726d46c9d..97833c858a3 100644 --- a/openamp/open-amp.cmake +++ b/openamp/open-amp.cmake @@ -62,6 +62,8 @@ if(NOT EXISTS ${CMAKE_CURRENT_LIST_DIR}/open-amp) ${CMAKE_CURRENT_LIST_DIR}/0011-remoteproc_virtio-add-shm_io-for-remoteproc-virtio-a.patch && patch -p0 -d ${CMAKE_CURRENT_LIST_DIR} < ${CMAKE_CURRENT_LIST_DIR}/0012-remoteproc-sync-the-virtio-rpmsg-config-with-linux-s.patch + && patch -p0 -d ${CMAKE_CURRENT_LIST_DIR} < + ${CMAKE_CURRENT_LIST_DIR}/0013-virtio.h-add-mm_priv-to-struct-virtio_deivce.patch DOWNLOAD_NO_PROGRESS true TIMEOUT 30) diff --git a/openamp/open-amp.defs b/openamp/open-amp.defs index ada1b9e6678..1f9a10a43fd 100644 --- a/openamp/open-amp.defs +++ b/openamp/open-amp.defs @@ -78,6 +78,7 @@ open-amp.zip: $(Q) patch -p0 < 0010-openamp-add-assert-when-get-tx-buffer-failed.patch $(Q) patch -p0 < 0011-remoteproc_virtio-add-shm_io-for-remoteproc-virtio-a.patch $(Q) patch -p0 < 0012-remoteproc-sync-the-virtio-rpmsg-config-with-linux-s.patch + $(Q) patch -p0 < 0013-virtio.h-add-mm_priv-to-struct-virtio_deivce.patch .openamp_headers: open-amp.zip else