Home
last modified time | relevance | path

Searched refs:odr (Results 1 – 25 of 39) sorted by relevance

12

/Linux-v6.6/drivers/iio/common/st_sensors/
Dst_sensors_core.c52 unsigned int odr, struct st_sensor_odr_avl *odr_out) in st_sensors_match_odr() argument
57 if (sensor_settings->odr.odr_avl[i].hz == 0) in st_sensors_match_odr()
60 if (sensor_settings->odr.odr_avl[i].hz == odr) { in st_sensors_match_odr()
61 odr_out->hz = sensor_settings->odr.odr_avl[i].hz; in st_sensors_match_odr()
62 odr_out->value = sensor_settings->odr.odr_avl[i].value; in st_sensors_match_odr()
72 int st_sensors_set_odr(struct iio_dev *indio_dev, unsigned int odr) in st_sensors_set_odr() argument
80 if (!sdata->sensor_settings->odr.mask) in st_sensors_set_odr()
83 err = st_sensors_match_odr(sdata->sensor_settings, odr, &odr_out); in st_sensors_set_odr()
87 if ((sdata->sensor_settings->odr.addr == in st_sensors_set_odr()
89 (sdata->sensor_settings->odr.mask == in st_sensors_set_odr()
[all …]
/Linux-v6.6/drivers/iio/imu/inv_icm42600/
Dinv_icm42600_core.c57 .odr = INV_ICM42600_ODR_50HZ,
63 .odr = INV_ICM42600_ODR_50HZ,
106 uint32_t inv_icm42600_odr_to_period(enum inv_icm42600_odr odr) in inv_icm42600_odr_to_period() argument
139 return odr_periods[odr]; in inv_icm42600_odr_to_period()
220 if (conf->odr < 0) in inv_icm42600_set_accel_conf()
221 conf->odr = oldconf->odr; in inv_icm42600_set_accel_conf()
226 if (conf->fs != oldconf->fs || conf->odr != oldconf->odr) { in inv_icm42600_set_accel_conf()
228 INV_ICM42600_ACCEL_CONFIG0_ODR(conf->odr); in inv_icm42600_set_accel_conf()
233 oldconf->odr = conf->odr; in inv_icm42600_set_accel_conf()
264 if (conf->odr < 0) in inv_icm42600_set_gyro_conf()
[all …]
Dinv_icm42600_buffer.c46 const void **timestamp, unsigned int *odr) in inv_icm42600_fifo_decode_packet() argument
58 *odr = 0; in inv_icm42600_fifo_decode_packet()
63 *odr = 0; in inv_icm42600_fifo_decode_packet()
65 *odr |= INV_ICM42600_SENSOR_GYRO; in inv_icm42600_fifo_decode_packet()
67 *odr |= INV_ICM42600_SENSOR_ACCEL; in inv_icm42600_fifo_decode_packet()
106 period_gyro = inv_icm42600_odr_to_period(st->conf.gyro.odr); in inv_icm42600_buffer_update_fifo_period()
111 period_accel = inv_icm42600_odr_to_period(st->conf.accel.odr); in inv_icm42600_buffer_update_fifo_period()
219 period_gyro = inv_icm42600_odr_to_period(st->conf.gyro.odr) / 1000UL; in inv_icm42600_buffer_update_watermark()
220 period_accel = inv_icm42600_odr_to_period(st->conf.accel.odr) / 1000UL; in inv_icm42600_buffer_update_watermark()
455 unsigned int odr; in inv_icm42600_buffer_fifo_read() local
[all …]
Dinv_icm42600_gyro.c305 unsigned int odr; in inv_icm42600_gyro_read_odr() local
308 odr = st->conf.gyro.odr; in inv_icm42600_gyro_read_odr()
311 if (inv_icm42600_gyro_odr_conv[i] == odr) in inv_icm42600_gyro_read_odr()
341 conf.odr = inv_icm42600_gyro_odr_conv[idx / 2]; in inv_icm42600_gyro_write_odr()
346 ret = inv_sensors_timestamp_update_odr(ts, inv_icm42600_odr_to_period(conf.odr), in inv_icm42600_gyro_write_odr()
741 ts_chip.init_period = inv_icm42600_odr_to_period(st->conf.accel.odr); in inv_icm42600_gyro_init()
774 unsigned int odr; in inv_icm42600_gyro_parse_fifo() local
781 &accel, &gyro, &temp, &timestamp, &odr); in inv_icm42600_gyro_parse_fifo()
791 if (odr & INV_ICM42600_SENSOR_GYRO) in inv_icm42600_gyro_parse_fifo()
Dinv_icm42600_accel.c293 unsigned int odr; in inv_icm42600_accel_read_odr() local
296 odr = st->conf.accel.odr; in inv_icm42600_accel_read_odr()
299 if (inv_icm42600_accel_odr_conv[i] == odr) in inv_icm42600_accel_read_odr()
329 conf.odr = inv_icm42600_accel_odr_conv[idx / 2]; in inv_icm42600_accel_write_odr()
334 ret = inv_sensors_timestamp_update_odr(ts, inv_icm42600_odr_to_period(conf.odr), in inv_icm42600_accel_write_odr()
730 ts_chip.init_period = inv_icm42600_odr_to_period(st->conf.accel.odr); in inv_icm42600_accel_init()
762 unsigned int odr; in inv_icm42600_accel_parse_fifo() local
769 &accel, &gyro, &temp, &timestamp, &odr); in inv_icm42600_accel_parse_fifo()
779 if (odr & INV_ICM42600_SENSOR_ACCEL) in inv_icm42600_accel_parse_fifo()
/Linux-v6.6/drivers/iio/accel/
Dmsa311.c409 static int msa311_get_odr(struct msa311_priv *msa311, unsigned int *odr) in msa311_get_odr() argument
413 err = regmap_field_read(msa311->fields[F_ODR], odr); in msa311_get_odr()
422 if (*odr > MSA311_ODR_1000_HZ) in msa311_get_odr()
423 *odr = MSA311_ODR_1000_HZ; in msa311_get_odr()
449 static int msa311_set_odr(struct msa311_priv *msa311, unsigned int odr) in msa311_set_odr() argument
462 good_odr = (odr > MSA311_ODR_1_95_HZ); in msa311_set_odr()
469 msa311_odr_table[odr].integral, in msa311_set_odr()
470 msa311_odr_table[odr].microfract, in msa311_set_odr()
475 return regmap_field_write(msa311->fields[F_ODR], odr); in msa311_set_odr()
491 unsigned int odr; in msa311_wait_for_next_data() local
[all …]
Dadxl355_core.c225 enum adxl355_odr odr; member
278 u64 odr; in adxl355_fill_3db_frequency_table() local
281 odr = mul_u64_u32_shr(adxl355_odr_table[data->odr][0], MEGA, 0) + in adxl355_fill_3db_frequency_table()
282 adxl355_odr_table[data->odr][1]; in adxl355_fill_3db_frequency_table()
286 div = div64_u64_rem(mul_u64_u32_shr(odr, multiplier, 0), in adxl355_fill_3db_frequency_table()
374 enum adxl355_odr odr) in adxl355_set_odr() argument
380 if (data->odr == odr) { in adxl355_set_odr()
391 FIELD_PREP(ADXL355_FILTER_ODR_MSK, odr)); in adxl355_set_odr()
395 data->odr = odr; in adxl355_set_odr()
539 *val = adxl355_odr_table[data->odr][0]; in adxl355_read_raw()
[all …]
Dst_accel_core.c126 .odr = {
208 .odr = {
287 .odr = {
377 .odr = {
450 .odr = {
523 .odr = {
593 .odr = {
651 .odr = {
726 .odr = {
807 .odr = {
[all …]
Dadxl367.c169 enum adxl367_odr odr; member
534 int freq_hz = adxl367_samp_freq_tbl[st->odr][0]; in adxl367_time_ms_to_samples()
535 int freq_microhz = adxl367_samp_freq_tbl[st->odr][1]; in adxl367_time_ms_to_samples()
612 static int _adxl367_set_odr(struct adxl367_state *st, enum adxl367_odr odr) in _adxl367_set_odr() argument
619 odr)); in _adxl367_set_odr()
632 st->odr = odr; in _adxl367_set_odr()
637 static int adxl367_set_odr(struct iio_dev *indio_dev, enum adxl367_odr odr) in adxl367_set_odr() argument
652 ret = _adxl367_set_odr(st, odr); in adxl367_set_odr()
711 enum adxl367_odr *odr) in adxl367_find_odr() argument
724 *odr = i; in adxl367_find_odr()
[all …]
/Linux-v6.6/drivers/iio/pressure/
Dst_pressure_core.c238 .odr = {
311 .odr = {
363 .odr = {
432 .odr = {
499 .odr = {
568 .odr = {
687 *val = press_data->odr; in st_press_read_raw()
769 press_data->odr = press_data->sensor_settings->odr.odr_avl[0].hz; in st_press_common_probe()
Dzpa2326.c84 u16 odr; member
92 { .hz = 1, .odr = 1 << ZPA2326_CTRL_REG3_ODR_SHIFT },
93 { .hz = 5, .odr = 5 << ZPA2326_CTRL_REG3_ODR_SHIFT },
94 { .hz = 11, .odr = 6 << ZPA2326_CTRL_REG3_ODR_SHIFT },
95 { .hz = 23, .odr = 7 << ZPA2326_CTRL_REG3_ODR_SHIFT },
411 err = regmap_write(regs, ZPA2326_CTRL_REG3_REG, freq->odr); in zpa2326_config_oneshot()
1330 zpa2326_highest_frequency()->odr); in zpa2326_set_trigger_state()
1369 priv->frequency->odr); in zpa2326_set_trigger_state()
/Linux-v6.6/drivers/iio/gyro/
Dst_gyro_core.c77 .odr = {
155 .odr = {
229 .odr = {
303 .odr = {
396 *val = gdata->odr; in st_gyro_read_raw()
493 gdata->odr = gdata->sensor_settings->odr.odr_avl[0].hz; in st_gyro_common_probe()
Dfxas21002c_core.c447 static int fxas21002c_odr_get(struct fxas21002c_data *data, int *odr) in fxas21002c_odr_get() argument
457 *odr = fxas21002c_odr_hz_from_value(data, odr_bits); in fxas21002c_odr_get()
467 static int fxas21002c_odr_set(struct fxas21002c_data *data, int odr) in fxas21002c_odr_set() argument
471 odr_bits = fxas21002c_odr_value_from_hz(data, odr); in fxas21002c_odr_set()
501 int odr; in fxas21002c_lpf_set() local
512 ret = fxas21002c_odr_get(data, &odr); in fxas21002c_lpf_set()
516 if ((odr == 25 && bw_bits > 0x01) || (odr == 12 && bw_bits > 0)) in fxas21002c_lpf_set()
/Linux-v6.6/drivers/iio/imu/st_lsm6dsx/
Dst_lsm6dsx_shub.c159 u32 odr, timeout; in st_lsm6dsx_shub_wait_complete() local
162 odr = (hw->enable_mask & BIT(ST_LSM6DSX_ID_ACC)) ? sensor->odr : 12500; in st_lsm6dsx_shub_wait_complete()
164 timeout = max_t(u32, 2000000U / odr + 1, 10); in st_lsm6dsx_shub_wait_complete()
403 u32 odr, u16 *val) in st_lsm6dsx_shub_get_odr_val() argument
410 if (settings->odr_table.odr_avl[i].milli_hz == odr) in st_lsm6dsx_shub_get_odr_val()
422 st_lsm6dsx_shub_set_odr(struct st_lsm6dsx_sensor *sensor, u32 odr) in st_lsm6dsx_shub_set_odr() argument
428 err = st_lsm6dsx_shub_get_odr_val(sensor, odr, &val); in st_lsm6dsx_shub_set_odr()
638 int odr; in st_lsm6dsx_shub_write_raw() local
641 odr = st_lsm6dsx_check_odr(ref_sensor, val, &odr_val); in st_lsm6dsx_shub_write_raw()
642 if (odr < 0) { in st_lsm6dsx_shub_write_raw()
[all …]
Dst_lsm6dsx_core.c1613 int st_lsm6dsx_check_odr(struct st_lsm6dsx_sensor *sensor, u32 odr, u8 *val) in st_lsm6dsx_check_odr() argument
1624 if (odr_table->odr_avl[i].milli_hz >= odr) in st_lsm6dsx_check_odr()
1636 st_lsm6dsx_check_odr_dependency(struct st_lsm6dsx_hw *hw, u32 odr, in st_lsm6dsx_check_odr_dependency() argument
1641 if (odr > 0) { in st_lsm6dsx_check_odr_dependency()
1643 return max_t(u32, ref->odr, odr); in st_lsm6dsx_check_odr_dependency()
1645 return odr; in st_lsm6dsx_check_odr_dependency()
1647 return (hw->enable_mask & BIT(id)) ? ref->odr : 0; in st_lsm6dsx_check_odr_dependency()
1668 u32 odr; in st_lsm6dsx_set_odr() local
1682 odr = st_lsm6dsx_check_odr_dependency(hw, req_odr, i); in st_lsm6dsx_set_odr()
1683 if (odr != req_odr) in st_lsm6dsx_set_odr()
[all …]
Dst_lsm6dsx_buffer.c86 u32 decimator = max_odr / sensor->odr; in st_lsm6dsx_get_decimator_val()
117 *max_odr = max_t(u32, *max_odr, sensor->odr); in st_lsm6dsx_get_max_min_odr()
118 *min_odr = min_t(u32, *min_odr, sensor->odr); in st_lsm6dsx_get_max_min_odr()
124 u8 sip = sensor->odr / min_odr; in st_lsm6dsx_get_sip()
212 err = st_lsm6dsx_check_odr(sensor, sensor->odr, in st_lsm6dsx_set_fifo_odr()
688 if (data->val[i].milli_hz == sensor->odr) { in st_lsm6dsx_update_samples_to_discard()
/Linux-v6.6/drivers/iio/magnetometer/
Dst_magn_core.c152 .odr = {
231 .odr = {
311 .odr = {
384 .odr = {
433 .odr = {
532 *val = mdata->odr; in st_magn_read_raw()
629 mdata->odr = mdata->sensor_settings->odr.odr_avl[0].hz; in st_magn_common_probe()
Dbmc150_magn.c174 u8 odr; member
326 int rep_z, int odr) in bmc150_magn_set_max_odr() argument
344 if (odr <= 0) { in bmc150_magn_set_max_odr()
345 ret = bmc150_magn_get_odr(data, &odr); in bmc150_magn_set_max_odr()
351 if (odr > max_odr) { in bmc150_magn_set_max_odr()
354 odr); in bmc150_magn_set_max_odr()
730 ret = bmc150_magn_set_odr(data, preset.odr); in bmc150_magn_init()
733 preset.odr); in bmc150_magn_init()
754 preset.odr); in bmc150_magn_init()
/Linux-v6.6/drivers/iio/imu/
Dfxos8700_core.c282 int odr; member
481 int odr, int uodr) in fxos8700_set_odr() argument
505 if (fxos8700_odr[i].odr == odr && fxos8700_odr[i].uodr == uodr) in fxos8700_set_odr()
517 int *odr, int *uodr) in fxos8700_get_odr() argument
535 *odr = fxos8700_odr[i].odr; in fxos8700_get_odr()
/Linux-v6.6/arch/powerpc/platforms/4xx/
Dgpio.c33 __be32 odr; member
103 clrbits32(&regs->odr, GPIO_MASK(gpio)); in ppc4xx_gpio_dir_in()
136 clrbits32(&regs->odr, GPIO_MASK(gpio)); in ppc4xx_gpio_dir_out()
/Linux-v6.6/drivers/iio/adc/
Dad7780.c66 unsigned int odr; member
130 *val = st->odr; in ad7780_read_raw()
174 st->odr = ad778x_odr_avail[val]; in ad7780_write_raw()
196 st->odr = ad778x_odr_avail[raw_sample & AD7780_FILTER]; in ad7780_postprocess_sample()
Dad7124.c155 unsigned int odr; member
260 static void ad7124_set_channel_odr(struct ad7124_state *st, unsigned int channel, unsigned int odr) in ad7124_set_channel_odr() argument
272 odr_sel_bits = DIV_ROUND_CLOSEST(fclk, odr * 32); in ad7124_set_channel_odr()
282 st->channels[channel].cfg.odr = DIV_ROUND_CLOSEST(fclk, odr_sel_bits * 32); in ad7124_set_channel_odr()
291 fadc = st->channels[channel].cfg.odr; in ad7124_get_3db_filter_freq()
322 if (new_odr != st->channels[channel].cfg.odr) in ad7124_set_3db_filter_freq()
326 st->channels[channel].cfg.odr = new_odr; in ad7124_set_3db_filter_freq()
614 *val = st->channels[chan->address].cfg.odr; in ad7124_read_raw()
/Linux-v6.6/include/linux/iio/common/
Dst_sensors.h210 struct st_sensor_odr odr; member
250 unsigned int odr; member
298 int st_sensors_set_odr(struct iio_dev *indio_dev, unsigned int odr);
/Linux-v6.6/drivers/iio/imu/bmi160/
Dbmi160_core.c191 int odr; member
382 int odr, int uodr) in bmi160_set_odr() argument
387 if (bmi160_odr_table[t].tbl[i].odr == odr && in bmi160_set_odr()
401 int *odr, int *uodr) in bmi160_get_odr() argument
418 *odr = bmi160_odr_table[t].tbl[i].odr; in bmi160_get_odr()
/Linux-v6.6/arch/powerpc/sysdev/
Dcpm2.c314 u32 dir, par, sor, odr, dat; member
341 setbits32(&iop[port].odr, pin); in cpm2_set_pin()
343 clrbits32(&iop[port].odr, pin); in cpm2_set_pin()

12