static inline int lsm9ds0_mfd_attr_set_accel(struct device *dev, enum sensor_attribute attr, const struct sensor_value *val) { switch (attr) { #if defined(CONFIG_LSM9DS0_MFD_ACCEL_SAMPLING_RATE_RUNTIME) case SENSOR_ATTR_SAMPLING_FREQUENCY: return lsm9ds0_mfd_accel_set_odr(dev, val); #endif #if defined(CONFIG_LSM9DS0_MFD_ACCEL_FULL_SCALE_RUNTIME) case SENSOR_ATTR_FULL_SCALE: return lsm9ds0_mfd_accel_set_fs(dev, sensor_ms2_to_g(val)); #endif default: return -ENOTSUP; } return 0; }
static int lsm6dsl_accel_config(struct device *dev, enum sensor_channel chan, enum sensor_attribute attr, const struct sensor_value *val) { switch (attr) { #ifdef LSM6DSL_ACCEL_FS_RUNTIME case SENSOR_ATTR_FULL_SCALE: return lsm6dsl_accel_range_set(dev, sensor_ms2_to_g(val)); #endif #ifdef LSM6DSL_ACCEL_ODR_RUNTIME case SENSOR_ATTR_SAMPLING_FREQUENCY: return lsm6dsl_accel_odr_set(dev, val->val1); #endif default: LOG_DBG("Accel attribute not supported."); return -ENOTSUP; } return 0; }