Skip to content

Commit eb6d8f8

Browse files
NXP-CarlosSongjic23
authored andcommitted
iio: imu: fxos8700: fix failed initialization ODR mode assignment
The absence of correct offset leads a failed initialization ODR mode assignment. Select MAX ODR mode as the initialization ODR mode by field mask and FIELD_PREP. Fixes: 84e5ddd ("iio: imu: Add support for the FXOS8700 IMU") Signed-off-by: Carlos Song <[email protected]> Link: https://lore.kernel.org/r/[email protected] Cc: <[email protected]> Signed-off-by: Jonathan Cameron <[email protected]>
1 parent 78ad686 commit eb6d8f8

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

drivers/iio/imu/fxos8700_core.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -664,8 +664,10 @@ static int fxos8700_chip_init(struct fxos8700_data *data, bool use_spi)
664664
return ret;
665665

666666
/* Max ODR (800Hz individual or 400Hz hybrid), active mode */
667-
return regmap_write(data->regmap, FXOS8700_CTRL_REG1,
668-
FXOS8700_CTRL_ODR_MAX | FXOS8700_ACTIVE);
667+
return regmap_update_bits(data->regmap, FXOS8700_CTRL_REG1,
668+
FXOS8700_CTRL_ODR_MSK | FXOS8700_ACTIVE,
669+
FIELD_PREP(FXOS8700_CTRL_ODR_MSK, FXOS8700_CTRL_ODR_MAX) |
670+
FXOS8700_ACTIVE);
669671
}
670672

671673
static void fxos8700_chip_uninit(void *data)

0 commit comments

Comments
 (0)