All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michael Tretter <m.tretter@pengutronix.de>
To: Geert Uytterhoeven <geert+renesas@glider.be>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>,
	Andrej Valek <andrej.valek@siemens.com>,
	linux-input@vger.kernel.org, linux-renesas-soc@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH] Input: st1232 - Fix NORMAL vs. IDLE state handling
Date: Tue, 23 Feb 2021 11:29:00 +0100	[thread overview]
Message-ID: <20210223102900.GA8833@pengutronix.de> (raw)
In-Reply-To: <20210223090201.1430542-1-geert+renesas@glider.be>

On Tue, 23 Feb 2021 10:02:01 +0100, Geert Uytterhoeven wrote:
> NORMAL (0x0) and IDLE (0x4) are really two different states.  Hence you
> cannot check for both using a bitmask, as that checks for IDLE only,
> breaking operation for devices that are in NORMAL state.

Thanks. I missed that the state is actually a value and not a bitfield.

> 
> Fix the wait function to report either state as ready.
> 
> Fixes: 6524d8eac258452e ("Input: st1232 - add IDLE state as ready condition")
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>

Reviewed-by: Michael Tretter <m.tretter@pengutronix.de>

> ---
>  drivers/input/touchscreen/st1232.c | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/input/touchscreen/st1232.c b/drivers/input/touchscreen/st1232.c
> index 885f0572488dd061..6abae665ca71d8ec 100644
> --- a/drivers/input/touchscreen/st1232.c
> +++ b/drivers/input/touchscreen/st1232.c
> @@ -94,8 +94,13 @@ static int st1232_ts_wait_ready(struct st1232_ts_data *ts)
>  
>  	for (retries = 10; retries; retries--) {
>  		error = st1232_ts_read_data(ts, REG_STATUS, 1);
> -		if (!error && ts->read_buf[0] == (STATUS_NORMAL | STATUS_IDLE | ERROR_NONE))
> -			return 0;
> +		if (!error) {
> +			switch (ts->read_buf[0]) {
> +			case STATUS_NORMAL | ERROR_NONE:
> +			case STATUS_IDLE | ERROR_NONE:
> +				return 0;
> +			}
> +		}
>  
>  		usleep_range(1000, 2000);
>  	}
> -- 
> 2.25.1
> 
> 

  reply	other threads:[~2021-02-23 10:30 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-23  9:02 [PATCH] Input: st1232 - Fix NORMAL vs. IDLE state handling Geert Uytterhoeven
2021-02-23 10:29 ` Michael Tretter [this message]
2021-02-23 17:30   ` Dmitry Torokhov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210223102900.GA8833@pengutronix.de \
    --to=m.tretter@pengutronix.de \
    --cc=andrej.valek@siemens.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=geert+renesas@glider.be \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-renesas-soc@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.