Skip to content

Commit

Permalink
V4L/DVB (7296): pvrusb2: Define device attributes for all input modes
Browse files Browse the repository at this point in the history
Different devices support different input types.  Up until now we've
really been assuming that everyone has an analog tuner, an FM radio,
composite, and s-video inputs.  But as we add other devices, these
assumptions are no longer true.  The way to deal with this is to
define the available inputs as additional device attributes, so that
the driver can adjust its internal behavior accordingly.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
  • Loading branch information
Mike Isely authored and Mauro Carvalho Chehab committed Apr 24, 2008
1 parent d068c6e commit 1aaac60
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 6 deletions.
18 changes: 18 additions & 0 deletions drivers/media/video/pvrusb2/pvrusb2-devattr.c
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,10 @@ static const struct pvr2_device_desc pvr2_device_29xxx = {
.fx2_firmware.lst = pvr2_fw1_names_29xxx,
.fx2_firmware.cnt = ARRAY_SIZE(pvr2_fw1_names_29xxx),
.flag_has_hauppauge_rom = !0,
.flag_has_analogtuner = !0,
.flag_has_fmradio = !0,
.flag_has_composite = !0,
.flag_has_svideo = !0,
.signal_routing_scheme = PVR2_ROUTING_SCHEME_HAUPPAUGE,
};

Expand Down Expand Up @@ -86,7 +89,10 @@ static const struct pvr2_device_desc pvr2_device_24xxx = {
.flag_has_wm8775 = !0,
.flag_has_hauppauge_rom = !0,
.flag_has_hauppauge_custom_ir = !0,
.flag_has_analogtuner = !0,
.flag_has_fmradio = !0,
.flag_has_composite = !0,
.flag_has_svideo = !0,
.signal_routing_scheme = PVR2_ROUTING_SCHEME_HAUPPAUGE,
};

Expand All @@ -107,6 +113,9 @@ static const struct pvr2_device_desc pvr2_device_gotview_2 = {
.client_modules.cnt = ARRAY_SIZE(pvr2_client_gotview_2),
.flag_has_cx25840 = !0,
.default_tuner_type = TUNER_PHILIPS_FM1216ME_MK3,
.flag_has_analogtuner = !0,
.flag_has_composite = !0,
.flag_has_svideo = !0,
.signal_routing_scheme = PVR2_ROUTING_SCHEME_GOTVIEW,
};

Expand All @@ -129,6 +138,9 @@ static const struct pvr2_device_desc pvr2_device_onair_creator = {
.client_modules.cnt = ARRAY_SIZE(pvr2_client_onair_creator),
.default_tuner_type = TUNER_LG_TDVS_H06XF,
.flag_has_digitaltuner = !0,
.flag_has_analogtuner = !0,
.flag_has_composite = !0,
.flag_has_svideo = !0,
.signal_routing_scheme = PVR2_ROUTING_SCHEME_HAUPPAUGE,
};
#endif
Expand All @@ -152,6 +164,9 @@ static const struct pvr2_device_desc pvr2_device_onair_usb2 = {
.client_modules.cnt = ARRAY_SIZE(pvr2_client_onair_usb2),
.default_tuner_type = TUNER_PHILIPS_ATSC,
.flag_has_digitaltuner = !0,
.flag_has_analogtuner = !0,
.flag_has_composite = !0,
.flag_has_svideo = !0,
.signal_routing_scheme = PVR2_ROUTING_SCHEME_HAUPPAUGE,
};
#endif
Expand Down Expand Up @@ -215,6 +230,9 @@ static const struct pvr2_device_desc pvr2_device_75xxx = {
.flag_has_cx25840 = !0,
.flag_has_hauppauge_rom = !0,
.flag_has_digitaltuner = !0,
.flag_has_analogtuner = !0,
.flag_has_composite = !0,
.flag_has_svideo = !0,
.signal_routing_scheme = PVR2_ROUTING_SCHEME_HAUPPAUGE,
.default_std_mask = V4L2_STD_NTSC_M,
};
Expand Down
12 changes: 6 additions & 6 deletions drivers/media/video/pvrusb2/pvrusb2-devattr.h
Original file line number Diff line number Diff line change
Expand Up @@ -103,12 +103,12 @@ struct pvr2_device_desc {
commands. */
char flag_has_hauppauge_custom_ir;

/* Device has FM radio capability. */
char flag_has_fmradio;

/* Device has a digital tuner; if this is set then we enable extra
functionality to switch between analog and digital modes. */
char flag_has_digitaltuner;
/* These bits define which kinds of sources the device can handle. */
char flag_has_fmradio; /* Has FM radio receiver */
char flag_has_analogtuner; /* Has analog tuner */
char flag_has_digitaltuner; /* Has digital tuner */
char flag_has_composite; /* Has composite input */
char flag_has_svideo; /* Has s-video input */
};

extern struct usb_device_id pvr2_device_table[];
Expand Down

0 comments on commit 1aaac60

Please sign in to comment.