diff options
author | Mauro Carvalho Chehab <mchehab@redhat.com> | 2009-09-15 13:56:01 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2009-09-15 13:56:01 -0300 |
commit | 136a9b83fb4cb819c2f27cbb5948d26cec0e7934 (patch) | |
tree | 397919f977ae7937aa60a5001f62f0ba3faef2db /linux/drivers/media/common/ir-functions.c | |
parent | fdafaa4f7e2ea516dbd7791f362f05273aaaa6cc (diff) | |
parent | c5d1ee111d9e00f9ce75e48e5e3806fdcd681a83 (diff) | |
download | mediapointer-dvb-s2-136a9b83fb4cb819c2f27cbb5948d26cec0e7934.tar.gz mediapointer-dvb-s2-136a9b83fb4cb819c2f27cbb5948d26cec0e7934.tar.bz2 |
merge: http://kernellabs.com/hg/~mkrufky/tda18271-merge
From: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'linux/drivers/media/common/ir-functions.c')
-rw-r--r-- | linux/drivers/media/common/ir-functions.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/linux/drivers/media/common/ir-functions.c b/linux/drivers/media/common/ir-functions.c index ddbd4be99..38e1ee13a 100644 --- a/linux/drivers/media/common/ir-functions.c +++ b/linux/drivers/media/common/ir-functions.c @@ -59,13 +59,24 @@ static void ir_input_key_event(struct input_dev *dev, struct ir_input_state *ir) /* -------------------------------------------------------------------------- */ void ir_input_init(struct input_dev *dev, struct ir_input_state *ir, - int ir_type, IR_KEYTAB_TYPE *ir_codes) + int ir_type, struct ir_scancode_table *ir_codes) { int i; ir->ir_type = ir_type; + + memset(ir->ir_codes, sizeof(ir->ir_codes), 0); + + /* + * FIXME: This is a temporary workaround to use the new IR tables + * with the old approach. Later patches will replace this to a + * proper method + */ + if (ir_codes) - memcpy(ir->ir_codes, ir_codes, sizeof(ir->ir_codes)); + for (i = 0; i < ir_codes->size; i++) + if (ir_codes->scan[i].scancode < IR_KEYTAB_SIZE) + ir->ir_codes[ir_codes->scan[i].scancode] = ir_codes->scan[i].keycode; dev->keycode = ir->ir_codes; dev->keycodesize = sizeof(IR_KEYTAB_TYPE); |