1*77512baaSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 22cc45cf2SMagnus Damm /* 32cc45cf2SMagnus Damm * helper functions for physically contiguous capture buffers 42cc45cf2SMagnus Damm * 52cc45cf2SMagnus Damm * The functions support hardware lacking scatter gather support 62cc45cf2SMagnus Damm * (i.e. the buffers must be linear in physical memory) 72cc45cf2SMagnus Damm * 82cc45cf2SMagnus Damm * Copyright (c) 2008 Magnus Damm 92cc45cf2SMagnus Damm */ 102cc45cf2SMagnus Damm #ifndef _VIDEOBUF_DMA_CONTIG_H 112cc45cf2SMagnus Damm #define _VIDEOBUF_DMA_CONTIG_H 122cc45cf2SMagnus Damm 132cc45cf2SMagnus Damm #include <linux/dma-mapping.h> 142cc45cf2SMagnus Damm #include <media/videobuf-core.h> 152cc45cf2SMagnus Damm 162cc45cf2SMagnus Damm void videobuf_queue_dma_contig_init(struct videobuf_queue *q, 1738a54f35SJonathan Corbet const struct videobuf_queue_ops *ops, 182cc45cf2SMagnus Damm struct device *dev, 192cc45cf2SMagnus Damm spinlock_t *irqlock, 202cc45cf2SMagnus Damm enum v4l2_buf_type type, 212cc45cf2SMagnus Damm enum v4l2_field field, 222cc45cf2SMagnus Damm unsigned int msize, 2308bff03eSHans Verkuil void *priv, 2408bff03eSHans Verkuil struct mutex *ext_lock); 252cc45cf2SMagnus Damm 262cc45cf2SMagnus Damm dma_addr_t videobuf_to_dma_contig(struct videobuf_buffer *buf); 272cc45cf2SMagnus Damm void videobuf_dma_contig_free(struct videobuf_queue *q, 282cc45cf2SMagnus Damm struct videobuf_buffer *buf); 292cc45cf2SMagnus Damm 302cc45cf2SMagnus Damm #endif /* _VIDEOBUF_DMA_CONTIG_H */ 31