aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb/firewire/firedtv.h
diff options
context:
space:
mode:
authorStefan Richter <stefanr@s5r6.in-berlin.de>2009-11-08 16:30:54 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-12-05 15:41:42 -0500
commit87918334792a4d8a73b0511466b77bd6aa055db3 (patch)
tree56f9e71c5d88cb0bf3a027a56588fb33c232f733 /drivers/media/dvb/firewire/firedtv.h
parent6e25abb522e055beeaf887f50a49cb370acc62b6 (diff)
V4L/DVB (13400): firedtv: port to new firewire core
The firedtv DVB driver will now work not only on top of the old ieee1394 driver stack but also on the new firewire driver stack. Alongside to the firedtv-1394.c backend for driver binding and I/O, the firedtv-fw.c backend is added. Depending on which of the two 1394 stacks is configured, one or the other or both backends will be built into the firedtv driver. This has been tested with a DVB-T and a DVB-C box on x86-64 and x86-32 together with a few different controllers (Agere FW323, a NEC chip, TI TSB82AA2, TSB43AB22/A, VIA VT6306). Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/dvb/firewire/firedtv.h')
-rw-r--r--drivers/media/dvb/firewire/firedtv.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/drivers/media/dvb/firewire/firedtv.h b/drivers/media/dvb/firewire/firedtv.h
index 1b99660a8397..f7b5c030bedf 100644
--- a/drivers/media/dvb/firewire/firedtv.h
+++ b/drivers/media/dvb/firewire/firedtv.h
@@ -16,6 +16,7 @@
16#include <linux/dvb/dmx.h> 16#include <linux/dvb/dmx.h>
17#include <linux/dvb/frontend.h> 17#include <linux/dvb/frontend.h>
18#include <linux/list.h> 18#include <linux/list.h>
19#include <linux/mod_devicetable.h>
19#include <linux/mutex.h> 20#include <linux/mutex.h>
20#include <linux/spinlock_types.h> 21#include <linux/spinlock_types.h>
21#include <linux/types.h> 22#include <linux/types.h>
@@ -119,10 +120,10 @@ struct firedtv {
119 120
120/* firedtv-1394.c */ 121/* firedtv-1394.c */
121#ifdef CONFIG_DVB_FIREDTV_IEEE1394 122#ifdef CONFIG_DVB_FIREDTV_IEEE1394
122int fdtv_1394_init(struct ieee1394_device_id id_table[]); 123int fdtv_1394_init(void);
123void fdtv_1394_exit(void); 124void fdtv_1394_exit(void);
124#else 125#else
125static inline int fdtv_1394_init(struct ieee1394_device_id it[]) { return 0; } 126static inline int fdtv_1394_init(void) { return 0; }
126static inline void fdtv_1394_exit(void) {} 127static inline void fdtv_1394_exit(void) {}
127#endif 128#endif
128 129
@@ -163,10 +164,20 @@ struct firedtv *fdtv_alloc(struct device *dev,
163 const struct firedtv_backend *backend, 164 const struct firedtv_backend *backend,
164 const char *name, size_t name_len); 165 const char *name, size_t name_len);
165extern const char *fdtv_model_names[]; 166extern const char *fdtv_model_names[];
167extern const struct ieee1394_device_id fdtv_id_table[];
166 168
167/* firedtv-fe.c */ 169/* firedtv-fe.c */
168void fdtv_frontend_init(struct firedtv *fdtv); 170void fdtv_frontend_init(struct firedtv *fdtv);
169 171
172/* firedtv-fw.c */
173#ifdef CONFIG_DVB_FIREDTV_FIREWIRE
174int fdtv_fw_init(void);
175void fdtv_fw_exit(void);
176#else
177static inline int fdtv_fw_init(void) { return 0; }
178static inline void fdtv_fw_exit(void) {}
179#endif
180
170/* firedtv-rc.c */ 181/* firedtv-rc.c */
171#ifdef CONFIG_DVB_FIREDTV_INPUT 182#ifdef CONFIG_DVB_FIREDTV_INPUT
172int fdtv_register_rc(struct firedtv *fdtv, struct device *dev); 183int fdtv_register_rc(struct firedtv *fdtv, struct device *dev);