summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/cx18
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2009-09-07 01:46:36 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-09-07 01:46:36 -0300
commit025122531cb66f05517e9d1f98e45df3e993fb76 (patch)
treebd099628ac4a5b7f086f80443974dbddac91bfc6 /linux/drivers/media/video/cx18
parent0ceb8b67995dcbe0d5cbd99dddd64fad77d5181d (diff)
parentf74e25d0120dfd079832a3224fa46dec4105b3ad (diff)
downloadmediapointer-dvb-s2-025122531cb66f05517e9d1f98e45df3e993fb76.tar.gz
mediapointer-dvb-s2-025122531cb66f05517e9d1f98e45df3e993fb76.tar.bz2
merge: http://bitbucket.org/brijohn/v4l-dvb
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'linux/drivers/media/video/cx18')
-rw-r--r--linux/drivers/media/video/cx18/cx18-i2c.c23
1 files changed, 14 insertions, 9 deletions
diff --git a/linux/drivers/media/video/cx18/cx18-i2c.c b/linux/drivers/media/video/cx18/cx18-i2c.c
index fd789fad1..779ac7cbf 100644
--- a/linux/drivers/media/video/cx18/cx18-i2c.c
+++ b/linux/drivers/media/video/cx18/cx18-i2c.c
@@ -99,12 +99,18 @@ static const char * const hw_devicenames[] = {
"ir_rx_z8f0811_haup",
};
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 30)
+static const struct IR_i2c_init_data z8f0811_ir_init_data = {
+ .ir_codes = &ir_codes_hauppauge_new_table,
+ .internal_get_key_func = IR_KBD_GET_KEY_HAUP_XVR,
+ .type = IR_TYPE_RC5,
+ .name = "CX23418 Z8F0811 Hauppauge",
+};
+
static int cx18_i2c_new_ir(struct i2c_adapter *adap, u32 hw, const char *type,
u8 addr)
{
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 30)
struct i2c_board_info info;
- struct IR_i2c_init_data ir_init_data;
unsigned short addr_list[2] = { addr, I2C_CLIENT_END };
memset(&info, 0, sizeof(struct i2c_board_info));
@@ -113,22 +119,21 @@ static int cx18_i2c_new_ir(struct i2c_adapter *adap, u32 hw, const char *type,
/* Our default information for ir-kbd-i2c.c to use */
switch (hw) {
case CX18_HW_Z8F0811_IR_RX_HAUP:
- memset(&ir_init_data, 0, sizeof(struct IR_i2c_init_data));
- ir_init_data.ir_codes = &ir_codes_hauppauge_new_table;
- ir_init_data.internal_get_key_func = IR_KBD_GET_KEY_HAUP_XVR;
- ir_init_data.type = IR_TYPE_RC5;
- ir_init_data.name = "CX23418 Z8F0811 Hauppauge";
- info.platform_data = &ir_init_data;
+ info.platform_data = &z8f0811_ir_init_data;
break;
default:
break;
}
return i2c_new_probed_device(adap, &info, addr_list) == NULL ? -1 : 0;
+}
#else
+static int cx18_i2c_new_ir(struct i2c_adapter *adap, u32 hw, const char *type,
+ u8 addr)
+{
return -1;
-#endif
}
+#endif
int cx18_i2c_register(struct cx18 *cx, unsigned idx)
{