Hi Micheal, On Thu, Nov 01, 2018 at 12:58:30PM +0100, Michael Kerrisk (man-pages) wrote: > Hi Sean, > > One question about the patch below... > On 11/01/2018 12:18 AM, Sean Young wrote: > > There are no drivers that support LIRC_MODE_LIRCCODE any more; those > > drivers were in the kernel staging area, so they were never part > > of the mainline kernel. > > > > Signed-off-by: Sean Young <sean@xxxxxxxx> > > --- > > man4/lirc.4 | 90 +++++++++++++++++++++++++++-------------------------- > > 1 file changed, 46 insertions(+), 44 deletions(-) > > > > diff --git a/man4/lirc.4 b/man4/lirc.4 > > index 0adf11b3e..58ea1193c 100644 > > --- a/man4/lirc.4 > > +++ b/man4/lirc.4 > > @@ -1,4 +1,5 @@ > > .\" Copyright (c) 2015-2016, Alec Leamas > > +.\" Copyright (c) 2018, Sean Young <sean@xxxxxxxx> > > .\" > > .\" %%%LICENSE_START(GPLv2+_DOC_FULL) > > .\" This is free documentation; you can redistribute it and/or > > @@ -33,12 +34,13 @@ When receiving data, the driver works in two different modes depending > > on the underlying hardware. > > .PP > > Some hardware (typically TV-cards) decodes the IR signal internally > > -and just provides decoded button presses as integer values. > > -Drivers for this kind of hardware work in > > -.BR LIRC_MODE_LIRCCODE > > +and provide decoded button presses as scancode values. Drivers for this > > +kind of hardware work in > > +.BR LIRC_MODE_SCANCODE > > mode. > > Such hardware usually does not support sending IR signals. > > -Furthermore, it usually only works with a specific remote which is > > +Furthermore, they can only decode a limited set of IR protocols, usually > > +only the protocol of the specific remote which is > > bundled with, for example, a TV-card. > > .PP > > Other hardware provides a stream of pulse/space durations. > > @@ -47,18 +49,20 @@ Such drivers work in > > mode. > > Sometimes, this kind of hardware also supports > > sending IR data. > > -Such hardware can be used with (almost) any kind of remote. > > +Such hardware can be used with (almost) any kind of remote. This type > > +of hardware can also be used in > > +.BR LIRC_MODE_SCANCODE > > +mode, in which case the kernel IR decoders will decode the IR. These > > +decoders can be written in bpf(2) and attached to the lirc device. > > I presume what you mean is that the decoders can be written in > eBPF (extended BPF)? Probably, that should be stated a bit more > explicitly. That's right. There is a lot more to say about how those bpf programs should be written, and attached to a lirc device. I guess that does not belong in this man page; I'm not sure what should go in this man page about that. Using the bpf(2) syscall it is possible to attached, detach, list these ebpf programs. Some of this should go into bpf(2) and the bpf helpers functions using by IR decoders should probably go in bpf_helpers man page. Sean