Lines Matching +full:sensors +full:- +full:mems

1 /* SPDX-License-Identifier: GPL-2.0-only */
27 #define ST_LSM6DS3TRC_DEV_NAME "lsm6ds3tr-c"
29 #define ST_LSM9DS1_DEV_NAME "lsm9ds1-imu"
145 * struct st_lsm6dsx_fifo_ops - ST IMU FIFO settings
169 * struct st_lsm6dsx_hw_ts_settings - ST IMU hw timer settings
185 * struct st_lsm6dsx_shub_settings - ST IMU hw i2c controller settings
188 * @pullup_en: i2c controller pull-up register info (addr + mask).
240 * struct st_lsm6dsx_ext_dev_settings - i2c controller slave settings
276 * struct st_lsm6dsx_settings - ST IMU sensor settings
283 * @drdy_mask: register info for data-ready mask (addr + mask).
284 * @odr_table: Hw sensors odr table (Hz + val).
285 * @fs_table: Hw sensors gain table (gain + val).
341 * struct st_lsm6dsx_sensor - ST IMU sensor instance
374 * struct st_lsm6dsx_hw - ST IMU MEMS hw instance
469 mutex_lock(&hw->page_lock); in st_lsm6dsx_update_bits_locked()
470 err = regmap_update_bits(hw->regmap, addr, mask, val); in st_lsm6dsx_update_bits_locked()
471 mutex_unlock(&hw->page_lock); in st_lsm6dsx_update_bits_locked()
482 mutex_lock(&hw->page_lock); in st_lsm6dsx_read_locked()
483 err = regmap_bulk_read(hw->regmap, addr, val, len); in st_lsm6dsx_read_locked()
484 mutex_unlock(&hw->page_lock); in st_lsm6dsx_read_locked()
495 mutex_lock(&hw->page_lock); in st_lsm6dsx_write_locked()
496 err = regmap_write(hw->regmap, addr, val); in st_lsm6dsx_write_locked()
497 mutex_unlock(&hw->page_lock); in st_lsm6dsx_write_locked()
507 struct st_lsm6dsx_hw *hw = sensor->hw; in st_lsm6dsx_get_mount_matrix()
509 return &hw->orientation; in st_lsm6dsx_get_mount_matrix()