diff options
Diffstat (limited to 'drivers/media/video/zoran/zoran_device.h')
-rw-r--r-- | drivers/media/video/zoran/zoran_device.h | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/drivers/media/video/zoran/zoran_device.h b/drivers/media/video/zoran/zoran_device.h new file mode 100644 index 00000000000..07f2c23ff74 --- /dev/null +++ b/drivers/media/video/zoran/zoran_device.h | |||
@@ -0,0 +1,95 @@ | |||
1 | /* | ||
2 | * Zoran zr36057/zr36067 PCI controller driver, for the | ||
3 | * Pinnacle/Miro DC10/DC10+/DC30/DC30+, Iomega Buz, Linux | ||
4 | * Media Labs LML33/LML33R10. | ||
5 | * | ||
6 | * This part handles card-specific data and detection | ||
7 | * | ||
8 | * Copyright (C) 2000 Serguei Miridonov <mirsev@cicese.mx> | ||
9 | * | ||
10 | * Currently maintained by: | ||
11 | * Ronald Bultje <rbultje@ronald.bitfreak.net> | ||
12 | * Laurent Pinchart <laurent.pinchart@skynet.be> | ||
13 | * Mailinglist <mjpeg-users@lists.sf.net> | ||
14 | * | ||
15 | * This program is free software; you can redistribute it and/or modify | ||
16 | * it under the terms of the GNU General Public License as published by | ||
17 | * the Free Software Foundation; either version 2 of the License, or | ||
18 | * (at your option) any later version. | ||
19 | * | ||
20 | * This program is distributed in the hope that it will be useful, | ||
21 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
22 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
23 | * GNU General Public License for more details. | ||
24 | * | ||
25 | * You should have received a copy of the GNU General Public License | ||
26 | * along with this program; if not, write to the Free Software | ||
27 | * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||
28 | */ | ||
29 | |||
30 | #ifndef __ZORAN_DEVICE_H__ | ||
31 | #define __ZORAN_DEVICE_H__ | ||
32 | |||
33 | /* general purpose I/O */ | ||
34 | extern void GPIO(struct zoran *zr, | ||
35 | int bit, | ||
36 | unsigned int value); | ||
37 | |||
38 | /* codec (or actually: guest bus) access */ | ||
39 | extern int post_office_wait(struct zoran *zr); | ||
40 | extern int post_office_write(struct zoran *zr, | ||
41 | unsigned guest, | ||
42 | unsigned reg, | ||
43 | unsigned value); | ||
44 | extern int post_office_read(struct zoran *zr, | ||
45 | unsigned guest, | ||
46 | unsigned reg); | ||
47 | |||
48 | extern void detect_guest_activity(struct zoran *zr); | ||
49 | |||
50 | extern void jpeg_codec_sleep(struct zoran *zr, | ||
51 | int sleep); | ||
52 | extern int jpeg_codec_reset(struct zoran *zr); | ||
53 | |||
54 | /* zr360x7 access to raw capture */ | ||
55 | extern void zr36057_overlay(struct zoran *zr, | ||
56 | int on); | ||
57 | extern void write_overlay_mask(struct zoran_fh *fh, | ||
58 | struct v4l2_clip *vp, | ||
59 | int count); | ||
60 | extern void zr36057_set_memgrab(struct zoran *zr, | ||
61 | int mode); | ||
62 | extern int wait_grab_pending(struct zoran *zr); | ||
63 | |||
64 | /* interrupts */ | ||
65 | extern void print_interrupts(struct zoran *zr); | ||
66 | extern void clear_interrupt_counters(struct zoran *zr); | ||
67 | extern irqreturn_t zoran_irq(int irq, void *dev_id); | ||
68 | |||
69 | /* JPEG codec access */ | ||
70 | extern void jpeg_start(struct zoran *zr); | ||
71 | extern void zr36057_enable_jpg(struct zoran *zr, | ||
72 | enum zoran_codec_mode mode); | ||
73 | extern void zoran_feed_stat_com(struct zoran *zr); | ||
74 | |||
75 | /* general */ | ||
76 | extern void zoran_set_pci_master(struct zoran *zr, | ||
77 | int set_master); | ||
78 | extern void zoran_init_hardware(struct zoran *zr); | ||
79 | extern void zr36057_restart(struct zoran *zr); | ||
80 | |||
81 | extern const struct zoran_format zoran_formats[]; | ||
82 | |||
83 | extern int v4l_nbufs; | ||
84 | extern int v4l_bufsize; | ||
85 | extern int jpg_nbufs; | ||
86 | extern int jpg_bufsize; | ||
87 | extern int pass_through; | ||
88 | |||
89 | /* i2c */ | ||
90 | #define decoder_call(zr, o, f, args...) \ | ||
91 | v4l2_subdev_call(zr->decoder, o, f, ##args) | ||
92 | #define encoder_call(zr, o, f, args...) \ | ||
93 | v4l2_subdev_call(zr->encoder, o, f, ##args) | ||
94 | |||
95 | #endif /* __ZORAN_DEVICE_H__ */ | ||