~ubuntu-branches/ubuntu/precise/linux-ti-omap4/precise

« back to all changes in this revision

Viewing changes to include/media/videobuf2-memops.h

  • Committer: Bazaar Package Importer
  • Author(s): Paolo Pisati
  • Date: 2011-06-29 15:23:51 UTC
  • mfrom: (26.1.1 natty-proposed)
  • Revision ID: james.westby@ubuntu.com-20110629152351-xs96tm303d95rpbk
Tags: 3.0.0-1200.2
* Rebased against 3.0.0-6.7
* BSP from TI based on 3.0.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * videobuf2-memops.h - generic memory handling routines for videobuf2
 
3
 *
 
4
 * Copyright (C) 2010 Samsung Electronics
 
5
 *
 
6
 * Author: Pawel Osciak <pawel@osciak.com>
 
7
 *         Marek Szyprowski <m.szyprowski@samsung.com>
 
8
 *
 
9
 * This program is free software; you can redistribute it and/or modify
 
10
 * it under the terms of the GNU General Public License as published by
 
11
 * the Free Software Foundation.
 
12
 */
 
13
 
 
14
#ifndef _MEDIA_VIDEOBUF2_MEMOPS_H
 
15
#define _MEDIA_VIDEOBUF2_MEMOPS_H
 
16
 
 
17
#include <media/videobuf2-core.h>
 
18
 
 
19
/**
 
20
 * vb2_vmarea_handler - common vma refcount tracking handler
 
21
 * @refcount:   pointer to refcount entry in the buffer
 
22
 * @put:        callback to function that decreases buffer refcount
 
23
 * @arg:        argument for @put callback
 
24
 */
 
25
struct vb2_vmarea_handler {
 
26
        atomic_t                *refcount;
 
27
        void                    (*put)(void *arg);
 
28
        void                    *arg;
 
29
};
 
30
 
 
31
extern const struct vm_operations_struct vb2_common_vm_ops;
 
32
 
 
33
int vb2_get_contig_userptr(unsigned long vaddr, unsigned long size,
 
34
                           struct vm_area_struct **res_vma, dma_addr_t *res_pa);
 
35
 
 
36
int vb2_mmap_pfn_range(struct vm_area_struct *vma, unsigned long paddr,
 
37
                                unsigned long size,
 
38
                                const struct vm_operations_struct *vm_ops,
 
39
                                void *priv);
 
40
 
 
41
struct vm_area_struct *vb2_get_vma(struct vm_area_struct *vma);
 
42
void vb2_put_vma(struct vm_area_struct *vma);
 
43
 
 
44
 
 
45
#endif