[PATCH v2 1/4] iio: pressure: rohm-bm1390: Fix AVE_NUM initialization

Matti Vaittinen <[email protected]>
Newsgroups org.kernel.vger.linux-iio,org.kernel.vger.linux-kernel
Message-ID <78db4d1cf1d63f6533d519e28059b981f98e5239.1787901813.git.mazziesaccount@gmail.com>
From: Matti Vaittinen <[email protected]>

The BM1390 tries to initialize the AVE_NUM to 110b at the start-up. The
field location is not taken into account, and value is written unsifted.
This causes the AVE_NUM to be initialized to zero.

Use FIELD_PREP() to shift the intended AVE_NUM value to correct field.

Fixes: 81ca5979b6ed ("iio: pressure: Support ROHM BU1390")
Signed-off-by: Matti Vaittinen <[email protected]>

---
I believe this was already applied to Jonathan's 'testing' branch. I
didn't find that from public IIO repository though, so spinning it here
just for the sake of the completeness.
---
 drivers/iio/pressure/rohm-bm1390.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/iio/pressure/rohm-bm1390.c b/drivers/iio/pressure/rohm-bm1390.c
index d00d7ed54cb1..29454570f257 100644
--- a/drivers/iio/pressure/rohm-bm1390.c
+++ b/drivers/iio/pressure/rohm-bm1390.c
@@ -479,6 +479,7 @@ static const struct iio_info bm1390_info = {
 
 static int bm1390_chip_init(struct bm1390_data *data)
 {
+	u8 regval;
 	int ret;
 
 	ret = regmap_write_bits(data->regmap, BM1390_REG_POWER,
@@ -512,8 +513,9 @@ static int bm1390_chip_init(struct bm1390_data *data)
 	 * Default to use IIR filter in "middle" mode. Also the AVE_NUM must
 	 * be fixed when IIR is in use.
 	 */
+	regval = FIELD_PREP(BM1390_MASK_AVE_NUM, BM1390_IIR_AVE_NUM);
 	ret = regmap_update_bits(data->regmap, BM1390_REG_MODE_CTRL,
-				 BM1390_MASK_AVE_NUM, BM1390_IIR_AVE_NUM);
+				 BM1390_MASK_AVE_NUM, regval);
 	if (ret)
 		return ret;
 
-- 
2.55.0
signature.asc (application/pgp-signature, 488 B)
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEIx+f8wZb28fLKEhTeFA3/03aocUFAmqRO2IACgkQeFA3/03a
ocUgAQf8CprQW87BeQOSYHeD0fIHQjf5nlgVHDgY4164H+HMjQ3C2PkgQcxQlj89
l5FC8iJ4DVxcvl+ImABmqQu6bx4hHYzhjXVHC1zTSYRdkdwChFdV/GRXInNywb1g
8Y2dxhhqGVslwCXkbj1xI6v4qi5FK7PPrnJAHtwdG7GISjf+aGYvEUJ1cWeGnuRq
H7qkwl98ODTblEZiNSv2OGFZMXSWSoMtSVOqgZBDN0Fy/I6ew1uZmrY+3gRRxk31
QBNuycCJi9dI4yib2sDiN8fp42iF+hrQ+TQEmRcbMzdkoIQ0uOjcJw5koWlKUUVW
QY9Y0o15UF4qNuRKpfPPnN3XM2XrAA==
=n0Xu
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.