Commit | Line | Data |
---|---|---|
1a758d4e | 1 | /* |
86b09055 | 2 | * videobuf2-dma-contig.h - DMA contig memory allocator for videobuf2 |
1a758d4e PO |
3 | * |
4 | * Copyright (C) 2010 Samsung Electronics | |
5 | * | |
95072084 | 6 | * Author: Pawel Osciak <pawel@osciak.com> |
1a758d4e PO |
7 | * |
8 | * This program is free software; you can redistribute it and/or modify | |
9 | * it under the terms of the GNU General Public License as published by | |
10 | * the Free Software Foundation. | |
11 | */ | |
12 | ||
86b09055 AW |
13 | #ifndef _MEDIA_VIDEOBUF2_DMA_CONTIG_H |
14 | #define _MEDIA_VIDEOBUF2_DMA_CONTIG_H | |
1a758d4e | 15 | |
c139990e | 16 | #include <media/videobuf2-v4l2.h> |
472af2b0 | 17 | #include <linux/dma-mapping.h> |
1a758d4e | 18 | |
ccc66e73 TF |
19 | struct dma_attrs; |
20 | ||
472af2b0 | 21 | static inline dma_addr_t |
ba7fcb0c | 22 | vb2_dma_contig_plane_dma_addr(struct vb2_buffer *vb, unsigned int plane_no) |
1a758d4e | 23 | { |
ba7fcb0c | 24 | dma_addr_t *addr = vb2_plane_cookie(vb, plane_no); |
472af2b0 | 25 | |
ba7fcb0c | 26 | return *addr; |
1a758d4e PO |
27 | } |
28 | ||
ccc66e73 TF |
29 | void *vb2_dma_contig_init_ctx_attrs(struct device *dev, |
30 | struct dma_attrs *attrs); | |
31 | ||
32 | static inline void *vb2_dma_contig_init_ctx(struct device *dev) | |
33 | { | |
34 | return vb2_dma_contig_init_ctx_attrs(dev, NULL); | |
35 | } | |
36 | ||
1a758d4e PO |
37 | void vb2_dma_contig_cleanup_ctx(void *alloc_ctx); |
38 | ||
39 | extern const struct vb2_mem_ops vb2_dma_contig_memops; | |
40 | ||
41 | #endif |