Skip to content

lirc scancode interface, and more

Sean Young linux-media lkml 3 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v3 Latest26 patches 11 repliesIn review
  2. v225 patches 10 repliesSuperseded
  3. v120 patches 0 repliesSuperseded

Changes in v3 from the cover letter

- Review comments from Hans Verkuil
- Documented and fixed rc_validate_scancode()
- Fix a bug in kfifo on arm 32-bit
- this inferface won't be used for cec remote control passthrough

Patches in v3 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/26media: lirc: implement scancode sendingdrivers/media/rc/ir-lirc-codec.c drivers/media/rc/rc-core-priv.h include/media/rc-map.h +1 more+156 -810 replies
2/26media: lirc: use the correct carrier for scancode transmitdrivers/media/rc/ir-jvc-decoder.c drivers/media/rc/ir-lirc-codec.c drivers/media/rc/ir-mce_kbd-decoder.c +9 more+47 -00 replies
3/26media: rc: auto load encoder if necessarydrivers/media/rc/rc-core-priv.h drivers/media/rc/rc-ir-raw.c drivers/media/rc/rc-main.c+4 -10 replies
4/26media: lirc_zilog: remove receiverdrivers/staging/media/lirc/lirc_zilog.c+76 -8258 replies
5/26media: lirc_zilog: fix variable types and other uglinessdrivers/staging/media/lirc/lirc_zilog.c+55 -1070 replies
6/26media: lirc_zilog: port to rc-core using scancode tx interfacedrivers/media/rc/ir-lirc-codec.c drivers/staging/media/lirc/lirc_zilog.c include/media/rc-core.h+191 -2870 replies
7/26media: promote lirc_zilog out of stagingdrivers/media/rc/Kconfig drivers/media/rc/Makefile drivers/media/rc/zilog_ir.c +5 more+13 -670 replies
8/26media: lirc: remove LIRCCODE and LIRC_GET_LENGTHDocumentation/media/lirc.h.rst.exceptions Documentation/media/uapi/rc/lirc-dev-intro.rst Documentation/media/uapi/rc/lirc-func.rst +7 more+9 -870 replies
9/26media: lirc: lirc interface should not be a raw decoderdrivers/media/rc/Kconfig drivers/media/rc/Makefile drivers/media/rc/ir-lirc-codec.c +7 more+145 -2420 replies
10/26media: lirc: validate scancode for transmitdrivers/media/rc/ir-lirc-codec.c drivers/media/rc/rc-core-priv.h drivers/media/rc/rc-main.c+44 -200 replies
11/26media: rc: document and fix rc_validate_scancode()drivers/media/rc/rc-main.c+16 -20 replies
12/26media: lirc: merge lirc_dev_fop_ioctl and ir_lirc_ioctldrivers/media/rc/ir-lirc-codec.c drivers/media/rc/lirc_dev.c include/media/lirc_dev.h+53 -980 replies
13/26media: lirc: use kfifo rather than lirc_buffer for raw IRdrivers/media/rc/ir-lirc-codec.c drivers/media/rc/lirc_dev.c include/media/lirc_dev.h +1 more+85 -3060 replies
14/26media: lirc: move lirc_dev->attached to rc_dev->registereddrivers/media/rc/ir-lirc-codec.c drivers/media/rc/lirc_dev.c drivers/media/rc/rc-main.c +2 more+22 -110 replies
15/26media: lirc: do not call rc_close() on unregistered devicesdrivers/media/rc/rc-main.c+1 -10 replies
16/26media: lirc: create rc-core open and close lirc functionsdrivers/media/rc/ir-lirc-codec.c drivers/media/rc/lirc_dev.c include/media/lirc_dev.h +1 more+62 -780 replies
17/26media: lirc: remove name from lirc_devDocumentation/media/uapi/rc/lirc-dev-intro.rst drivers/media/rc/ir-lirc-codec.c drivers/media/rc/lirc_dev.c +1 more+4 -110 replies
18/26media: lirc: remove last remnants of lirc kapiDocumentation/media/kapi/rc-core.rst drivers/media/rc/ir-lirc-codec.c drivers/media/rc/lirc_dev.c +4 more+63 -1960 replies
19/26media: lirc: implement reading scancodedrivers/media/rc/ir-lirc-codec.c drivers/media/rc/ir-mce_kbd-decoder.c drivers/media/rc/lirc_dev.c +3 more+120 -150 replies
20/26media: rc: ensure lirc device receives nec repeatsdrivers/media/rc/rc-main.c+17 -100 replies
21/26media: lirc: document LIRC_MODE_SCANCODEDocumentation/media/lirc.h.rst.exceptions Documentation/media/uapi/rc/lirc-dev-intro.rst Documentation/media/uapi/rc/lirc-get-features.rst +4 more+118 -150 replies
22/26media: lirc: introduce LIRC_SET_POLL_MODESDocumentation/media/uapi/rc/lirc-func.rst Documentation/media/uapi/rc/lirc-set-poll-modes.rst drivers/media/rc/ir-lirc-codec.c +3 more+81 -40 replies
23/26media: lirc: scancode rc devices should have a lirc device toodrivers/media/rc/ir-lirc-codec.c drivers/media/rc/lirc_dev.c drivers/media/rc/rc-main.c+36 -130 replies
24/26media: MAINTAINERS: remove lirc staging areaMAINTAINERS+0 -60 replies
25/26media: MAINTAINERS: add entry for zilog_irMAINTAINERS+6 -00 replies
26/26kfifo: DECLARE_KIFO_PTR(fifo, u64) does not work on arm 32 bitinclude/linux/kfifo.h+2 -10 replies
26/26kfifo: DECLARE_KIFO_PTR(fifo, u64) does not work on arm 32 bitinclude/linux/kfifo.h+2 -13 replies

Reviews trailers per patch

2 of 27 patches have a Reviewed-by or Acked-by.

PatchStefani Seibold
1/26
2/26
3/26
4/26
5/26
6/26
7/26
8/26
9/26
10/26
11/26
12/26
13/26
14/26
15/26
16/26
17/26
18/26
19/26
20/26
21/26
22/26
23/26
24/26
25/26
26/26A-b
26/26A-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v3 thread

Cover letter [PATCH v3 00/26] lirc scancode interface, and more

Introduce lirc scancode mode, use that to port lirc_zilog to rc-core using that interface, and then remove the lirc kernel api.

In summary:
- This removes the lirc staging directory.
- lirc IR TX can use in-kernel encoders for scancode encoding
- lirc_zilog uses the same interface
- lirc kapi (not uapi!) is gone
- The reading lirc scancode gives more information (e.g. protocol, toggle, repeat). So you can determine what protocol variant a remotes uses
- Line count is actually down and code cleaner (imo)

v2:
- Add MAINTAINERS entries
- Fixes for nec repeat
- Validate scancode for tx
- Minor bugfixes

v3:
- Review comments from Hans Verkuil
- Documented and fixed rc_validate_scancode()
- Fix a bug in kfifo on arm 32-bit
- this inferface won't be used for cec remote control passthrough

Sean Young (26):
media: lirc: implement scancode sending
media: lirc: use the correct carrier for scancode transmit
media: rc: auto load encoder if necessary
media: lirc_zilog: remove receiver
media: lirc_zilog: fix variable types and other ugliness
media: lirc_zilog: port to rc-core using scancode tx interface
media: promote lirc_zilog out of staging
media: lirc: remove LIRCCODE and LIRC_GET_LENGTH
media: lirc: lirc interface should not be a raw decoder
media: lirc: validate scancode for transmit
media: rc: document and fix rc_validate_scancode()
media: lirc: merge lirc_dev_fop_ioctl and ir_lirc_ioctl
media: lirc: use kfifo rather than lirc_buffer for raw IR
media: lirc: move lirc_dev->attached to rc_dev->registered
media: lirc: do not call rc_close() on unregistered devices
media: lirc: create rc-core open and close lirc functions
media: lirc: remove name from lirc_dev
media: lirc: remove last remnants of lirc kapi
media: lirc: implement reading scancode
media: rc: ensure lirc device receives nec repeats
media: lirc: document LIRC_MODE_SCANCODE
media: lirc: introduce LIRC_SET_POLL_MODES
media: lirc: scancode rc devices should have a lirc device too
media: MAINTAINERS: remove lirc staging area
media: MAINTAINERS: add entry for zilog_ir
kfifo: DECLARE_KIFO_PTR(fifo, u64) does not work on arm 32 bit

 Documentation/media/kapi/rc-core.rst               |    5 -
 Documentation/media/lirc.h.rst.exceptions          |   31 +
 Documentation/media/uapi/rc/lirc-dev-intro.rst     |   68 +-
 Documentation/media/uapi/rc/lirc-func.rst          |    2 +-
 Documentation/media/uapi/rc/lirc-get-features.rst  |   17 +-
 Documentation/media/uapi/rc/lirc-get-length.rst    |   44 -
 Documentation/media/uapi/rc/lirc-get-rec-mode.rst  |    5 +-
 Documentation/media/uapi/rc/lirc-get-send-mode.rst |    2 +-
 Documentation/media/uapi/rc/lirc-read.rst          |   15 +-
 .../media/uapi/rc/lirc-set-poll-modes.rst          |   52 +
 Documentation/media/uapi/rc/lirc-write.rst         |   19 +-
 MAINTAINERS                                        |   12 +-
 drivers/media/rc/Kconfig                           |   41 +-
 drivers/media/rc/Makefile                          |    6 +-
 drivers/media/rc/ir-jvc-decoder.c                  |    1 +
 drivers/media/rc/ir-lirc-codec.c                   |  566 ++++---
 drivers/media/rc/ir-mce_kbd-decoder.c              |   12 +-
 drivers/media/rc/ir-nec-decoder.c                  |    1 +
 drivers/media/rc/ir-rc5-decoder.c                  |    1 +
 drivers/media/rc/ir-rc6-decoder.c                  |    1 +
 drivers/media/rc/ir-sanyo-decoder.c                |    1 +
 drivers/media/rc/ir-sharp-decoder.c                |    1 +
 drivers/media/rc/ir-sony-decoder.c                 |    1 +
 drivers/media/rc/lirc_dev.c                        |  489 +-----
 drivers/media/rc/rc-core-priv.h                    |   54 +-
 drivers/media/rc/rc-ir-raw.c                       |   56 +-
 drivers/media/rc/rc-main.c                         |  166 +-
 drivers/media/rc/zilog_ir.c                        |  742 +++++++++
 drivers/staging/media/Kconfig                      |    3 -
 drivers/staging/media/Makefile                     |    1 -
 drivers/staging/media/lirc/Kconfig                 |   21 -
 drivers/staging/media/lirc/Makefile                |    6 -
 drivers/staging/media/lirc/TODO                    |   36 -
 drivers/staging/media/lirc/lirc_zilog.c            | 1653 --------------------
 include/linux/kfifo.h                              |    3 +-
 include/media/lirc_dev.h                           |  192 ---
 include/media/rc-core.h                            |   55 +-
 include/media/rc-map.h                             |   54 +-
 include/uapi/linux/lirc.h                          |   91 ++
 39 files changed, 1734 insertions(+), 2792 deletions(-)
 delete mode 100644 Documentation/media/uapi/rc/lirc-get-length.rst
 create mode 100644 Documentation/media/uapi/rc/lirc-set-poll-modes.rst
 create mode 100644 drivers/media/rc/zilog_ir.c
 delete mode 100644 drivers/staging/media/lirc/Kconfig
 delete mode 100644 drivers/staging/media/lirc/Makefile
 delete mode 100644 drivers/staging/media/lirc/TODO
 delete mode 100644 drivers/staging/media/lirc/lirc_zilog.c
 delete mode 100644 include/media/lirc_dev.h
Signature · 1 line
2.13.6