0001
0002
0003
0004
0005
0006
0007
0008
0009
0010 #ifndef CX25821_VIDEO_H_
0011 #define CX25821_VIDEO_H_
0012
0013 #include <linux/init.h>
0014 #include <linux/list.h>
0015 #include <linux/module.h>
0016 #include <linux/moduleparam.h>
0017 #include <linux/kmod.h>
0018 #include <linux/kernel.h>
0019 #include <linux/slab.h>
0020 #include <linux/interrupt.h>
0021 #include <linux/delay.h>
0022 #include <linux/kthread.h>
0023 #include <asm/div64.h>
0024
0025 #include "cx25821.h"
0026 #include <media/v4l2-common.h>
0027 #include <media/v4l2-ioctl.h>
0028 #include <media/v4l2-event.h>
0029
0030 #define VIDEO_DEBUG 0
0031
0032 #define dprintk(level, fmt, arg...) \
0033 do { \
0034 if (VIDEO_DEBUG >= level) \
0035 printk(KERN_DEBUG "%s/0: " fmt, dev->name, ##arg); \
0036 } while (0)
0037
0038 #define FORMAT_FLAGS_PACKED 0x01
0039 extern void cx25821_video_wakeup(struct cx25821_dev *dev,
0040 struct cx25821_dmaqueue *q, u32 count);
0041
0042 extern int cx25821_start_video_dma(struct cx25821_dev *dev,
0043 struct cx25821_dmaqueue *q,
0044 struct cx25821_buffer *buf,
0045 const struct sram_channel *channel);
0046
0047 extern int cx25821_video_irq(struct cx25821_dev *dev, int chan_num, u32 status);
0048 extern void cx25821_video_unregister(struct cx25821_dev *dev, int chan_num);
0049 extern int cx25821_video_register(struct cx25821_dev *dev);
0050
0051 #endif