b3074c0a3f
The attached patch rewrites much of the keytable code in drivers/media/IR/ir-keytable.c. The scancodes are now inserted into the array in sorted order which allows for a binary search on lookup. The code has also been shrunk by about 150 lines. In addition it fixes the following bugs: Any use of ir_seek_table() was racy. ir_dev->driver_name is leaked between ir_input_register() and ir_input_unregister(). ir_setkeycode() unconditionally does clear_bit() on dev->keybit when removing a mapping, but there might be another mapping with a different scancode and the same keycode. This version has been updated to incorporate patch feedback from Mauro Carvalho Chehab. [mchehab@redhat.com: Fix a conflict with RC keytable breakup patches and input changes] Signed-off-by: David Härdeman <david@hardeman.nu> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com> |
||
---|---|---|
.. | ||
davinci | ||
adv7343.h | ||
bt819.h | ||
cs53l32a.h | ||
cs5345.h | ||
cx2341x.h | ||
cx25840.h | ||
i2c-addr.h | ||
ir-common.h | ||
ir-core.h | ||
ir-kbd-i2c.h | ||
m52790.h | ||
msp3400.h | ||
mt9t112.h | ||
ov772x.h | ||
ovcamchip.h | ||
pwc-ioctl.h | ||
radio-si4713.h | ||
rc-map.h | ||
rds.h | ||
rj54n1cb0c.h | ||
saa6752hs.h | ||
saa7115.h | ||
saa7127.h | ||
saa7146_vv.h | ||
saa7146.h | ||
sh_mobile_ceu.h | ||
si4713.h | ||
soc_camera_platform.h | ||
soc_camera.h | ||
soc_mediabus.h | ||
timb_radio.h | ||
tuner-types.h | ||
tuner.h | ||
tvaudio.h | ||
tveeprom.h | ||
tvp514x.h | ||
tvp5150.h | ||
tvp7002.h | ||
tw9910.h | ||
upd64031a.h | ||
upd64083.h | ||
v4l2-chip-ident.h | ||
v4l2-common.h | ||
v4l2-dev.h | ||
v4l2-device.h | ||
v4l2-i2c-drv.h | ||
v4l2-int-device.h | ||
v4l2-ioctl.h | ||
v4l2-mediabus.h | ||
v4l2-subdev.h | ||
videobuf-core.h | ||
videobuf-dma-contig.h | ||
videobuf-dma-sg.h | ||
videobuf-dvb.h | ||
videobuf-vmalloc.h | ||
wm8775.h |