TODO RC

From LinuxTVWiki
Revision as of 23:01, 8 October 2017 by Seanyoung (talk | contribs)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Minor bugs/improvement

  • struct ir_raw_event_ctrl member prev_ev. Investigate if this can be removed.
  • if driver depends on RC_CORE, change this to select RC_CORE, depends on INPUT? OR use a patch like https://patchwork.linuxtv.org/patch/40601/ and remove "depends on RC_CORE".
  • RC device RC_DRIVER_IR_RAW_TX leaks dev->raw on rc_unregister_device()?
  • Unplug iguanair with lirc chardev open causes kernel to go bang
  • CEC repeat code needs to move into rc-core
  • mceusb can do wakeups. Allow this to be configured

Larger work

  • Make it possible to load multiple keymaps with ir-keytable. It should detect if the new keymap conflicts with any already loaded keymap, and ensure the right protocols are selected.
    • Further improvement: make the kernel mapping rc_proto:scancode -> keycode, not just scancode. This should reduce the number of possible conflicts.
  • Compare lirc rc6 decoder. Can it handle multiple keypresses? What repeat/delay times does it use? See https://bugzilla.kernel.org/show_bug.cgi?id=48761
  • lirc_zilog rc core driver (Sean Young working on this)
  • Once lirc_zilog is removed, remove lirc kapi. Example is here: https://git.linuxtv.org/syoung/media_tree.git/log/?h=lirc_scancodes
  • Implement scancode reading and transmitting:
    • It's very hard to tell what protocol a remote is using
    • Kernel already has encoders, make sure they can be used for tx
    • CEC might want to reuse this interface
    • Patch series already exist for this
  • MS MCE Keyboard keymap needs multiple protocols. Keymap needed to select it. https://www.mail-archive.com/linux-media@vger.kernel.org/msg115706.html
  • ir-ctl should list available devices if run without any argument and allow to select device based on rc (based on /sys/class/rc/).
  • Rework ir raw decoders; register should only happen when protocol enabled (so we don't get an MCE input device). Also if decoders not enabled, #ifdef a load of stuff out.