| /* SPDX-License-Identifier: GPL-2.0 */ |
| /* |
| * Copyright (C) STMicroelectronics SA 2015 |
| * Authors: Yannick Fertre <yannick.fertre@st.com> |
| * Hugues Fruchet <hugues.fruchet@st.com> |
| */ |
| |
| #ifndef HVA_MEM_H |
| #define HVA_MEM_H |
| |
| /** |
| * struct hva_buffer - hva buffer |
| * |
| * @name: name of requester |
| * @paddr: physical address (for hardware) |
| * @vaddr: virtual address (kernel can read/write) |
| * @size: size of buffer |
| */ |
| struct hva_buffer { |
| const char *name; |
| dma_addr_t paddr; |
| void *vaddr; |
| u32 size; |
| }; |
| |
| int hva_mem_alloc(struct hva_ctx *ctx, |
| __u32 size, |
| const char *name, |
| struct hva_buffer **buf); |
| |
| void hva_mem_free(struct hva_ctx *ctx, |
| struct hva_buffer *buf); |
| |
| #endif /* HVA_MEM_H */ |