Linux内存从0到1学习笔记(8.12 dma-buf导出器和导入器使用示例 四)

Posted 高桐@BILL

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux内存从0到1学习笔记(8.12 dma-buf导出器和导入器使用示例 四)相关的知识,希望对你有一定的参考价值。

    前面解释了使用dma_buf所涉及的几个重要的结构体以及导出器的示例,我们再来介绍下导入器具体示例。

mock_dmabuf_imp.c示例

  1 #include <linux/device.h>
  2 #include <linux/dma-buf.h>
  3 #include <linux/module.h>
  4 #include <linux/slab.h>
  5
  6 extern struct dma_buf *dmabuf_of_exporter;
  7
  8 static int mock_importer(struct dma_buf *dmabuf)
  9
 10     pr_info("mock_importer, enter.\\n");
 11     struct dma_buf_attachment *attachment;
 12     struct sg_table *table;
 13     struct device *dev;
 14
 15     if(!dmabuf)
 16         pr_err("dmabuf, error.\\n");
 17         return -EINVAL;
 18    
 19
 20     dev = kzalloc(sizeof(*dev), GFP_KERNEL);
 21     if(!dev)
 22         pr_err("kmalloc error.\\n");
 23         return -ENOMEM;
 24    
 25

以上是关于Linux内存从0到1学习笔记(8.12 dma-buf导出器和导入器使用示例 四)的主要内容,如果未能解决你的问题,请参考以下文章

Linux内存从0到1学习笔记(8.12 dma-buf导出器和导入器使用示例 三)

Linux内存从0到1学习笔记(8.12 dma-buf导出器和导入器使用示例 四)

Linux内存从0到1学习笔记(8.12 dma-buf导出器和导入器使用示例 四)

Linux内存从0到1学习笔记(8.12 dma-buf导出器和导入器使用示例 四)

Linux内存从0到1学习笔记(8.13 dma内存调试一)

Linux内存从0到1学习笔记(8.13 dma内存调试一)