From 8145bbae35b75aafc9356dec426c29decbe7a5d8 Mon Sep 17 00:00:00 2001 From: Patrick Daly Date: Mon, 9 May 2022 10:34:11 -0700 Subject: [PATCH] mem-buf: Add accessor for mem_buf_desc sgl list Allow clients to see what IPA address a mem_buf object is mapped to. Change-Id: Ib3d47cb78bf7b1b217950e1e59b8d542abb3a331 Signed-off-by: Patrick Daly --- drivers/soc/qcom/mem_buf/mem-buf-gh.c | 8 ++++++++ include/linux/mem-buf.h | 5 +++++ 2 files changed, 13 insertions(+) diff --git a/drivers/soc/qcom/mem_buf/mem-buf-gh.c b/drivers/soc/qcom/mem_buf/mem-buf-gh.c index 6bbd10ba1777..a5b56f4b41dd 100644 --- a/drivers/soc/qcom/mem_buf/mem-buf-gh.c +++ b/drivers/soc/qcom/mem_buf/mem-buf-gh.c @@ -1145,6 +1145,14 @@ static int get_mem_buf(void *membuf_desc) return 0; } +struct gh_sgl_desc *mem_buf_get_sgl(void *__membuf) +{ + struct mem_buf_desc *membuf = __membuf; + + return membuf->sgl_desc; +} +EXPORT_SYMBOL(mem_buf_get_sgl); + static void mem_buf_retrieve_release(struct qcom_sg_buffer *buffer) { sg_free_table(&buffer->sg_table); diff --git a/include/linux/mem-buf.h b/include/linux/mem-buf.h index f9e1ecb07b3f..3f69e1d9755a 100644 --- a/include/linux/mem-buf.h +++ b/include/linux/mem-buf.h @@ -104,6 +104,7 @@ void mem_buf_put(void *membuf_desc); void *mem_buf_get(int fd); +struct gh_sgl_desc *mem_buf_get_sgl(void *membuf); #else static inline int mem_buf_get_fd(void *membuf_desc) @@ -120,5 +121,9 @@ static inline void *mem_buf_get(int fd) return ERR_PTR(-ENODEV); } +static inline struct gh_sgl_desc *mem_buf_get_sgl(void *membuf) +{ + return ERR_PTR(-EINVAL); +} #endif /* CONFIG_QCOM_MEM_BUF */ #endif /* _MEM_BUF_H */