aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/iio/accel/adis16240_core.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/iio/accel/adis16240_core.c')
-rw-r--r--drivers/staging/iio/accel/adis16240_core.c29
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
471static struct iio_chan_spec adis16240_channels[] = { 470static 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)