All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mathieu Othacehe <m.othacehe@gmail.com>
To: jic23@kernel.org, knaack.h@gmx.de, lars@metafoo.de, pmeerw@pmeerw.net
Cc: linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org,
	Mathieu Othacehe <m.othacehe@gmail.com>
Subject: [PATCH v7 1/5] iio: vcnl4000: Fix i2c swapped word reading.
Date: Sun,  3 May 2020 11:29:55 +0200	[thread overview]
Message-ID: <20200503092959.8806-2-m.othacehe@gmail.com> (raw)
In-Reply-To: <20200503092959.8806-1-m.othacehe@gmail.com>

The bytes returned by the i2c reading need to be swapped
unconditionally. Otherwise, on be16 platforms, an incorrect value will be
returned.

Fixes: 62a1efb9f868 ("iio: add vcnl4000 combined ALS and proximity sensor")
Signed-off-by: Mathieu Othacehe <m.othacehe@gmail.com>
---
 drivers/iio/light/vcnl4000.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/iio/light/vcnl4000.c b/drivers/iio/light/vcnl4000.c
index 58e97462e803..e5f86bd00fb0 100644
--- a/drivers/iio/light/vcnl4000.c
+++ b/drivers/iio/light/vcnl4000.c
@@ -219,7 +219,6 @@ static int vcnl4000_measure(struct vcnl4000_data *data, u8 req_mask,
 				u8 rdy_mask, u8 data_reg, int *val)
 {
 	int tries = 20;
-	__be16 buf;
 	int ret;
 
 	mutex_lock(&data->vcnl4000_lock);
@@ -246,13 +245,12 @@ static int vcnl4000_measure(struct vcnl4000_data *data, u8 req_mask,
 		goto fail;
 	}
 
-	ret = i2c_smbus_read_i2c_block_data(data->client,
-		data_reg, sizeof(buf), (u8 *) &buf);
+	ret = i2c_smbus_read_word_swapped(data->client, data_reg);
 	if (ret < 0)
 		goto fail;
 
 	mutex_unlock(&data->vcnl4000_lock);
-	*val = be16_to_cpu(buf);
+	*val = ret;
 
 	return 0;
 
-- 
2.26.0


  reply	other threads:[~2020-05-03  9:32 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-03  9:29 [PATCH v7 0/5] iio: vcnl: Add interrupts support for VCNL4010/20 Mathieu Othacehe
2020-05-03  9:29 ` Mathieu Othacehe [this message]
2020-05-03  9:29 ` [PATCH v7 2/5] iio: vcnl4000: Factorize data reading and writing Mathieu Othacehe
2020-05-03  9:29 ` [PATCH v7 3/5] iio: vcnl4000: Add event support for VCNL4010/20 Mathieu Othacehe
2020-05-03  9:29 ` [PATCH v7 4/5] iio: vcnl4000: Add sampling frequency " Mathieu Othacehe
2020-05-03  9:29 ` [PATCH v7 5/5] iio: vcnl4000: Add buffer " Mathieu Othacehe
2020-05-03 13:55 ` [PATCH v7 0/5] iio: vcnl: Add interrupts " Jonathan Cameron

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=20200503092959.8806-2-m.othacehe@gmail.com \
    --to=m.othacehe@gmail.com \
    --cc=jic23@kernel.org \
    --cc=knaack.h@gmx.de \
    --cc=lars@metafoo.de \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pmeerw@pmeerw.net \
    /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.