From 1091cadd99315959303ab3a8227e054884c28770 Mon Sep 17 00:00:00 2001
From: Bowen Wang <wangbowen6@xiaomi.com>
Date: Mon, 12 Aug 2024 10:15:24 +0800
Subject: [PATCH 14/14] virtio.h: add memory operation for virtio device

To make different virtio device/transport can use it's own memory
region.

Signed-off-by: Bowen Wang <wangbowen6@xiaomi.com>
---
 lib/include/openamp/virtio.h | 42 ++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

diff --git a/lib/include/openamp/virtio.h open-amp/lib/include/openamp/virtio.h
index dd285ac..1099a26 100644
--- a/lib/include/openamp/virtio.h
+++ open-amp/lib/include/openamp/virtio.h
@@ -152,6 +152,7 @@ struct virtio_device_id {
 typedef void (*virtio_dev_reset_cb)(struct virtio_device *vdev);
 
 struct virtio_dispatch;
+struct virtio_memory_ops;
 
 /** @brief Device features. */
 struct virtio_feature_desc {
@@ -197,6 +198,9 @@ struct virtio_device {
 	/** Virtio dispatch table */
 	const struct virtio_dispatch *func;
 
+	/** Virtio device memory operations */
+	const struct virtio_memory_ops *mmops;
+
 	/** Private data */
 	void *priv;
 
@@ -204,6 +208,7 @@ struct virtio_device {
 	unsigned int vrings_num;
 
 	/** Pointer to the virtio vring structure */
+
 	struct virtio_vring_info *vrings_info;
 };
 
@@ -282,6 +287,11 @@ struct virtio_dispatch {
 	void (*notify)(struct virtqueue *vq);
 };
 
+struct virtio_memory_ops {
+	void *(*alloc)(struct virtio_device *dev, size_t size, size_t align);
+	void (*free)(struct virtio_device *dev, void *buf);
+};
+
 /**
  * @brief Create the virtio device virtqueue.
  *
@@ -499,6 +509,38 @@ static inline int virtio_reset_device(struct virtio_device *vdev)
 	return 0;
 }
 
+/**
+ * @brief Allocate buffer from the virtio device
+ *
+ * @param vdev	Pointer to virtio device structure.
+ * @param size	Allocated buffer size.
+ * @param align	Allocated buffer alignment.
+ *
+ * @return The allocated buffer address.
+ */
+static inline void *virtio_alloc_buf(struct virtio_device *vdev,
+				     size_t size, size_t align)
+{
+	if (!vdev->mmops->alloc)
+		return NULL;
+
+	return vdev->mmops->alloc(vdev, size, align);
+}
+
+/**
+ * @brief Free buffer to the virtio device
+ *
+ * @param vdev	Pointer to virtio device structure.
+ * @param buf	Buffer need to be freed.
+ */
+static inline void virtio_free_buf(struct virtio_device *vdev, void *buf)
+{
+	if (!vdev->mmops->free)
+		return;
+
+	vdev->mmops->free(vdev, buf);
+}
+
 #if defined __cplusplus
 }
 #endif
-- 
2.34.1

