summaryrefslogtreecommitdiffstats
path: root/drivers/media/video/pvrusb2/pvrusb2-devattr.h
diff options
context:
space:
mode:
authorMike Isely <isely@pobox.com>2007-11-26 06:07:26 +0100
committerMauro Carvalho Chehab <mchehab@infradead.org>2008-01-25 22:03:05 +0100
commitf5174af201f2e22c101bb02d06343e4bc5f056de (patch)
treea13e51ad387953b17f11360a5cb89d8abc0ea551 /drivers/media/video/pvrusb2/pvrusb2-devattr.h
parentV4L/DVB (6697): pvrusb2: Existence of Hauppauge ROM is a device-specific attr... (diff)
downloadlinux-f5174af201f2e22c101bb02d06343e4bc5f056de.tar.xz
linux-f5174af201f2e22c101bb02d06343e4bc5f056de.zip
V4L/DVB (6698): pvrusb2: Implement signal routing schemes
The exact routing of video and audio signals within a device is a device-specific attribute. Hauppauge devices do it one way; other types of device may route things differently. Unfortunately it is rather impractical to define chip-specific routing at the device attribute level, so instead what happens here is that "schemes" are defined. Each chip level interface implements its part of a given scheme and the scheme as a whole is made into a device specific attribute controlled via a table entry in pvrusb2-devattr.c. The only scheme defined here is for Hauppauge devices, but clearly this opens the door for other possibilities to follow. Signed-off-by: Mike Isely <isely@pobox.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media/video/pvrusb2/pvrusb2-devattr.h')
-rw-r--r--drivers/media/video/pvrusb2/pvrusb2-devattr.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/media/video/pvrusb2/pvrusb2-devattr.h b/drivers/media/video/pvrusb2/pvrusb2-devattr.h
index f63c3ddb8a72..05eb2c669ee8 100644
--- a/drivers/media/video/pvrusb2/pvrusb2-devattr.h
+++ b/drivers/media/video/pvrusb2/pvrusb2-devattr.h
@@ -35,6 +35,7 @@ struct pvr2_string_table {
unsigned int cnt;
};
+#define PVR2_ROUTING_SCHEME_HAUPPAUGE 0
/* This describes a particular hardware type (except for the USB device ID
which must live in a separate structure due to environmental
@@ -55,6 +56,14 @@ struct pvr2_device_desc {
was initialized from internal ROM. */
struct pvr2_string_table fx2_firmware;
+ /* Signal routing scheme used by device, contains one of
+ PVR2_ROUTING_SCHEME_XXX. Schemes have to be defined as we
+ encounter them. This is an arbitrary integer scheme id; its
+ meaning is contained entirely within the driver and is
+ interpreted by logic which must send commands to the chip-level
+ drivers (search for things which touch this field). */
+ unsigned int signal_routing_scheme;
+
/* V4L tuner type ID to use with this device (only used if the
driver could not discover the type any other way). */
int default_tuner_type;