参照元

説明

参考

実装

/**
 * struct vb2_buffer - represents a video buffer
 * @vb2_queue:          the queue to which this driver belongs
 * @index:              id number of the buffer
 * @type:               buffer type
 * @memory:             the method, in which the actual data is passed
 * @num_planes:         number of planes in the buffer
 *                      on an internal driver queue
 * @planes:             private per-plane information; do not change
 */
struct vb2_buffer {
        struct vb2_queue        *vb2_queue;
        unsigned int            index;
        unsigned int            type;
        unsigned int            memory;
        unsigned int            num_planes;
        struct vb2_plane        planes[VB2_MAX_PLANES];
        /* private: internal use only
         *
         * state:               current buffer state; do not change
         * queued_entry:        entry on the queued buffers list, which holds
         *                      all buffers queued from userspace
         * done_entry:          entry on the list that stores all buffers ready
         *                      to be dequeued to userspace
         */
        enum vb2_buffer_state   state;
        struct list_head        queued_entry;
        struct list_head        done_entry;
#ifdef CONFIG_VIDEO_ADV_DEBUG
        /*
         * Counters for how often these buffer-related ops are
         * called. Used to check for unbalanced ops.
         */
        u32             cnt_mem_alloc;
        u32             cnt_mem_put;
        u32             cnt_mem_get_dmabuf;
        u32             cnt_mem_get_userptr;
        u32             cnt_mem_put_userptr;
        u32             cnt_mem_prepare;
        u32             cnt_mem_finish;
        u32             cnt_mem_attach_dmabuf;
        u32             cnt_mem_detach_dmabuf;
        u32             cnt_mem_map_dmabuf;
        u32             cnt_mem_unmap_dmabuf;
        u32             cnt_mem_vaddr;
        u32             cnt_mem_cookie;
        u32             cnt_mem_num_users;
        u32             cnt_mem_mmap;

        u32             cnt_buf_init;
        u32             cnt_buf_prepare;
        u32             cnt_buf_finish;
        u32             cnt_buf_cleanup;
        u32             cnt_buf_queue;

        /* This counts the number of calls to vb2_buffer_done() */
        u32             cnt_buf_done;
#endif
};

コメント


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-02-09 (火) 10:48:13