提交 7f19d027 编写于 作者: M Mike Isely 提交者: Mauro Carvalho Chehab

V4L/DVB (4595): Remove CONFIG_VIDEO_PVRUSB2_24XXX from pvrusb2 driver

Support for 24xxx devices was previously explicitly bracketed with
CONFIG_VIDEO_PVRUSB2_24XXX inside the code because we didn't trust the
stability of these changes.  We trust it now; so there's no reason to
leave this out of the driver anymore.
Signed-off-by: NMike Isely <isely@pobox.com>
Signed-off-by: NMauro Carvalho Chehab <mchehab@infradead.org>
上级 4d31256f
...@@ -168,9 +168,7 @@ struct pvr2_decoder_ctrl { ...@@ -168,9 +168,7 @@ struct pvr2_decoder_ctrl {
/* Known major hardware variants, keyed from device ID */ /* Known major hardware variants, keyed from device ID */
#define PVR2_HDW_TYPE_29XXX 0 #define PVR2_HDW_TYPE_29XXX 0
#ifdef CONFIG_VIDEO_PVRUSB2_24XXX
#define PVR2_HDW_TYPE_24XXX 1 #define PVR2_HDW_TYPE_24XXX 1
#endif
typedef int (*pvr2_i2c_func)(struct pvr2_hdw *,u8,u8 *,u16,u8 *, u16); typedef int (*pvr2_i2c_func)(struct pvr2_hdw *,u8,u8 *,u16,u8 *, u16);
#define PVR2_I2C_FUNC_CNT 128 #define PVR2_I2C_FUNC_CNT 128
......
...@@ -38,9 +38,7 @@ ...@@ -38,9 +38,7 @@
struct usb_device_id pvr2_device_table[] = { struct usb_device_id pvr2_device_table[] = {
[PVR2_HDW_TYPE_29XXX] = { USB_DEVICE(0x2040, 0x2900) }, [PVR2_HDW_TYPE_29XXX] = { USB_DEVICE(0x2040, 0x2900) },
#ifdef CONFIG_VIDEO_PVRUSB2_24XXX
[PVR2_HDW_TYPE_24XXX] = { USB_DEVICE(0x2040, 0x2400) }, [PVR2_HDW_TYPE_24XXX] = { USB_DEVICE(0x2040, 0x2400) },
#endif
{ } { }
}; };
...@@ -48,9 +46,7 @@ MODULE_DEVICE_TABLE(usb, pvr2_device_table); ...@@ -48,9 +46,7 @@ MODULE_DEVICE_TABLE(usb, pvr2_device_table);
static const char *pvr2_device_names[] = { static const char *pvr2_device_names[] = {
[PVR2_HDW_TYPE_29XXX] = "WinTV PVR USB2 Model Category 29xxxx", [PVR2_HDW_TYPE_29XXX] = "WinTV PVR USB2 Model Category 29xxxx",
#ifdef CONFIG_VIDEO_PVRUSB2_24XXX
[PVR2_HDW_TYPE_24XXX] = "WinTV PVR USB2 Model Category 24xxxx", [PVR2_HDW_TYPE_24XXX] = "WinTV PVR USB2 Model Category 24xxxx",
#endif
}; };
struct pvr2_string_table { struct pvr2_string_table {
...@@ -58,14 +54,12 @@ struct pvr2_string_table { ...@@ -58,14 +54,12 @@ struct pvr2_string_table {
unsigned int cnt; unsigned int cnt;
}; };
#ifdef CONFIG_VIDEO_PVRUSB2_24XXX
// Names of other client modules to request for 24xxx model hardware // Names of other client modules to request for 24xxx model hardware
static const char *pvr2_client_24xxx[] = { static const char *pvr2_client_24xxx[] = {
"cx25840", "cx25840",
"tuner", "tuner",
"wm8775", "wm8775",
}; };
#endif
// Names of other client modules to request for 29xxx model hardware // Names of other client modules to request for 29xxx model hardware
static const char *pvr2_client_29xxx[] = { static const char *pvr2_client_29xxx[] = {
...@@ -79,12 +73,10 @@ static struct pvr2_string_table pvr2_client_lists[] = { ...@@ -79,12 +73,10 @@ static struct pvr2_string_table pvr2_client_lists[] = {
pvr2_client_29xxx, pvr2_client_29xxx,
sizeof(pvr2_client_29xxx)/sizeof(pvr2_client_29xxx[0]), sizeof(pvr2_client_29xxx)/sizeof(pvr2_client_29xxx[0]),
}, },
#ifdef CONFIG_VIDEO_PVRUSB2_24XXX
[PVR2_HDW_TYPE_24XXX] = { [PVR2_HDW_TYPE_24XXX] = {
pvr2_client_24xxx, pvr2_client_24xxx,
sizeof(pvr2_client_24xxx)/sizeof(pvr2_client_24xxx[0]), sizeof(pvr2_client_24xxx)/sizeof(pvr2_client_24xxx[0]),
}, },
#endif
}; };
static struct pvr2_hdw *unit_pointers[PVR_NUM] = {[ 0 ... PVR_NUM-1 ] = NULL}; static struct pvr2_hdw *unit_pointers[PVR_NUM] = {[ 0 ... PVR_NUM-1 ] = NULL};
...@@ -363,7 +355,6 @@ static int ctrl_freq_set(struct pvr2_ctrl *cptr,int m,int v) ...@@ -363,7 +355,6 @@ static int ctrl_freq_set(struct pvr2_ctrl *cptr,int m,int v)
return 0; return 0;
} }
#ifdef CONFIG_VIDEO_PVRUSB2_24XXX
static int ctrl_hres_max_get(struct pvr2_ctrl *cptr,int *vp) static int ctrl_hres_max_get(struct pvr2_ctrl *cptr,int *vp)
{ {
/* If we're dealing with a 24xxx device, force the horizontal /* If we're dealing with a 24xxx device, force the horizontal
...@@ -385,7 +376,6 @@ static int ctrl_hres_min_get(struct pvr2_ctrl *cptr,int *vp) ...@@ -385,7 +376,6 @@ static int ctrl_hres_min_get(struct pvr2_ctrl *cptr,int *vp)
if (cptr->hdw->hdw_type == PVR2_HDW_TYPE_24XXX) *vp = 720; if (cptr->hdw->hdw_type == PVR2_HDW_TYPE_24XXX) *vp = 720;
return 0; return 0;
} }
#endif
static int ctrl_cx2341x_is_dirty(struct pvr2_ctrl *cptr) static int ctrl_cx2341x_is_dirty(struct pvr2_ctrl *cptr)
{ {
...@@ -745,12 +735,10 @@ static const struct pvr2_ctl_info control_defs[] = { ...@@ -745,12 +735,10 @@ static const struct pvr2_ctl_info control_defs[] = {
.default_value = 720, .default_value = 720,
DEFREF(res_hor), DEFREF(res_hor),
DEFINT(320,720), DEFINT(320,720),
#ifdef CONFIG_VIDEO_PVRUSB2_24XXX
/* Hook in check for clamp on horizontal resolution in /* Hook in check for clamp on horizontal resolution in
order to avoid unsolved problem involving cx25840. */ order to avoid unsolved problem involving cx25840. */
.get_max_value = ctrl_hres_max_get, .get_max_value = ctrl_hres_max_get,
.get_min_value = ctrl_hres_min_get, .get_min_value = ctrl_hres_min_get,
#endif
},{ },{
.desc = "Vertical capture resolution", .desc = "Vertical capture resolution",
.name = "resolution_ver", .name = "resolution_ver",
...@@ -966,22 +954,18 @@ static int pvr2_upload_firmware1(struct pvr2_hdw *hdw) ...@@ -966,22 +954,18 @@ static int pvr2_upload_firmware1(struct pvr2_hdw *hdw)
static const char *fw_files_29xxx[] = { static const char *fw_files_29xxx[] = {
"v4l-pvrusb2-29xxx-01.fw", "v4l-pvrusb2-29xxx-01.fw",
}; };
#ifdef CONFIG_VIDEO_PVRUSB2_24XXX
static const char *fw_files_24xxx[] = { static const char *fw_files_24xxx[] = {
"v4l-pvrusb2-24xxx-01.fw", "v4l-pvrusb2-24xxx-01.fw",
}; };
#endif
static const struct pvr2_string_table fw_file_defs[] = { static const struct pvr2_string_table fw_file_defs[] = {
[PVR2_HDW_TYPE_29XXX] = { [PVR2_HDW_TYPE_29XXX] = {
fw_files_29xxx, fw_files_29xxx,
sizeof(fw_files_29xxx)/sizeof(fw_files_29xxx[0]), sizeof(fw_files_29xxx)/sizeof(fw_files_29xxx[0]),
}, },
#ifdef CONFIG_VIDEO_PVRUSB2_24XXX
[PVR2_HDW_TYPE_24XXX] = { [PVR2_HDW_TYPE_24XXX] = {
fw_files_24xxx, fw_files_24xxx,
sizeof(fw_files_24xxx)/sizeof(fw_files_24xxx[0]), sizeof(fw_files_24xxx)/sizeof(fw_files_24xxx[0]),
}, },
#endif
}; };
hdw->fw1_state = FW1_STATE_FAILED; // default result hdw->fw1_state = FW1_STATE_FAILED; // default result
......
...@@ -26,10 +26,8 @@ ...@@ -26,10 +26,8 @@
#include "pvrusb2-audio.h" #include "pvrusb2-audio.h"
#include "pvrusb2-tuner.h" #include "pvrusb2-tuner.h"
#include "pvrusb2-video-v4l.h" #include "pvrusb2-video-v4l.h"
#ifdef CONFIG_VIDEO_PVRUSB2_24XXX
#include "pvrusb2-cx2584x-v4l.h" #include "pvrusb2-cx2584x-v4l.h"
#include "pvrusb2-wm8775.h" #include "pvrusb2-wm8775.h"
#endif
#define trace_i2c(...) pvr2_trace(PVR2_TRACE_I2C,__VA_ARGS__) #define trace_i2c(...) pvr2_trace(PVR2_TRACE_I2C,__VA_ARGS__)
...@@ -71,7 +69,6 @@ void pvr2_i2c_probe(struct pvr2_hdw *hdw,struct pvr2_i2c_client *cp) ...@@ -71,7 +69,6 @@ void pvr2_i2c_probe(struct pvr2_hdw *hdw,struct pvr2_i2c_client *cp)
return; return;
} }
} }
#ifdef CONFIG_VIDEO_PVRUSB2_24XXX
if (id == I2C_DRIVERID_CX25840) { if (id == I2C_DRIVERID_CX25840) {
if (pvr2_i2c_cx2584x_v4l_setup(hdw,cp)) { if (pvr2_i2c_cx2584x_v4l_setup(hdw,cp)) {
return; return;
...@@ -82,7 +79,6 @@ void pvr2_i2c_probe(struct pvr2_hdw *hdw,struct pvr2_i2c_client *cp) ...@@ -82,7 +79,6 @@ void pvr2_i2c_probe(struct pvr2_hdw *hdw,struct pvr2_i2c_client *cp)
return; return;
} }
} }
#endif
if (id == I2C_DRIVERID_SAA711X) { if (id == I2C_DRIVERID_SAA711X) {
if (pvr2_i2c_decoder_v4l_setup(hdw,cp)) { if (pvr2_i2c_decoder_v4l_setup(hdw,cp)) {
return; return;
......
...@@ -185,8 +185,6 @@ static int pvr2_i2c_basic_op(struct pvr2_hdw *hdw, ...@@ -185,8 +185,6 @@ static int pvr2_i2c_basic_op(struct pvr2_hdw *hdw,
} }
} }
#ifdef CONFIG_VIDEO_PVRUSB2_24XXX
/* This is a special entry point that is entered if an I2C operation is /* This is a special entry point that is entered if an I2C operation is
attempted to a wm8775 chip on model 24xxx hardware. Autodetect of this attempted to a wm8775 chip on model 24xxx hardware. Autodetect of this
part doesn't work, but we know it is really there. So let's look for part doesn't work, but we know it is really there. So let's look for
...@@ -289,8 +287,6 @@ static int i2c_hack_cx25840(struct pvr2_hdw *hdw, ...@@ -289,8 +287,6 @@ static int i2c_hack_cx25840(struct pvr2_hdw *hdw,
return -EIO; return -EIO;
} }
#endif /* CONFIG_VIDEO_PVRUSB2_24XXX */
/* This is a very, very limited I2C adapter implementation. We can only /* This is a very, very limited I2C adapter implementation. We can only
support what we actually know will work on the device... */ support what we actually know will work on the device... */
static int pvr2_i2c_xfer(struct i2c_adapter *i2c_adap, static int pvr2_i2c_xfer(struct i2c_adapter *i2c_adap,
...@@ -897,14 +893,12 @@ void pvr2_i2c_core_init(struct pvr2_hdw *hdw) ...@@ -897,14 +893,12 @@ void pvr2_i2c_core_init(struct pvr2_hdw *hdw)
hdw->i2c_func[idx] = pvr2_i2c_basic_op; hdw->i2c_func[idx] = pvr2_i2c_basic_op;
} }
#ifdef CONFIG_VIDEO_PVRUSB2_24XXX
// If however we're dealing with new hardware, insert some hacks in // If however we're dealing with new hardware, insert some hacks in
// the I2C transfer stack to let things work better. // the I2C transfer stack to let things work better.
if (hdw->hdw_type == PVR2_HDW_TYPE_24XXX) { if (hdw->hdw_type == PVR2_HDW_TYPE_24XXX) {
hdw->i2c_func[0x1b] = i2c_hack_wm8775; hdw->i2c_func[0x1b] = i2c_hack_wm8775;
hdw->i2c_func[0x44] = i2c_hack_cx25840; hdw->i2c_func[0x44] = i2c_hack_cx25840;
} }
#endif
// Configure the adapter and set up everything else related to it. // Configure the adapter and set up everything else related to it.
memcpy(&hdw->i2c_adap,&pvr2_i2c_adap_template,sizeof(hdw->i2c_adap)); memcpy(&hdw->i2c_adap,&pvr2_i2c_adap_template,sizeof(hdw->i2c_adap));
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册