Subversion Repositories shark

Compare Revisions

Ignore whitespace Rev 458 → Rev 459

/shark/trunk/drivers/linuxc26/include/media/saa7146_vv.h
2,10 → 2,9
#define __SAA7146_VV__
 
#include <linux/videodev2.h>
#include <drivers/saa7146.h>
#include <drivers/video-buf.h>
 
#include <media/saa7146.h>
#include <media/video-buf.h>
 
#define MAX_SAA7146_CAPTURE_BUFFERS 32 /* arbitrary */
#define BUFFER_TIMEOUT (HZ/2) /* 0.5 seconds */
 
26,12 → 25,15
u32 num_line_byte;
};
 
#define FORMAT_BYTE_SWAP 0x1
#define FORMAT_IS_PLANAR 0x2
 
struct saa7146_format {
char *name;
int pixelformat;
u32 pixelformat;
u32 trans;
u8 depth;
int swap;
u8 flags;
};
 
struct saa7146_standard
97,6 → 99,8
struct videobuf_queue vbi_q;
struct v4l2_vbi_format vbi_fmt;
struct timer_list vbi_read_timeout;
 
unsigned int resources; /* resource management for device open */
};
 
struct saa7146_vv
121,7 → 125,7
struct saa7146_dmaqueue video_q;
struct saa7146_fh *streaming;
enum v4l2_field last_field;
 
/* common: fixme? shouldn't this be in saa7146_fh?
(this leads to a more complicated question: shall the driver
store the different settings (for example S_INPUT) for every open
136,6 → 140,8
int current_hps_sync;
 
struct saa7146_dma d_clipping; /* pointer to clipping memory */
 
unsigned int resources; /* resource management for device */
};
 
#define SAA7146_EXCLUSIVE 0x1
149,7 → 155,6
};
 
/* flags */
#define SAA7146_EXT_SWAP_ODD_EVEN 0x1 /* needs odd/even fields swapped */
#define SAA7146_USE_PORT_B_FOR_VBI 0x2 /* use input port b for vbi hardware bug workaround */
 
struct saa7146_ext_vv
171,12 → 176,10
 
struct saa7146_use_ops {
void (*init)(struct saa7146_dev *, struct saa7146_vv *);
void(*open)(struct saa7146_dev *, struct saa7146_fh *);
void (*release)(struct saa7146_dev *, struct saa7146_fh *,struct file *);
int(*open)(struct saa7146_dev *, struct file *);
void (*release)(struct saa7146_dev *, struct file *);
void (*irq_done)(struct saa7146_dev *, unsigned long status);
ssize_t (*read)(struct file *, char *, size_t, loff_t *);
int (*capture_begin)(struct saa7146_fh *);
int (*capture_end)(struct saa7146_fh *);
};
 
/* from saa7146_fops.c */
191,9 → 194,10
int saa7146_vv_init(struct saa7146_dev* dev, struct saa7146_ext_vv *ext_vv);
int saa7146_vv_release(struct saa7146_dev* dev);
 
/* from saa7146_hlp.c */
int saa7146_enable_overlay(struct saa7146_fh *fh);
void saa7146_disable_overlay(struct saa7146_fh *fh);
 
/* from saa7146_hlp.c */
void saa7146_set_overlay(struct saa7146_dev *dev, struct saa7146_fh *fh, int v);
void saa7146_set_capture(struct saa7146_dev *dev, struct saa7146_buf *buf, struct saa7146_buf *next);
void saa7146_write_out_dma(struct saa7146_dev* dev, int which, struct saa7146_video_dma* vdma) ;
void saa7146_set_hps_source_and_sync(struct saa7146_dev *saa, int source, int sync);
207,6 → 211,16
/* from saa7146_vbi.c */
extern struct saa7146_use_ops saa7146_vbi_uops;
 
/* resource management functions */
int saa7146_res_get(struct saa7146_fh *fh, unsigned int bit);
int saa7146_res_check(struct saa7146_fh *fh, unsigned int bit);
int saa7146_res_locked(struct saa7146_dev *dev, unsigned int bit);
void saa7146_res_free(struct saa7146_fh *fh, unsigned int bits);
 
#define RESOURCE_DMA1_HPS 0x1
#define RESOURCE_DMA2_CLP 0x2
#define RESOURCE_DMA3_BRS 0x4
 
/* saa7146 source inputs */
#define SAA7146_HPS_SOURCE_PORT_A 0x00
#define SAA7146_HPS_SOURCE_PORT_B 0x01