hva-mem.h 717 B

12345678910111213141516171819202122232425262728293031323334
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * Copyright (C) STMicroelectronics SA 2015
  4. * Authors: Yannick Fertre <yannick.fertre@st.com>
  5. * Hugues Fruchet <hugues.fruchet@st.com>
  6. */
  7. #ifndef HVA_MEM_H
  8. #define HVA_MEM_H
  9. /**
  10. * struct hva_buffer - hva buffer
  11. *
  12. * @name: name of requester
  13. * @paddr: physical address (for hardware)
  14. * @vaddr: virtual address (kernel can read/write)
  15. * @size: size of buffer
  16. */
  17. struct hva_buffer {
  18. const char *name;
  19. dma_addr_t paddr;
  20. void *vaddr;
  21. u32 size;
  22. };
  23. int hva_mem_alloc(struct hva_ctx *ctx,
  24. __u32 size,
  25. const char *name,
  26. struct hva_buffer **buf);
  27. void hva_mem_free(struct hva_ctx *ctx,
  28. struct hva_buffer *buf);
  29. #endif /* HVA_MEM_H */