Re: IR remote stopped working in kernels 4.5 and 4.6

From: Heiner Kallweit
Date: Mon Jul 04 2016 - 17:08:45 EST


Am 04.07.2016 um 22:36 schrieb James Bottomley:
> This looks to be a problem with the rc subsystem. The IR controller in
> question is part of a cx8800 atsc card. In the 4.4 kernel, where it
> works, this is what ir-keytable says:
>
> Found /sys/class/rc/rc0/ (/dev/input/event12) with:
> Driver cx88xx, table rc-hauppauge
> Supported protocols: other lirc rc-5 jvc sony nec sanyo mce-kbd rc-6 sharp xmp
> Enabled protocols: lirc nec
> Name: cx88 IR (pcHDTV HD3000 HDTV)
> bus: 1, vendor/product: 7063:3000, version: 0x0001
> Repeat delay = 500 ms, repeat period = 125 ms
>
> And in 4.6, where it doesn't work:
>
> Found /sys/class/rc/rc0/ (/dev/input/event12) with:
> Driver cx88xx, table rc-hauppauge
> Supported protocols: lirc
> Enabled protocols: lirc
> Name: cx88 IR (pcHDTV HD3000 HDTV)
> bus: 1, vendor/product: 7063:3000, version: 0x0001
> Repeat delay = 500 ms, repeat period = 125 ms
>
> The particular remote in question seems to require the nec protocol to
> work and the failure in 4.5 and 4.6 is having any supported protocols
> at all. I can get the remote to start working again by adding the nec
> protocol:
>
> echo nec > /sys/class/rc/rc0/protocols
>
> But it would be nice to have this happen by default rather than having
> to add yet another work around init script.
>
Meanwhile decoder modules are loaded on demand only. This can be done
automatically w/o the need for additional init scripts.

If /etc/rc_maps.cfg includes a keymap with type NEC then the nec decoder
module is loaded automatically.

My rc_maps.cfg looks like this (and causes the SONY decoder module to be
loaded automatically):

#driver table file
* * sony-rm-sx800

And the keymap:

# table sony-rm-sx800, type SONY
0x110030 KEY_PREVIOUS
0x110031 KEY_NEXT
0x110033 KEY_BACK
..
..

Heiner

> James
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-media" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>