aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/cx23885/cx23885.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2008-04-24 14:21:08 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-04-24 14:21:08 -0400
commitc328d54cd4ad120d76284e46dcca6c6cf996154a (patch)
tree104c023be66faa5fce6e0a56c0a6d13c62fd21e5 /drivers/media/video/cx23885/cx23885.h
parent346ad4b7fe392571f19314f153db9151dbc1d82b (diff)
parentb0166ab3a6ae6d7af8d9a21a7836154963c69a11 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb
* git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (452 commits) V4L/DVB (7731): tuner-xc2028: fix signal strength calculus V4L/DVB (7730): tuner-xc2028: Fix SCODE load for MTS firmwares V4L/DVB (7729): Fix VIDIOCGAP corruption in ivtv V4L/DVB (7728): tea5761: bugzilla #10462: tea5761 autodetection code were broken V4L/DVB (7726): cx23885: Enable cx23417 support on the HVR1800 V4L/DVB (7725): cx23885: Add generic cx23417 hardware encoder support V4L/DVB (7723): pvrusb2: Clean up input selection list generation in V4L interface V4L/DVB (7722): pvrusb2: Implement FM radio support for Gotview USB2.0 DVD 2 V4L/DVB (7721): pvrusb2: Restructure cx23416 firmware loading to have a common exit point V4L/DVB (7720): pvrusb2: Fix bad error code on cx23416 firmware load failure V4L/DVB (7719): pvrusb2: Implement input selection enforcement V4L/DVB (7718): pvrusb2-dvb: update Kbuild selections V4L/DVB (7717): pvrusb2-dvb: add DVB-T support for Hauppauge pvrusb2 model 73xxx V4L/DVB (7716): pvrusb2: clean up global functions V4L/DVB (7715): pvrusb2: Clean out all use of __FUNCTION__ V4L/DVB (7714): pvrusb2: Fix hang on module removal V4L/DVB (7713): pvrusb2: Implement cleaner DVB kernel thread shutdown V4L/DVB (7712): pvrusb2: Close connect/disconnect race V4L/DVB (7711): pvrusb2: Fix race on module unload V4L/DVB (7710): pvrusb2: Implement critical digital streaming quirk for onair devices ...
Diffstat (limited to 'drivers/media/video/cx23885/cx23885.h')
-rw-r--r--drivers/media/video/cx23885/cx23885.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/drivers/media/video/cx23885/cx23885.h b/drivers/media/video/cx23885/cx23885.h
index 7cb2179f2622..32af87f25e7b 100644
--- a/drivers/media/video/cx23885/cx23885.h
+++ b/drivers/media/video/cx23885/cx23885.h
@@ -32,6 +32,7 @@
32 32
33#include "btcx-risc.h" 33#include "btcx-risc.h"
34#include "cx23885-reg.h" 34#include "cx23885-reg.h"
35#include "media/cx2341x.h"
35 36
36#include <linux/version.h> 37#include <linux/version.h>
37#include <linux/mutex.h> 38#include <linux/mutex.h>
@@ -59,6 +60,9 @@
59#define CX23885_BOARD_DVICO_FUSIONHDTV_5_EXP 4 60#define CX23885_BOARD_DVICO_FUSIONHDTV_5_EXP 4
60#define CX23885_BOARD_HAUPPAUGE_HVR1500Q 5 61#define CX23885_BOARD_HAUPPAUGE_HVR1500Q 5
61#define CX23885_BOARD_HAUPPAUGE_HVR1500 6 62#define CX23885_BOARD_HAUPPAUGE_HVR1500 6
63#define CX23885_BOARD_HAUPPAUGE_HVR1200 7
64#define CX23885_BOARD_HAUPPAUGE_HVR1700 8
65#define CX23885_BOARD_HAUPPAUGE_HVR1400 9
62 66
63/* Currently unsupported by the driver: PAL/H, NTSC/Kr, SECAM B/G/H/LC */ 67/* Currently unsupported by the driver: PAL/H, NTSC/Kr, SECAM B/G/H/LC */
64#define CX23885_NORMS (\ 68#define CX23885_NORMS (\
@@ -154,6 +158,7 @@ typedef enum {
154 CX23885_MPEG_UNDEFINED = 0, 158 CX23885_MPEG_UNDEFINED = 0,
155 CX23885_MPEG_DVB, 159 CX23885_MPEG_DVB,
156 CX23885_ANALOG_VIDEO, 160 CX23885_ANALOG_VIDEO,
161 CX23885_MPEG_ENCODER,
157} port_t; 162} port_t;
158 163
159struct cx23885_board { 164struct cx23885_board {
@@ -252,6 +257,8 @@ struct cx23885_tsport {
252 u32 gen_ctrl_val; 257 u32 gen_ctrl_val;
253 u32 ts_clk_en_val; 258 u32 ts_clk_en_val;
254 u32 src_sel_val; 259 u32 src_sel_val;
260 u32 vld_misc_val;
261 u32 hw_sop_ctrl_val;
255}; 262};
256 263
257struct cx23885_dev { 264struct cx23885_dev {
@@ -312,6 +319,14 @@ struct cx23885_dev {
312 struct cx23885_dmaqueue vidq; 319 struct cx23885_dmaqueue vidq;
313 struct cx23885_dmaqueue vbiq; 320 struct cx23885_dmaqueue vbiq;
314 spinlock_t slock; 321 spinlock_t slock;
322
323 /* MPEG Encoder ONLY settings */
324 u32 cx23417_mailbox;
325 struct cx2341x_mpeg_params mpeg_params;
326 struct video_device *v4l_device;
327 atomic_t v4l_reader_count;
328 struct cx23885_tvnorm encodernorm;
329
315}; 330};
316 331
317extern struct list_head cx23885_devlist; 332extern struct list_head cx23885_devlist;
@@ -431,6 +446,18 @@ extern int cx23885_i2c_register(struct cx23885_i2c *bus);
431extern int cx23885_i2c_unregister(struct cx23885_i2c *bus); 446extern int cx23885_i2c_unregister(struct cx23885_i2c *bus);
432extern void cx23885_call_i2c_clients(struct cx23885_i2c *bus, unsigned int cmd, 447extern void cx23885_call_i2c_clients(struct cx23885_i2c *bus, unsigned int cmd,
433 void *arg); 448 void *arg);
449extern void cx23885_av_clk(struct cx23885_dev *dev, int enable);
450
451/* ----------------------------------------------------------- */
452/* cx23885-417.c */
453extern int cx23885_417_register(struct cx23885_dev *dev);
454extern void cx23885_417_unregister(struct cx23885_dev *dev);
455extern int cx23885_irq_417(struct cx23885_dev *dev, u32 status);
456extern void cx23885_417_check_encoder(struct cx23885_dev *dev);
457extern void cx23885_mc417_init(struct cx23885_dev *dev);
458extern int mc417_memory_read(struct cx23885_dev *dev, u32 address, u32 *value);
459extern int mc417_memory_write(struct cx23885_dev *dev, u32 address, u32 value);
460
434 461
435/* ----------------------------------------------------------- */ 462/* ----------------------------------------------------------- */
436/* tv norms */ 463/* tv norms */