lkml.org 
[lkml]   [2020]   [Dec]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.14 182/242] media: sunxi-cir: ensure IR is handled when it is continuous
    Date
    From: Sean Young <sean@mess.org>

    commit 3f56df4c8ffeb120ed41906d3aae71799b7e726a upstream.

    If a user holds a button down on a remote, then no ir idle interrupt will
    be generated until the user releases the button, depending on how quickly
    the remote repeats. No IR is processed until that point, which means that
    holding down a button may not do anything.

    This also resolves an issue on a Cubieboard 1 where the IR receiver is
    picking up ambient infrared as IR and spews out endless
    "rc rc0: IR event FIFO is full!" messages unless you choose to live in
    the dark.

    Cc: stable@vger.kernel.org
    Tested-by: Hans Verkuil <hverkuil@xs4all.nl>
    Acked-by: Maxime Ripard <mripard@kernel.org>
    Reported-by: Hans Verkuil <hverkuil@xs4all.nl>
    Signed-off-by: Sean Young <sean@mess.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/media/rc/sunxi-cir.c | 2 ++
    1 file changed, 2 insertions(+)

    --- a/drivers/media/rc/sunxi-cir.c
    +++ b/drivers/media/rc/sunxi-cir.c
    @@ -132,6 +132,8 @@ static irqreturn_t sunxi_ir_irq(int irqn
    } else if (status & REG_RXINT_RPEI_EN) {
    ir_raw_event_set_idle(ir->rc, true);
    ir_raw_event_handle(ir->rc);
    + } else {
    + ir_raw_event_handle(ir->rc);
    }

    spin_unlock(&ir->ir_lock);

    \
     
     \ /
      Last update: 2020-12-28 14:17    [W:4.091 / U:0.436 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site