sensor: remove SENSOR_VALUE_TYPE_INT
Remove SENSOR_VALUE_TYPE_INT as it is the same as SENSOR_VALUE_TYPE_INT_PLUS_MICRO with val2 set to 0. Change-Id: If5a9c579b7267701c27f40fd887acae47d64edc5 Signed-off-by: Bogdan Davidoaia <bogdan.m.davidoaia@intel.com>
This commit is contained in:
parent
b584acb0a4
commit
4946e3e6e6
19 changed files with 34 additions and 65 deletions
|
@ -444,7 +444,7 @@ static int bmc150_magn_attr_set(struct device *dev,
|
|||
switch (attr) {
|
||||
#if defined(CONFIG_BMC150_MAGN_SAMPLING_RATE_RUNTIME)
|
||||
case SENSOR_ATTR_SAMPLING_FREQUENCY:
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT) {
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
SYS_LOG_DBG("invalid parameter type");
|
||||
return -ENOTSUP;
|
||||
}
|
||||
|
@ -468,7 +468,7 @@ static int bmc150_magn_attr_set(struct device *dev,
|
|||
#endif
|
||||
#if defined(BMC150_MAGN_SET_ATTR_REP)
|
||||
case SENSOR_ATTR_OVERSAMPLING:
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT) {
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
SYS_LOG_DBG("invalid parameter type");
|
||||
return -ENOTSUP;
|
||||
}
|
||||
|
|
|
@ -171,7 +171,7 @@ static int bmg160_attr_set(struct device *dev, enum sensor_channel chan,
|
|||
return 0;
|
||||
|
||||
case SENSOR_ATTR_SAMPLING_FREQUENCY:
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT) {
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
return -ENOTSUP;
|
||||
}
|
||||
|
||||
|
|
|
@ -100,7 +100,7 @@ int bmg160_slope_config(struct device *dev, enum sensor_attribute attr,
|
|||
return bmg160_write_byte(dev, BMG160_REG_THRES,
|
||||
any_th_dps & BMG160_THRES_MASK);
|
||||
} else if (attr == SENSOR_ATTR_SLOPE_DUR) {
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT) {
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
|
|
@ -251,7 +251,7 @@ int bmi160_acc_slope_config(struct device *dev, enum sensor_attribute attr,
|
|||
return -EIO;
|
||||
}
|
||||
} else { /* SENSOR_ATTR_SLOPE_DUR */
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT) {
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
|
|
@ -153,7 +153,7 @@ static int hp206c_attr_set(struct device *dev, enum sensor_channel chan,
|
|||
enum sensor_attribute attr,
|
||||
const struct sensor_value *val)
|
||||
{
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT) {
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
|
|
@ -62,8 +62,9 @@ static int isl29035_channel_get(struct device *dev,
|
|||
val->val2 = tmp >> ISL29035_ADC_DATA_BITS;
|
||||
#elif CONFIG_ISL29035_MODE_IR
|
||||
ARG_UNUSED(tmp);
|
||||
val->type = SENSOR_VALUE_TYPE_INT;
|
||||
val->type = SENSOR_VALUE_TYPE_INT_INT_PLUS_MICRO;
|
||||
val->val1 = drv_data->data_sample;
|
||||
val->val2 = 0;
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
|
|
|
@ -26,18 +26,11 @@ extern struct isl29035_driver_data isl29035_data;
|
|||
|
||||
static uint16_t isl29035_lux_processed_to_raw(struct sensor_value const *val)
|
||||
{
|
||||
uint64_t raw_val, ival, uval;
|
||||
|
||||
ival = val->val1;
|
||||
if (val->type == SENSOR_VALUE_TYPE_INT) {
|
||||
uval = 0;
|
||||
} else {
|
||||
uval = val->val2;
|
||||
}
|
||||
uint64_t raw_val;
|
||||
|
||||
/* raw_val = val * (2 ^ adc_data_bits) / lux_range */
|
||||
raw_val = (ival << ISL29035_ADC_DATA_BITS) +
|
||||
(uval << ISL29035_ADC_DATA_BITS) / 1000000;
|
||||
raw_val = (((uint64_t)val->val1) << ISL29035_ADC_DATA_BITS) +
|
||||
(((uint64_t)val->val2) << ISL29035_ADC_DATA_BITS) / 1000000;
|
||||
|
||||
return raw_val / ISL29035_LUX_RANGE;
|
||||
}
|
||||
|
|
|
@ -227,8 +227,7 @@ static int lsm9ds0_gyro_attr_set(struct device *dev,
|
|||
switch (attr) {
|
||||
#if defined(CONFIG_LSM9DS0_GYRO_FULLSCALE_RUNTIME)
|
||||
case SENSOR_ATTR_FULL_SCALE:
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT &&
|
||||
val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
return -ENOTSUP;
|
||||
}
|
||||
|
||||
|
@ -240,7 +239,7 @@ static int lsm9ds0_gyro_attr_set(struct device *dev,
|
|||
#endif
|
||||
#if defined(CONFIG_LSM9DS0_GYRO_SAMPLING_RATE_RUNTIME)
|
||||
case SENSOR_ATTR_SAMPLING_FREQUENCY:
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT) {
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
return -ENOTSUP;
|
||||
}
|
||||
|
||||
|
|
|
@ -591,8 +591,7 @@ static inline int lsm9ds0_mfd_attr_set_accel(struct device *dev,
|
|||
switch (attr) {
|
||||
#if defined(CONFIG_LSM9DS0_MFD_ACCEL_SAMPLING_RATE_RUNTIME)
|
||||
case SENSOR_ATTR_SAMPLING_FREQUENCY:
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT &&
|
||||
val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
@ -600,8 +599,7 @@ static inline int lsm9ds0_mfd_attr_set_accel(struct device *dev,
|
|||
#endif
|
||||
#if defined(CONFIG_LSM9DS0_MFD_ACCEL_FULL_SCALE_RUNTIME)
|
||||
case SENSOR_ATTR_FULL_SCALE:
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT &&
|
||||
val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
@ -623,8 +621,7 @@ static inline int lsm9ds0_mfd_attr_set_magn(struct device *dev,
|
|||
switch (attr) {
|
||||
#if defined(CONFIG_LSM9DS0_MFD_MAGN_SAMPLING_RATE_RUNTIME)
|
||||
case SENSOR_ATTR_SAMPLING_FREQUENCY:
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT &&
|
||||
val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
@ -632,8 +629,7 @@ static inline int lsm9ds0_mfd_attr_set_magn(struct device *dev,
|
|||
#endif
|
||||
#if defined(CONFIG_LSM9DS0_MFD_MAGN_FULL_SCALE_RUNTIME)
|
||||
case SENSOR_ATTR_FULL_SCALE:
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT &&
|
||||
val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
|
|
@ -74,18 +74,14 @@ int mcp9808_attr_set(struct device *dev, enum sensor_channel chan,
|
|||
|
||||
__ASSERT_NO_MSG(chan == SENSOR_CHAN_TEMP);
|
||||
|
||||
switch (val->type) {
|
||||
case SENSOR_VALUE_TYPE_INT_PLUS_MICRO:
|
||||
if (val->type == SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
val2 = val->val2;
|
||||
while (val2 > 0) {
|
||||
reg_val += (1 << 2);
|
||||
val2 -= 250000;
|
||||
}
|
||||
/* Fall through. */
|
||||
case SENSOR_VALUE_TYPE_INT:
|
||||
reg_val |= val->val1 << 4;
|
||||
break;
|
||||
default:
|
||||
} else {
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
|
|
@ -23,33 +23,19 @@
|
|||
|
||||
static uint16_t sht3xd_temp_processed_to_raw(const struct sensor_value *val)
|
||||
{
|
||||
uint32_t val2;
|
||||
uint64_t uval;
|
||||
|
||||
if (val->type == SENSOR_VALUE_TYPE_INT) {
|
||||
val2 = 0;
|
||||
} else {
|
||||
val2 = val->val2;
|
||||
}
|
||||
|
||||
/* ret = (val + 45) * (2^16 - 1) / 175 */
|
||||
uval = (uint64_t)(val->val1 + 45) * 1000000 + val2;
|
||||
uval = (uint64_t)(val->val1 + 45) * 1000000 + val->val2;
|
||||
return ((uval * 0xFFFF) / 175) / 1000000;
|
||||
}
|
||||
|
||||
static int sht3xd_rh_processed_to_raw(const struct sensor_value *val)
|
||||
{
|
||||
uint32_t val2;
|
||||
uint64_t uval;
|
||||
|
||||
if (val->type == SENSOR_VALUE_TYPE_INT) {
|
||||
val2 = 0;
|
||||
} else {
|
||||
val2 = val->val2;
|
||||
}
|
||||
|
||||
/* ret = val * (2^16 -1) / 100000 */
|
||||
uval = (uint64_t)val->val1 * 1000000 + val2;
|
||||
uval = (uint64_t)val->val1 * 1000000 + val->val2;
|
||||
return ((uval * 0xFFFF) / 100000) / 1000000;
|
||||
}
|
||||
|
||||
|
@ -61,8 +47,7 @@ int sht3xd_attr_set(struct device *dev,
|
|||
struct sht3xd_data *drv_data = dev->driver_data;
|
||||
uint16_t set_cmd, clear_cmd, reg_val, temp, rh;
|
||||
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT &&
|
||||
val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
return -ENOTSUP;
|
||||
}
|
||||
|
||||
|
|
|
@ -68,9 +68,10 @@ static int sx9500_channel_get(struct device *dev,
|
|||
|
||||
__ASSERT_NO_MSG(chan == SENSOR_CHAN_PROX);
|
||||
|
||||
val->type = SENSOR_VALUE_TYPE_INT;
|
||||
val->type = SENSOR_VALUE_TYPE_INT_PLUS_MICRO;
|
||||
val->val1 = !!(data->prox_stat &
|
||||
(1 << (4 + CONFIG_SX9500_PROX_CHANNEL)));
|
||||
val->val2 = 0;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -110,7 +110,7 @@ static int tmp112_attr_set(struct device *dev,
|
|||
switch (attr) {
|
||||
case SENSOR_ATTR_FULL_SCALE:
|
||||
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT) {
|
||||
if (val->type != SENSOR_VALUE_TYPE_INT_PLUS_MICRO) {
|
||||
return -ENOTSUP;
|
||||
}
|
||||
|
||||
|
|
|
@ -39,8 +39,6 @@ extern "C" {
|
|||
|
||||
/** @brief Sensor value types. */
|
||||
enum sensor_value_type {
|
||||
/** val1 contains an integer value, val2 is unused. */
|
||||
SENSOR_VALUE_TYPE_INT,
|
||||
/**
|
||||
* val1 contains an integer value, val2 is the fractional value.
|
||||
* To obtain the final value, use the formula: val1 + val2 *
|
||||
|
|
|
@ -114,8 +114,9 @@ static void test_trigger_mode(struct device *bmg160)
|
|||
}
|
||||
|
||||
/* set slope duration to 4 samples */
|
||||
attr.type = SENSOR_VALUE_TYPE_INT;
|
||||
attr.type = SENSOR_VALUE_TYPE_INT_PLUS_MICRO;
|
||||
attr.val1 = 4;
|
||||
attr.val2 = 0;
|
||||
|
||||
if (sensor_attr_set(bmg160, SENSOR_CHAN_GYRO_ANY,
|
||||
SENSOR_ATTR_SLOPE_DUR, &attr) < 0) {
|
||||
|
@ -143,7 +144,7 @@ static void test_trigger_mode(struct device *bmg160)
|
|||
|
||||
printf("Gyro: Testing data ready trigger.\n");
|
||||
|
||||
attr.type = SENSOR_VALUE_TYPE_INT;
|
||||
attr.type = SENSOR_VALUE_TYPE_INT_PLUS_MICRO;
|
||||
attr.val1 = 100;
|
||||
attr.val2 = 0;
|
||||
|
||||
|
|
|
@ -135,8 +135,6 @@ static inline int sensor_value_snprintf(char *buf, size_t len,
|
|||
int32_t val1, val2;
|
||||
|
||||
switch (val->type) {
|
||||
case SENSOR_VALUE_TYPE_INT:
|
||||
return snprintf(buf, len, "%d", val->val1);
|
||||
case SENSOR_VALUE_TYPE_INT_PLUS_MICRO:
|
||||
if (val->val2 == 0) {
|
||||
return snprintf(buf, len, "%d", val->val1);
|
||||
|
@ -329,8 +327,9 @@ static void test_anymotion_trigger(struct device *bmi160)
|
|||
*
|
||||
* Allowed values are from 1 to 4.
|
||||
*/
|
||||
attr.type = SENSOR_VALUE_TYPE_INT;
|
||||
attr.type = SENSOR_VALUE_TYPE_INT_PLUS_MICRO;
|
||||
attr.val1 = 2;
|
||||
attr.val2 = 0;
|
||||
if (sensor_attr_set(bmi160, SENSOR_CHAN_ACCEL_ANY,
|
||||
SENSOR_ATTR_SLOPE_DUR, &attr) < 0) {
|
||||
printf("Cannot set anymotion slope duration.\n");
|
||||
|
|
|
@ -49,8 +49,9 @@ void main(void)
|
|||
struct sensor_value val;
|
||||
struct sensor_trigger trig;
|
||||
|
||||
val.type = SENSOR_VALUE_TYPE_INT;
|
||||
val.type = SENSOR_VALUE_TYPE_INT_PLUS_MICRO;
|
||||
val.val1 = 26;
|
||||
val.val2 = 0;
|
||||
|
||||
sensor_attr_set(dev, SENSOR_CHAN_TEMP,
|
||||
SENSOR_ATTR_UPPER_THRESH, &val);
|
||||
|
|
|
@ -21,8 +21,6 @@
|
|||
static double convert_to_double(struct sensor_value *v)
|
||||
{
|
||||
switch (v->type) {
|
||||
case SENSOR_VALUE_TYPE_INT:
|
||||
return v->val1;
|
||||
case SENSOR_VALUE_TYPE_INT_PLUS_MICRO:
|
||||
return v->val1 + ((double)v->val2 / 1000000);
|
||||
case SENSOR_VALUE_TYPE_DOUBLE:
|
||||
|
|
|
@ -26,8 +26,9 @@ static void do_main(struct device *dev)
|
|||
struct sensor_value temp_value;
|
||||
struct sensor_value attr;
|
||||
|
||||
attr.type = SENSOR_VALUE_TYPE_INT;
|
||||
attr.type = SENSOR_VALUE_TYPE_INT_PLUS_MICRO;
|
||||
attr.val1 = 150;
|
||||
attr.val2 = 0;
|
||||
ret = sensor_attr_set(dev, SENSOR_CHAN_TEMP,
|
||||
SENSOR_ATTR_FULL_SCALE, &attr);
|
||||
if (ret) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue