linux/drivers/media/rc
Alexandre Lissy 24dec5dabf [media] imon: fix Knob event interpretation issues on ARM
Events for the iMon Knob pad where not correctly interpreted on ARM,
resulting in buggy mouse movements (cursor going straight out of the
screen), key pad only generating KEY_RIGHT and KEY_DOWN events.
A reproducer is:
int main(int argc, char ** argv)
{
        char rel_x = 0x00; printf("rel_x:%d @%s:%d\n", rel_x, __FILE__, __LINE__);
        rel_x = 0x0f; printf("rel_x:%d @%s:%d\n", rel_x, __FILE__, __LINE__);
        rel_x |= ~0x0f; printf("rel_x:%d @%s:%d\n", rel_x, __FILE__, __LINE__);
        return 0;
}
(running on x86 or amd64)
$ ./test
rel_x:0 @test.c:6
rel_x:15 @test.c:7
rel_x:-1 @test.c:8
(running on armv6)
rel_x:0 @test.c:6
rel_x:15 @test.c:7
rel_x:255 @test.c:8
Forcing the rel_x and rel_y variables as signed char fixes the issue.

Reference: http://www.arm.linux.org.uk/docs/faqs/signedchar.php

Signed-off-by: Alexandre Lissy <alexandrelissy@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2013-02-01 07:13:59 -02:00
..
keymaps [media] rc/keymaps: add RC keytable for MyGica X8507 2012-12-23 19:42:14 -02:00
Kconfig [media] ir-rx51: Adjust dependencies 2012-09-15 19:44:30 -03:00
Makefile [media] media: rc: Introduce RX51 IR transmitter driver 2012-08-13 16:53:45 -03:00
ati_remote.c [media] rc: Make probe cleanup goto labels more verbose 2012-12-21 18:26:08 -02:00
ene_ir.c Merge branch 'v4l_for_linus' into staging/for_v3.9 2013-01-24 18:49:18 -02:00
ene_ir.h
fintek-cir.c Merge branch 'v4l_for_linus' into staging/for_v3.9 2013-01-24 18:49:18 -02:00
fintek-cir.h [media] fintek-cir: add support for newer chip version 2012-02-14 16:53:53 -02:00
gpio-ir-recv.c Merge branch 'v4l_for_linus' into staging/for_v3.9 2013-01-24 18:49:18 -02:00
iguanair.c Drivers: media: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
imon.c [media] imon: fix Knob event interpretation issues on ARM 2013-02-01 07:13:59 -02:00
ir-jvc-decoder.c [media] rc-core: add separate defines for protocol bitmaps and numbers 2012-10-27 11:49:51 -02:00
ir-lirc-codec.c [media] rc-core: add separate defines for protocol bitmaps and numbers 2012-10-27 11:49:51 -02:00
ir-mce_kbd-decoder.c [media] rc-core: add separate defines for protocol bitmaps and numbers 2012-10-27 11:49:51 -02:00
ir-nec-decoder.c [media] rc-core: add separate defines for protocol bitmaps and numbers 2012-10-27 11:49:51 -02:00
ir-raw.c [media] media/rc: fix oops on unloading module rc-core 2012-12-27 17:45:40 -02:00
ir-rc5-decoder.c [media] rc-core: add separate defines for protocol bitmaps and numbers 2012-10-27 11:49:51 -02:00
ir-rc5-sz-decoder.c [media] rc-core: add separate defines for protocol bitmaps and numbers 2012-10-27 11:49:51 -02:00
ir-rc6-decoder.c [media] rc-core: add separate defines for protocol bitmaps and numbers 2012-10-27 11:49:51 -02:00
ir-rx51.c Drivers: media: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
ir-sanyo-decoder.c [media] rc-core: add separate defines for protocol bitmaps and numbers 2012-10-27 11:49:51 -02:00
ir-sony-decoder.c [media] rc-core: add separate defines for protocol bitmaps and numbers 2012-10-27 11:49:51 -02:00
ite-cir.c Merge branch 'v4l_for_linus' into staging/for_v3.9 2013-01-24 18:49:18 -02:00
ite-cir.h
lirc_dev.c
mceusb.c Drivers: media: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
nuvoton-cir.c Merge branch 'v4l_for_linus' into staging/for_v3.9 2013-01-24 18:49:18 -02:00
nuvoton-cir.h [media] nuvoton-cir: carrier detect support is broken - remove it 2012-10-27 18:10:07 -02:00
rc-core-priv.h [media] media/rc: fix oops on unloading module rc-core 2012-12-27 17:45:40 -02:00
rc-loopback.c [media] rc-core: add separate defines for protocol bitmaps and numbers 2012-10-27 11:49:51 -02:00
rc-main.c [media] rc: unlock on error in store_protocols() 2012-12-27 13:59:02 -02:00
redrat3.c Drivers: media: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
streamzap.c Drivers: media: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
ttusbir.c Drivers: media: remove __dev* attributes. 2013-01-03 15:57:02 -08:00
winbond-cir.c Merge branch 'v4l_for_linus' into staging/for_v3.9 2013-01-24 18:49:18 -02:00