diff options
author | H. Nikolaus Schaller <hns@goldelico.com> | 2020-05-23 19:32:55 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2020-06-22 09:33:11 +0200 |
commit | d7603a157a0953f43a6d41d57a7f1be829b212f0 (patch) | |
tree | 0b0d002295964f6b5e51103c0bdbbb0aeda3b7e0 | |
parent | de45e00848a262fec5a56ddcac2874d725237276 (diff) | |
download | linux-stable-d7603a157a0953f43a6d41d57a7f1be829b212f0.tar.gz linux-stable-d7603a157a0953f43a6d41d57a7f1be829b212f0.tar.bz2 linux-stable-d7603a157a0953f43a6d41d57a7f1be829b212f0.zip |
w1: omap-hdq: fix return value to be -1 if there is a timeout
commit 2d4100632fa1947bf3e8d7a091e94e2cf21923af upstream.
omap_w1_read_byte() should return -1 (or 0xff) in case of
error (e.g. missing battery).
The code accidentially overwrites the variable ret and not val,
which is returned. So it will return the initial value 0 instead
of -1.
Fixes: 27d13da8782a ("w1: omap-hdq: Simplify driver with PM runtime autosuspend")
Cc: stable@vger.kernel.org # v5.6+
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
Link: https://lore.kernel.org/r/b2c2192b461fbb9b8e9bea4ad514a49557a7210b.1590255176.git.hns@goldelico.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/w1/masters/omap_hdq.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/w1/masters/omap_hdq.c b/drivers/w1/masters/omap_hdq.c index d363e2a89fdf..9f9ec108b189 100644 --- a/drivers/w1/masters/omap_hdq.c +++ b/drivers/w1/masters/omap_hdq.c @@ -464,7 +464,7 @@ static u8 omap_w1_read_byte(void *_hdq) ret = hdq_read_byte(hdq_data, &val); if (ret) - ret = -1; + val = -1; pm_runtime_mark_last_busy(hdq_data->dev); pm_runtime_put_autosuspend(hdq_data->dev); |