From: carlos.song@nxp.com
To: jic23@kernel.org, lars@metafoo.de
Cc: rjones@gateworks.com, Jonathan.Cameron@huawei.com,
haibo.chen@nxp.com, carlos.song@nxp.com, linux-imx@nxp.com,
linux-iio@vger.kernel.org
Subject: [PATCH v3 1/5] iio: imu: fxos8700: fix incorrect ODR mode readback
Date: Wed, 14 Dec 2022 11:14:59 +0800 [thread overview]
Message-ID: <20221214031503.3104251-2-carlos.song@nxp.com> (raw)
In-Reply-To: <20221214031503.3104251-1-carlos.song@nxp.com>
From: Carlos Song <carlos.song@nxp.com>
The absence of a correct offset leads an incorrect ODR mode
readback after use a hexadecimal number to mark the value from
FXOS8700_CTRL_REG1.
Get ODR mode by field mask and FIELD_GET clearly and conveniently.
Fixes: 84e5ddd5c46e ("iio: imu: Add support for the FXOS8700 IMU")
Signed-off-by: Carlos Song <carlos.song@nxp.com>
Changes for V3:
- Rework commit log
diff --git a/drivers/iio/imu/fxos8700_core.c b/drivers/iio/imu/fxos8700_core.c
index 773f62203bf0..83ab7d0f79b3 100644
--- a/drivers/iio/imu/fxos8700_core.c
+++ b/drivers/iio/imu/fxos8700_core.c
@@ -10,6 +10,7 @@
#include <linux/regmap.h>
#include <linux/acpi.h>
#include <linux/bitops.h>
+#include <linux/bitfield.h>
#include <linux/iio/iio.h>
#include <linux/iio/sysfs.h>
@@ -147,6 +148,7 @@
#define FXOS8700_CTRL_ODR_MSK 0x38
#define FXOS8700_CTRL_ODR_MAX 0x00
#define FXOS8700_CTRL_ODR_MIN GENMASK(4, 3)
+#define FXOS8700_CTRL_ODR_GENMSK GENMASK(5, 3)
/* Bit definitions for FXOS8700_M_CTRL_REG1 */
#define FXOS8700_HMS_MASK GENMASK(1, 0)
@@ -524,7 +526,7 @@ static int fxos8700_get_odr(struct fxos8700_data *data, enum fxos8700_sensor t,
if (ret)
return ret;
- val &= FXOS8700_CTRL_ODR_MSK;
+ val = FIELD_GET(FXOS8700_CTRL_ODR_GENMSK, val);
for (i = 0; i < odr_num; i++)
if (val == fxos8700_odr[i].bits)
--
2.34.1
next prev parent reply other threads:[~2022-12-14 3:15 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-14 3:14 [PATCH v3 0/5] iio: imu: fxos8700: fix bugs about ODR and changes for a good readability carlos.song
2022-12-14 3:14 ` carlos.song [this message]
2022-12-23 16:55 ` [PATCH v3 1/5] iio: imu: fxos8700: fix incorrect ODR mode readback Jonathan Cameron
2022-12-23 16:58 ` Jonathan Cameron
2022-12-14 3:15 ` [PATCH v3 2/5] iio: imu: fxos8700: improve readability by field mask and regmap_write carlos.song
2022-12-23 16:59 ` Jonathan Cameron
2022-12-14 3:15 ` [PATCH v3 3/5] iio: imu: fxos8700: fix failed initialization ODR mode assignment carlos.song
2022-12-14 3:15 ` [PATCH v3 4/5] iio: imu: fxos8700: remove definition FXOS8700_CTRL_ODR_MIN carlos.song
2022-12-14 3:15 ` [PATCH v3 5/5] iio: imu: fxos8700: fix MAGN sensor scale and unit carlos.song
2022-12-23 17:01 ` 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=20221214031503.3104251-2-carlos.song@nxp.com \
--to=carlos.song@nxp.com \
--cc=Jonathan.Cameron@huawei.com \
--cc=haibo.chen@nxp.com \
--cc=jic23@kernel.org \
--cc=lars@metafoo.de \
--cc=linux-iio@vger.kernel.org \
--cc=linux-imx@nxp.com \
--cc=rjones@gateworks.com \
/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.