From patchwork Sun May 13 12:16:04 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sean Young X-Patchwork-Id: 10396197 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 938E660215 for ; Sun, 13 May 2018 12:16:08 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 7545329078 for ; Sun, 13 May 2018 12:16:08 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 69C5B2907A; Sun, 13 May 2018 12:16:08 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00, MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id B774029078 for ; Sun, 13 May 2018 12:16:07 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751293AbeEMMQF (ORCPT ); Sun, 13 May 2018 08:16:05 -0400 Received: from gofer.mess.org ([88.97.38.141]:41003 "EHLO gofer.mess.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751263AbeEMMQF (ORCPT ); Sun, 13 May 2018 08:16:05 -0400 Received: by gofer.mess.org (Postfix, from userid 1000) id 3E70160DE7; Sun, 13 May 2018 13:16:04 +0100 (BST) From: Sean Young To: linux-media@vger.kernel.org Subject: [PATCH] media: rc: default to idle on at startup or after reset Date: Sun, 13 May 2018 13:16:04 +0100 Message-Id: <20180513121604.7411-1-sean@mess.org> X-Mailer: git-send-email 2.11.0 Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Any spaces events received after a reset or startup should be discarded, so ensure the rc device is in idle mode. This also makes it much easier to detect incorrect raw events, as we will do in a following commit. Signed-off-by: Sean Young --- drivers/media/rc/rc-ir-raw.c | 1 + include/media/rc-core.h | 1 + 2 files changed, 2 insertions(+) diff --git a/drivers/media/rc/rc-ir-raw.c b/drivers/media/rc/rc-ir-raw.c index 2ab8a2b7092a..2e50104ae138 100644 --- a/drivers/media/rc/rc-ir-raw.c +++ b/drivers/media/rc/rc-ir-raw.c @@ -611,6 +611,7 @@ int ir_raw_event_prepare(struct rc_dev *dev) dev->raw->dev = dev; dev->change_protocol = change_protocol; + dev->idle = true; spin_lock_init(&dev->raw->edge_spinlock); timer_setup(&dev->raw->edge_handle, ir_raw_edge_handle, 0); INIT_KFIFO(dev->raw->kfifo); diff --git a/include/media/rc-core.h b/include/media/rc-core.h index 6742fd86ff65..61571773a98d 100644 --- a/include/media/rc-core.h +++ b/include/media/rc-core.h @@ -347,6 +347,7 @@ static inline void ir_raw_event_reset(struct rc_dev *dev) struct ir_raw_event ev = { .reset = true }; ir_raw_event_store(dev, &ev); + dev->idle = true; ir_raw_event_handle(dev); }