diff options
Diffstat (limited to 'drivers/staging/iio/accel/adis16240_core.c')
-rw-r--r-- | drivers/staging/iio/accel/adis16240_core.c | 29 |
1 files changed, 14 insertions, 15 deletions
diff --git a/drivers/staging/iio/accel/adis16240_core.c b/drivers/staging/iio/accel/adis16240_core.c index 482a762ef1b..134839360d3 100644 --- a/drivers/staging/iio/accel/adis16240_core.c +++ b/drivers/staging/iio/accel/adis16240_core.c | |||
@@ -389,8 +389,7 @@ static int adis16240_read_raw(struct iio_dev *indio_dev, | |||
389 | *val = val16; | 389 | *val = val16; |
390 | mutex_unlock(&indio_dev->mlock); | 390 | mutex_unlock(&indio_dev->mlock); |
391 | return IIO_VAL_INT; | 391 | return IIO_VAL_INT; |
392 | case IIO_CHAN_INFO_SCALE_SEPARATE: | 392 | case IIO_CHAN_INFO_SCALE: |
393 | case IIO_CHAN_INFO_SCALE_SHARED: | ||
394 | switch (chan->type) { | 393 | switch (chan->type) { |
395 | case IIO_VOLTAGE: | 394 | case IIO_VOLTAGE: |
396 | *val = 0; | 395 | *val = 0; |
@@ -411,14 +410,14 @@ static int adis16240_read_raw(struct iio_dev *indio_dev, | |||
411 | return -EINVAL; | 410 | return -EINVAL; |
412 | } | 411 | } |
413 | break; | 412 | break; |
414 | case IIO_CHAN_INFO_PEAK_SCALE_SHARED: | 413 | case IIO_CHAN_INFO_PEAK_SCALE: |
415 | *val = 6; | 414 | *val = 6; |
416 | *val2 = 629295; | 415 | *val2 = 629295; |
417 | return IIO_VAL_INT_PLUS_MICRO; | 416 | return IIO_VAL_INT_PLUS_MICRO; |
418 | case IIO_CHAN_INFO_OFFSET_SEPARATE: | 417 | case IIO_CHAN_INFO_OFFSET: |
419 | *val = 25; | 418 | *val = 25; |
420 | return IIO_VAL_INT; | 419 | return IIO_VAL_INT; |
421 | case IIO_CHAN_INFO_CALIBBIAS_SEPARATE: | 420 | case IIO_CHAN_INFO_CALIBBIAS: |
422 | bits = 10; | 421 | bits = 10; |
423 | mutex_lock(&indio_dev->mlock); | 422 | mutex_lock(&indio_dev->mlock); |
424 | addr = adis16240_addresses[chan->address][1]; | 423 | addr = adis16240_addresses[chan->address][1]; |
@@ -432,7 +431,7 @@ static int adis16240_read_raw(struct iio_dev *indio_dev, | |||
432 | *val = val16; | 431 | *val = val16; |
433 | mutex_unlock(&indio_dev->mlock); | 432 | mutex_unlock(&indio_dev->mlock); |
434 | return IIO_VAL_INT; | 433 | return IIO_VAL_INT; |
435 | case IIO_CHAN_INFO_PEAK_SEPARATE: | 434 | case IIO_CHAN_INFO_PEAK: |
436 | bits = 10; | 435 | bits = 10; |
437 | mutex_lock(&indio_dev->mlock); | 436 | mutex_lock(&indio_dev->mlock); |
438 | addr = adis16240_addresses[chan->address][2]; | 437 | addr = adis16240_addresses[chan->address][2]; |
@@ -460,7 +459,7 @@ static int adis16240_write_raw(struct iio_dev *indio_dev, | |||
460 | s16 val16; | 459 | s16 val16; |
461 | u8 addr; | 460 | u8 addr; |
462 | switch (mask) { | 461 | switch (mask) { |
463 | case IIO_CHAN_INFO_CALIBBIAS_SEPARATE: | 462 | case IIO_CHAN_INFO_CALIBBIAS: |
464 | val16 = val & ((1 << bits) - 1); | 463 | val16 = val & ((1 << bits) - 1); |
465 | addr = adis16240_addresses[chan->address][1]; | 464 | addr = adis16240_addresses[chan->address][1]; |
466 | return adis16240_spi_write_reg_16(indio_dev, addr, val16); | 465 | return adis16240_spi_write_reg_16(indio_dev, addr, val16); |
@@ -470,7 +469,7 @@ static int adis16240_write_raw(struct iio_dev *indio_dev, | |||
470 | 469 | ||
471 | static struct iio_chan_spec adis16240_channels[] = { | 470 | static struct iio_chan_spec adis16240_channels[] = { |
472 | IIO_CHAN(IIO_VOLTAGE, 0, 1, 0, "supply", 0, 0, | 471 | IIO_CHAN(IIO_VOLTAGE, 0, 1, 0, "supply", 0, 0, |
473 | (1 << IIO_CHAN_INFO_SCALE_SEPARATE), | 472 | IIO_CHAN_INFO_SCALE_SEPARATE_BIT, |
474 | in_supply, ADIS16240_SCAN_SUPPLY, | 473 | in_supply, ADIS16240_SCAN_SUPPLY, |
475 | IIO_ST('u', 10, 16, 0), 0), | 474 | IIO_ST('u', 10, 16, 0), 0), |
476 | IIO_CHAN(IIO_VOLTAGE, 0, 1, 0, NULL, 1, 0, | 475 | IIO_CHAN(IIO_VOLTAGE, 0, 1, 0, NULL, 1, 0, |
@@ -478,22 +477,22 @@ static struct iio_chan_spec adis16240_channels[] = { | |||
478 | in_aux, ADIS16240_SCAN_AUX_ADC, | 477 | in_aux, ADIS16240_SCAN_AUX_ADC, |
479 | IIO_ST('u', 10, 16, 0), 0), | 478 | IIO_ST('u', 10, 16, 0), 0), |
480 | IIO_CHAN(IIO_ACCEL, 1, 0, 0, NULL, 0, IIO_MOD_X, | 479 | IIO_CHAN(IIO_ACCEL, 1, 0, 0, NULL, 0, IIO_MOD_X, |
481 | (1 << IIO_CHAN_INFO_SCALE_SHARED) | | 480 | IIO_CHAN_INFO_SCALE_SHARED_BIT | |
482 | (1 << IIO_CHAN_INFO_CALIBBIAS_SEPARATE), | 481 | IIO_CHAN_INFO_CALIBBIAS_SEPARATE_BIT, |
483 | accel_x, ADIS16240_SCAN_ACC_X, | 482 | accel_x, ADIS16240_SCAN_ACC_X, |
484 | IIO_ST('s', 10, 16, 0), 0), | 483 | IIO_ST('s', 10, 16, 0), 0), |
485 | IIO_CHAN(IIO_ACCEL, 1, 0, 0, NULL, 0, IIO_MOD_Y, | 484 | IIO_CHAN(IIO_ACCEL, 1, 0, 0, NULL, 0, IIO_MOD_Y, |
486 | (1 << IIO_CHAN_INFO_SCALE_SHARED) | | 485 | IIO_CHAN_INFO_SCALE_SHARED_BIT | |
487 | (1 << IIO_CHAN_INFO_CALIBBIAS_SEPARATE), | 486 | IIO_CHAN_INFO_CALIBBIAS_SEPARATE_BIT, |
488 | accel_y, ADIS16240_SCAN_ACC_Y, | 487 | accel_y, ADIS16240_SCAN_ACC_Y, |
489 | IIO_ST('s', 10, 16, 0), 0), | 488 | IIO_ST('s', 10, 16, 0), 0), |
490 | IIO_CHAN(IIO_ACCEL, 1, 0, 0, NULL, 0, IIO_MOD_Z, | 489 | IIO_CHAN(IIO_ACCEL, 1, 0, 0, NULL, 0, IIO_MOD_Z, |
491 | (1 << IIO_CHAN_INFO_SCALE_SHARED) | | 490 | IIO_CHAN_INFO_SCALE_SHARED_BIT | |
492 | (1 << IIO_CHAN_INFO_CALIBBIAS_SEPARATE), | 491 | IIO_CHAN_INFO_CALIBBIAS_SEPARATE_BIT, |
493 | accel_z, ADIS16240_SCAN_ACC_Z, | 492 | accel_z, ADIS16240_SCAN_ACC_Z, |
494 | IIO_ST('s', 10, 16, 0), 0), | 493 | IIO_ST('s', 10, 16, 0), 0), |
495 | IIO_CHAN(IIO_TEMP, 0, 1, 0, NULL, 0, 0, | 494 | IIO_CHAN(IIO_TEMP, 0, 1, 0, NULL, 0, 0, |
496 | (1 << IIO_CHAN_INFO_SCALE_SEPARATE), | 495 | IIO_CHAN_INFO_SCALE_SEPARATE_BIT, |
497 | temp, ADIS16240_SCAN_TEMP, | 496 | temp, ADIS16240_SCAN_TEMP, |
498 | IIO_ST('u', 10, 16, 0), 0), | 497 | IIO_ST('u', 10, 16, 0), 0), |
499 | IIO_CHAN_SOFT_TIMESTAMP(6) | 498 | IIO_CHAN_SOFT_TIMESTAMP(6) |