提交 a4c1cbc7 编写于 作者: M Mauro Carvalho Chehab

V4L/DVB (12600): dvb-usb-remote: return KEY_RESERVED if there's free space for new keys

The input subsystem checks if get_keycode works for a scan code. Due to that,
we need to return a valid value when there's some space at the table that
can be used by a scancode.
Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
上级 b77f0a76
......@@ -22,6 +22,19 @@ static int dvb_usb_getkeycode(struct input_dev *dev,
*keycode = keymap[i].event;
return 0;
}
/*
* If is there extra space, returns KEY_RESERVED,
* otherwise, input core won't let dvb_usb_setkeycode
* to work
*/
for (i = 0; i < d->props.rc_key_map_size; i++)
if (keymap[i].event == KEY_RESERVED ||
keymap[i].event == KEY_UNKNOWN) {
*keycode = KEY_RESERVED;
return 0;
}
return -EINVAL;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册