[lkml]   [2009]   [Nov]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [RFC] Should we create a raw input interface for IR's ? - Was: Re: [PATCH 1/3 v2] lirc core device driver infrastructure
    Krzysztof Halasa wrote:
    > Mauro Carvalho Chehab <> writes:
    >> The issue I see is to support at the same time NEC and RC5 protocols. While
    >> this may work with some devices, for others, the hardware won't allow.
    > Sure. We can handle it for the "simple" devices at least.
    >>> I think the mapping should be: key = proto + group + raw code, while
    >>> key2 could be different_proto + different group (if any) + another code.
    >> This may work for protocols up to RC5, that uses either 8 or 16 bits.
    >> However, RC6 mode 6 codes can be 32 bits, and we have "only" 32 bits
    >> for a scancode. So, we don't have spare bits to represent a protocol,
    >> if we consider RC6 mode 6 codes as well.
    > I don't see this limitation. The number of bits should depend on the
    > protocol.

    see include/linux/input.h:

    struct input_event {
    struct timeval time;
    __u16 type;
    __u16 code;
    __s32 value;

    extending the value to more than 32 bits require some changes at the input layer,
    probably breaking kernel API.

    >> See above. Also, several protocols have a way to check if a keystroke were
    >> properly received. When handling just one protocol, we can use this to double
    >> check the key. However, on a multiprotocol mode, we'll need to disable this
    >> feature.
    > I don't think so. We can pass the space/mark data to all (configured,
    > i.e. with active mapping) protocol handlers at once. Should a check
    > fail, we ignore the data. Perhaps another protocol will make some sense
    > out of it.

    What happens if it succeeds on two protocol handlers?


     \ /
      Last update: 2009-11-26 20:11    [W:0.028 / U:51.668 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site