diff options
author | Jonathan Cameron <jic23@cam.ac.uk> | 2010-09-21 09:40:56 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-09-21 13:34:41 -0400 |
commit | 44f270de711dcaf595786f2318b36f9b4f007338 (patch) | |
tree | b3d90fa6838e01f36d34ca982d445c2642f70686 /drivers/staging | |
parent | 5df2145c8c37af0cc7c10009eea86c493cc434a5 (diff) |
staging: iio: Remove unused bit_count from struct iio_scan_el
The job this was intended to do (never implemented) is now done
by explicit definition of _type attributes in all drivers
Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Manuel Stahl <manuel.stahl@iis.fraunhofer.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging')
-rw-r--r-- | drivers/staging/iio/accel/adis16209_ring.c | 21 | ||||
-rw-r--r-- | drivers/staging/iio/accel/adis16240_ring.c | 18 | ||||
-rw-r--r-- | drivers/staging/iio/accel/lis3l02dq_ring.c | 6 | ||||
-rw-r--r-- | drivers/staging/iio/accel/sca3000_ring.c | 6 | ||||
-rw-r--r-- | drivers/staging/iio/adc/max1363_core.c | 7 | ||||
-rw-r--r-- | drivers/staging/iio/gyro/adis16260_ring.c | 14 | ||||
-rw-r--r-- | drivers/staging/iio/imu/adis16300_ring.c | 26 | ||||
-rw-r--r-- | drivers/staging/iio/imu/adis16350_ring.c | 32 | ||||
-rw-r--r-- | drivers/staging/iio/imu/adis16400_ring.c | 35 | ||||
-rw-r--r-- | drivers/staging/iio/ring_generic.h | 17 |
10 files changed, 66 insertions, 116 deletions
diff --git a/drivers/staging/iio/accel/adis16209_ring.c b/drivers/staging/iio/accel/adis16209_ring.c index 6837f8bba3a..8dd28812214 100644 --- a/drivers/staging/iio/accel/adis16209_ring.c +++ b/drivers/staging/iio/accel/adis16209_ring.c | |||
@@ -17,27 +17,22 @@ | |||
17 | #include "../trigger.h" | 17 | #include "../trigger.h" |
18 | #include "adis16209.h" | 18 | #include "adis16209.h" |
19 | 19 | ||
20 | static IIO_SCAN_EL_C(in_supply, ADIS16209_SCAN_SUPPLY, IIO_UNSIGNED(14), | 20 | static IIO_SCAN_EL_C(in_supply, ADIS16209_SCAN_SUPPLY, |
21 | ADIS16209_SUPPLY_OUT, NULL); | 21 | ADIS16209_SUPPLY_OUT, NULL); |
22 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in_supply, u, 14, 16) | 22 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in_supply, u, 14, 16) |
23 | static IIO_SCAN_EL_C(accel_x, ADIS16209_SCAN_ACC_X, IIO_SIGNED(14), | 23 | static IIO_SCAN_EL_C(accel_x, ADIS16209_SCAN_ACC_X, ADIS16209_XACCL_OUT, NULL); |
24 | ADIS16209_XACCL_OUT, NULL); | 24 | static IIO_SCAN_EL_C(accel_y, ADIS16209_SCAN_ACC_Y, ADIS16209_YACCL_OUT, NULL); |
25 | static IIO_SCAN_EL_C(accel_y, ADIS16209_SCAN_ACC_Y, IIO_SIGNED(14), | ||
26 | ADIS16209_YACCL_OUT, NULL); | ||
27 | static IIO_CONST_ATTR_SCAN_EL_TYPE(accel, s, 14, 16); | 25 | static IIO_CONST_ATTR_SCAN_EL_TYPE(accel, s, 14, 16); |
28 | static IIO_SCAN_EL_C(in0, ADIS16209_SCAN_AUX_ADC, IIO_UNSIGNED(12), | 26 | static IIO_SCAN_EL_C(in0, ADIS16209_SCAN_AUX_ADC, ADIS16209_AUX_ADC, NULL); |
29 | ADIS16209_AUX_ADC, NULL); | ||
30 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in0, u, 12, 16); | 27 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in0, u, 12, 16); |
31 | static IIO_SCAN_EL_C(temp, ADIS16209_SCAN_TEMP, IIO_UNSIGNED(12), | 28 | static IIO_SCAN_EL_C(temp, ADIS16209_SCAN_TEMP, ADIS16209_TEMP_OUT, NULL); |
32 | ADIS16209_TEMP_OUT, NULL); | ||
33 | static IIO_CONST_ATTR_SCAN_EL_TYPE(temp, u, 12, 16); | 29 | static IIO_CONST_ATTR_SCAN_EL_TYPE(temp, u, 12, 16); |
34 | static IIO_SCAN_EL_C(incli_x, ADIS16209_SCAN_INCLI_X, IIO_SIGNED(14), | 30 | static IIO_SCAN_EL_C(incli_x, ADIS16209_SCAN_INCLI_X, |
35 | ADIS16209_XINCL_OUT, NULL); | 31 | ADIS16209_XINCL_OUT, NULL); |
36 | static IIO_SCAN_EL_C(incli_y, ADIS16209_SCAN_INCLI_Y, IIO_SIGNED(14), | 32 | static IIO_SCAN_EL_C(incli_y, ADIS16209_SCAN_INCLI_Y, |
37 | ADIS16209_YINCL_OUT, NULL); | 33 | ADIS16209_YINCL_OUT, NULL); |
38 | static IIO_CONST_ATTR_SCAN_EL_TYPE(incli, s, 14, 16); | 34 | static IIO_CONST_ATTR_SCAN_EL_TYPE(incli, s, 14, 16); |
39 | static IIO_SCAN_EL_C(rot, ADIS16209_SCAN_ROT, IIO_SIGNED(14), | 35 | static IIO_SCAN_EL_C(rot, ADIS16209_SCAN_ROT, ADIS16209_ROT_OUT, NULL); |
40 | ADIS16209_ROT_OUT, NULL); | ||
41 | static IIO_CONST_ATTR_SCAN_EL_TYPE(rot, s, 14, 16); | 36 | static IIO_CONST_ATTR_SCAN_EL_TYPE(rot, s, 14, 16); |
42 | static IIO_SCAN_EL_TIMESTAMP(8); | 37 | static IIO_SCAN_EL_TIMESTAMP(8); |
43 | static IIO_CONST_ATTR_SCAN_EL_TYPE(timestamp, s, 64, 64); | 38 | static IIO_CONST_ATTR_SCAN_EL_TYPE(timestamp, s, 64, 64); |
diff --git a/drivers/staging/iio/accel/adis16240_ring.c b/drivers/staging/iio/accel/adis16240_ring.c index b858d305581..ae022683515 100644 --- a/drivers/staging/iio/accel/adis16240_ring.c +++ b/drivers/staging/iio/accel/adis16240_ring.c | |||
@@ -17,23 +17,17 @@ | |||
17 | #include "../trigger.h" | 17 | #include "../trigger.h" |
18 | #include "adis16240.h" | 18 | #include "adis16240.h" |
19 | 19 | ||
20 | static IIO_SCAN_EL_C(in_supply, ADIS16240_SCAN_SUPPLY, IIO_UNSIGNED(10), | 20 | static IIO_SCAN_EL_C(in_supply, ADIS16240_SCAN_SUPPLY, |
21 | ADIS16240_SUPPLY_OUT, NULL); | 21 | ADIS16240_SUPPLY_OUT, NULL); |
22 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in_supply, u, 10, 16); | 22 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in_supply, u, 10, 16); |
23 | static IIO_SCAN_EL_C(accel_x, ADIS16240_SCAN_ACC_X, IIO_SIGNED(10), | 23 | static IIO_SCAN_EL_C(accel_x, ADIS16240_SCAN_ACC_X, ADIS16240_XACCL_OUT, NULL); |
24 | ADIS16240_XACCL_OUT, NULL); | 24 | static IIO_SCAN_EL_C(accel_y, ADIS16240_SCAN_ACC_Y, ADIS16240_YACCL_OUT, NULL); |
25 | static IIO_SCAN_EL_C(accel_y, ADIS16240_SCAN_ACC_Y, IIO_SIGNED(10), | 25 | static IIO_SCAN_EL_C(accel_z, ADIS16240_SCAN_ACC_Z, ADIS16240_ZACCL_OUT, NULL); |
26 | ADIS16240_YACCL_OUT, NULL); | ||
27 | static IIO_SCAN_EL_C(accel_z, ADIS16240_SCAN_ACC_Z, IIO_SIGNED(10), | ||
28 | ADIS16240_ZACCL_OUT, NULL); | ||
29 | static IIO_CONST_ATTR_SCAN_EL_TYPE(accel, s, 10, 16); | 26 | static IIO_CONST_ATTR_SCAN_EL_TYPE(accel, s, 10, 16); |
30 | static IIO_SCAN_EL_C(in0, ADIS16240_SCAN_AUX_ADC, IIO_UNSIGNED(10), | 27 | static IIO_SCAN_EL_C(in0, ADIS16240_SCAN_AUX_ADC, ADIS16240_AUX_ADC, NULL); |
31 | ADIS16240_AUX_ADC, NULL); | ||
32 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in0, u, 10, 16); | 28 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in0, u, 10, 16); |
33 | static IIO_SCAN_EL_C(temp, ADIS16240_SCAN_TEMP, IIO_UNSIGNED(10), | 29 | static IIO_SCAN_EL_C(temp, ADIS16240_SCAN_TEMP, ADIS16240_TEMP_OUT, NULL); |
34 | ADIS16240_TEMP_OUT, NULL); | ||
35 | static IIO_CONST_ATTR_SCAN_EL_TYPE(temp, u, 10, 16); | 30 | static IIO_CONST_ATTR_SCAN_EL_TYPE(temp, u, 10, 16); |
36 | |||
37 | static IIO_SCAN_EL_TIMESTAMP(6); | 31 | static IIO_SCAN_EL_TIMESTAMP(6); |
38 | static IIO_CONST_ATTR_SCAN_EL_TYPE(timestamp, s, 64, 64); | 32 | static IIO_CONST_ATTR_SCAN_EL_TYPE(timestamp, s, 64, 64); |
39 | 33 | ||
diff --git a/drivers/staging/iio/accel/lis3l02dq_ring.c b/drivers/staging/iio/accel/lis3l02dq_ring.c index 28a54f188d6..40cf6703e7b 100644 --- a/drivers/staging/iio/accel/lis3l02dq_ring.c +++ b/drivers/staging/iio/accel/lis3l02dq_ring.c | |||
@@ -75,13 +75,13 @@ error_ret: | |||
75 | return ret; | 75 | return ret; |
76 | 76 | ||
77 | } | 77 | } |
78 | static IIO_SCAN_EL_C(accel_x, 0, IIO_SIGNED(16), | 78 | static IIO_SCAN_EL_C(accel_x, 0, |
79 | LIS3L02DQ_REG_OUT_X_L_ADDR, | 79 | LIS3L02DQ_REG_OUT_X_L_ADDR, |
80 | &lis3l02dq_scan_el_set_state); | 80 | &lis3l02dq_scan_el_set_state); |
81 | static IIO_SCAN_EL_C(accel_y, 1, IIO_SIGNED(16), | 81 | static IIO_SCAN_EL_C(accel_y, 1, |
82 | LIS3L02DQ_REG_OUT_Y_L_ADDR, | 82 | LIS3L02DQ_REG_OUT_Y_L_ADDR, |
83 | &lis3l02dq_scan_el_set_state); | 83 | &lis3l02dq_scan_el_set_state); |
84 | static IIO_SCAN_EL_C(accel_z, 2, IIO_SIGNED(16), | 84 | static IIO_SCAN_EL_C(accel_z, 2, |
85 | LIS3L02DQ_REG_OUT_Z_L_ADDR, | 85 | LIS3L02DQ_REG_OUT_Z_L_ADDR, |
86 | &lis3l02dq_scan_el_set_state); | 86 | &lis3l02dq_scan_el_set_state); |
87 | static IIO_CONST_ATTR_SCAN_EL_TYPE(accel, s, 12, 16); | 87 | static IIO_CONST_ATTR_SCAN_EL_TYPE(accel, s, 12, 16); |
diff --git a/drivers/staging/iio/accel/sca3000_ring.c b/drivers/staging/iio/accel/sca3000_ring.c index 15b91e1a4a8..003097d9201 100644 --- a/drivers/staging/iio/accel/sca3000_ring.c +++ b/drivers/staging/iio/accel/sca3000_ring.c | |||
@@ -194,9 +194,9 @@ error_ret: | |||
194 | return ret ? ret : len; | 194 | return ret ? ret : len; |
195 | } | 195 | } |
196 | 196 | ||
197 | static IIO_SCAN_EL_C(accel_x, 0, 0, 0, NULL); | 197 | static IIO_SCAN_EL_C(accel_x, 0, 0, NULL); |
198 | static IIO_SCAN_EL_C(accel_y, 1, 0, 0, NULL); | 198 | static IIO_SCAN_EL_C(accel_y, 1, 0, NULL); |
199 | static IIO_SCAN_EL_C(accel_z, 2, 0, 0, NULL); | 199 | static IIO_SCAN_EL_C(accel_z, 2, 0, NULL); |
200 | static IIO_CONST_ATTR(accel_type_available, "s8/8 s11/16"); | 200 | static IIO_CONST_ATTR(accel_type_available, "s8/8 s11/16"); |
201 | static IIO_DEVICE_ATTR(accel_type, | 201 | static IIO_DEVICE_ATTR(accel_type, |
202 | S_IRUGO | S_IWUSR, | 202 | S_IRUGO | S_IWUSR, |
diff --git a/drivers/staging/iio/adc/max1363_core.c b/drivers/staging/iio/adc/max1363_core.c index 40039e668bf..d59a8d2f420 100644 --- a/drivers/staging/iio/adc/max1363_core.c +++ b/drivers/staging/iio/adc/max1363_core.c | |||
@@ -42,11 +42,10 @@ | |||
42 | /* Here we claim all are 16 bits. This currently does no harm and saves | 42 | /* Here we claim all are 16 bits. This currently does no harm and saves |
43 | * us a lot of scan element listings */ | 43 | * us a lot of scan element listings */ |
44 | 44 | ||
45 | #define MAX1363_SCAN_EL(number) \ | 45 | #define MAX1363_SCAN_EL(number) \ |
46 | IIO_SCAN_EL_C(in##number, number, IIO_UNSIGNED(16), 0, NULL); | 46 | IIO_SCAN_EL_C(in##number, number, 0, NULL); |
47 | #define MAX1363_SCAN_EL_D(p, n, number) \ | 47 | #define MAX1363_SCAN_EL_D(p, n, number) \ |
48 | IIO_SCAN_NAMED_EL_C(in##p##m##in##n, in##p-in##n, \ | 48 | IIO_SCAN_NAMED_EL_C(in##p##m##in##n, in##p-in##n, number, 0, NULL); |
49 | number, IIO_SIGNED(16), 0, NULL); | ||
50 | 49 | ||
51 | static MAX1363_SCAN_EL(0); | 50 | static MAX1363_SCAN_EL(0); |
52 | static MAX1363_SCAN_EL(1); | 51 | static MAX1363_SCAN_EL(1); |
diff --git a/drivers/staging/iio/gyro/adis16260_ring.c b/drivers/staging/iio/gyro/adis16260_ring.c index 4b96394d1ac..77dca37c9e9 100644 --- a/drivers/staging/iio/gyro/adis16260_ring.c +++ b/drivers/staging/iio/gyro/adis16260_ring.c | |||
@@ -17,20 +17,16 @@ | |||
17 | #include "../trigger.h" | 17 | #include "../trigger.h" |
18 | #include "adis16260.h" | 18 | #include "adis16260.h" |
19 | 19 | ||
20 | static IIO_SCAN_EL_C(in_supply, ADIS16260_SCAN_SUPPLY, IIO_UNSIGNED(12), | 20 | static IIO_SCAN_EL_C(in_supply, ADIS16260_SCAN_SUPPLY, |
21 | ADIS16260_SUPPLY_OUT, NULL); | 21 | ADIS16260_SUPPLY_OUT, NULL); |
22 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in_supply, u, 12, 16); | 22 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in_supply, u, 12, 16); |
23 | static IIO_SCAN_EL_C(gyro, ADIS16260_SCAN_GYRO, IIO_SIGNED(14), | 23 | static IIO_SCAN_EL_C(gyro, ADIS16260_SCAN_GYRO, ADIS16260_GYRO_OUT, NULL); |
24 | ADIS16260_GYRO_OUT, NULL); | ||
25 | static IIO_CONST_ATTR_SCAN_EL_TYPE(gyro, s, 14, 16); | 24 | static IIO_CONST_ATTR_SCAN_EL_TYPE(gyro, s, 14, 16); |
26 | static IIO_SCAN_EL_C(in0, ADIS16260_SCAN_AUX_ADC, IIO_SIGNED(14), | 25 | static IIO_SCAN_EL_C(in0, ADIS16260_SCAN_AUX_ADC, ADIS16260_AUX_ADC, NULL); |
27 | ADIS16260_AUX_ADC, NULL); | ||
28 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in0, u, 12, 16); | 26 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in0, u, 12, 16); |
29 | static IIO_SCAN_EL_C(temp, ADIS16260_SCAN_TEMP, IIO_UNSIGNED(12), | 27 | static IIO_SCAN_EL_C(temp, ADIS16260_SCAN_TEMP, ADIS16260_TEMP_OUT, NULL); |
30 | ADIS16260_TEMP_OUT, NULL); | ||
31 | static IIO_CONST_ATTR_SCAN_EL_TYPE(temp, u, 12, 16); | 28 | static IIO_CONST_ATTR_SCAN_EL_TYPE(temp, u, 12, 16); |
32 | static IIO_SCAN_EL_C(angl, ADIS16260_SCAN_ANGL, IIO_UNSIGNED(12), | 29 | static IIO_SCAN_EL_C(angl, ADIS16260_SCAN_ANGL, ADIS16260_ANGL_OUT, NULL); |
33 | ADIS16260_ANGL_OUT, NULL); | ||
34 | static IIO_CONST_ATTR_SCAN_EL_TYPE(angl, u, 14, 16); | 30 | static IIO_CONST_ATTR_SCAN_EL_TYPE(angl, u, 14, 16); |
35 | static IIO_SCAN_EL_TIMESTAMP(5); | 31 | static IIO_SCAN_EL_TIMESTAMP(5); |
36 | static IIO_CONST_ATTR_SCAN_EL_TYPE(timestamp, s, 64, 64); | 32 | static IIO_CONST_ATTR_SCAN_EL_TYPE(timestamp, s, 64, 64); |
diff --git a/drivers/staging/iio/imu/adis16300_ring.c b/drivers/staging/iio/imu/adis16300_ring.c index 3f67858fff8..b3a1e7514a5 100644 --- a/drivers/staging/iio/imu/adis16300_ring.c +++ b/drivers/staging/iio/imu/adis16300_ring.c | |||
@@ -17,40 +17,32 @@ | |||
17 | #include "../trigger.h" | 17 | #include "../trigger.h" |
18 | #include "adis16300.h" | 18 | #include "adis16300.h" |
19 | 19 | ||
20 | static IIO_SCAN_EL_C(in_supply, ADIS16300_SCAN_SUPPLY, IIO_UNSIGNED(14), | 20 | static IIO_SCAN_EL_C(in_supply, ADIS16300_SCAN_SUPPLY, |
21 | ADIS16300_SUPPLY_OUT, NULL); | 21 | ADIS16300_SUPPLY_OUT, NULL); |
22 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in_supply, u, 12, 16); | 22 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in_supply, u, 12, 16); |
23 | 23 | static IIO_SCAN_EL_C(gyro_x, ADIS16300_SCAN_GYRO_X, ADIS16300_XGYRO_OUT, NULL); | |
24 | static IIO_SCAN_EL_C(gyro_x, ADIS16300_SCAN_GYRO_X, IIO_SIGNED(14), | ||
25 | ADIS16300_XGYRO_OUT, NULL); | ||
26 | static IIO_CONST_ATTR_SCAN_EL_TYPE(gyro, s, 14, 16); | 24 | static IIO_CONST_ATTR_SCAN_EL_TYPE(gyro, s, 14, 16); |
27 | 25 | ||
28 | static IIO_SCAN_EL_C(accel_x, ADIS16300_SCAN_ACC_X, IIO_SIGNED(14), | 26 | static IIO_SCAN_EL_C(accel_x, ADIS16300_SCAN_ACC_X, ADIS16300_XACCL_OUT, NULL); |
29 | ADIS16300_XACCL_OUT, NULL); | 27 | static IIO_SCAN_EL_C(accel_y, ADIS16300_SCAN_ACC_Y, ADIS16300_YACCL_OUT, NULL); |
30 | static IIO_SCAN_EL_C(accel_y, ADIS16300_SCAN_ACC_Y, IIO_SIGNED(14), | 28 | static IIO_SCAN_EL_C(accel_z, ADIS16300_SCAN_ACC_Z, ADIS16300_ZACCL_OUT, NULL); |
31 | ADIS16300_YACCL_OUT, NULL); | ||
32 | static IIO_SCAN_EL_C(accel_z, ADIS16300_SCAN_ACC_Z, IIO_SIGNED(14), | ||
33 | ADIS16300_ZACCL_OUT, NULL); | ||
34 | static IIO_CONST_ATTR_SCAN_EL_TYPE(accel, s, 14, 16); | 29 | static IIO_CONST_ATTR_SCAN_EL_TYPE(accel, s, 14, 16); |
35 | 30 | ||
36 | static IIO_SCAN_EL_C(temp, ADIS16300_SCAN_TEMP, IIO_UNSIGNED(12), | 31 | static IIO_SCAN_EL_C(temp, ADIS16300_SCAN_TEMP, ADIS16300_TEMP_OUT, NULL); |
37 | ADIS16300_TEMP_OUT, NULL); | ||
38 | static IIO_CONST_ATTR_SCAN_EL_TYPE(temp, s, 12, 16); | 32 | static IIO_CONST_ATTR_SCAN_EL_TYPE(temp, s, 12, 16); |
39 | 33 | ||
40 | static IIO_SCAN_EL_C(in0, ADIS16300_SCAN_ADC_0, IIO_UNSIGNED(12), | 34 | static IIO_SCAN_EL_C(in0, ADIS16300_SCAN_ADC_0, ADIS16300_AUX_ADC, NULL); |
41 | ADIS16300_AUX_ADC, NULL); | ||
42 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in0, u, 12, 16); | 35 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in0, u, 12, 16); |
43 | 36 | ||
44 | static IIO_SCAN_EL_C(incli_x, ADIS16300_SCAN_INCLI_X, IIO_SIGNED(12), | 37 | static IIO_SCAN_EL_C(incli_x, ADIS16300_SCAN_INCLI_X, |
45 | ADIS16300_XINCLI_OUT, NULL); | 38 | ADIS16300_XINCLI_OUT, NULL); |
46 | static IIO_SCAN_EL_C(incli_y, ADIS16300_SCAN_INCLI_Y, IIO_SIGNED(12), | 39 | static IIO_SCAN_EL_C(incli_y, ADIS16300_SCAN_INCLI_Y, |
47 | ADIS16300_YINCLI_OUT, NULL); | 40 | ADIS16300_YINCLI_OUT, NULL); |
48 | static IIO_CONST_ATTR_SCAN_EL_TYPE(incli, s, 13, 16); | 41 | static IIO_CONST_ATTR_SCAN_EL_TYPE(incli, s, 13, 16); |
49 | 42 | ||
50 | static IIO_SCAN_EL_TIMESTAMP(9); | 43 | static IIO_SCAN_EL_TIMESTAMP(9); |
51 | static IIO_CONST_ATTR_SCAN_EL_TYPE(timestamp, s, 64, 64); | 44 | static IIO_CONST_ATTR_SCAN_EL_TYPE(timestamp, s, 64, 64); |
52 | 45 | ||
53 | |||
54 | static struct attribute *adis16300_scan_el_attrs[] = { | 46 | static struct attribute *adis16300_scan_el_attrs[] = { |
55 | &iio_scan_el_in_supply.dev_attr.attr, | 47 | &iio_scan_el_in_supply.dev_attr.attr, |
56 | &iio_const_attr_in_supply_type.dev_attr.attr, | 48 | &iio_const_attr_in_supply_type.dev_attr.attr, |
diff --git a/drivers/staging/iio/imu/adis16350_ring.c b/drivers/staging/iio/imu/adis16350_ring.c index ccd6c95fc14..60331bfbc9f 100644 --- a/drivers/staging/iio/imu/adis16350_ring.c +++ b/drivers/staging/iio/imu/adis16350_ring.c | |||
@@ -17,36 +17,26 @@ | |||
17 | #include "../trigger.h" | 17 | #include "../trigger.h" |
18 | #include "adis16350.h" | 18 | #include "adis16350.h" |
19 | 19 | ||
20 | static IIO_SCAN_EL_C(in_supply, ADIS16350_SCAN_SUPPLY, IIO_UNSIGNED(12), | 20 | static IIO_SCAN_EL_C(in_supply, ADIS16350_SCAN_SUPPLY, |
21 | ADIS16350_SUPPLY_OUT, NULL); | 21 | ADIS16350_SUPPLY_OUT, NULL); |
22 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in_supply, u, 12, 16); | 22 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in_supply, u, 12, 16); |
23 | 23 | ||
24 | static IIO_SCAN_EL_C(gyro_x, ADIS16350_SCAN_GYRO_X, IIO_SIGNED(14), | 24 | static IIO_SCAN_EL_C(gyro_x, ADIS16350_SCAN_GYRO_X, ADIS16350_XGYRO_OUT, NULL); |
25 | ADIS16350_XGYRO_OUT, NULL); | 25 | static IIO_SCAN_EL_C(gyro_y, ADIS16350_SCAN_GYRO_Y, ADIS16350_YGYRO_OUT, NULL); |
26 | static IIO_SCAN_EL_C(gyro_y, ADIS16350_SCAN_GYRO_Y, IIO_SIGNED(14), | 26 | static IIO_SCAN_EL_C(gyro_z, ADIS16350_SCAN_GYRO_Z, ADIS16350_ZGYRO_OUT, NULL); |
27 | ADIS16350_YGYRO_OUT, NULL); | ||
28 | static IIO_SCAN_EL_C(gyro_z, ADIS16350_SCAN_GYRO_Z, IIO_SIGNED(14), | ||
29 | ADIS16350_ZGYRO_OUT, NULL); | ||
30 | static IIO_CONST_ATTR_SCAN_EL_TYPE(gyro, s, 14, 16); | 27 | static IIO_CONST_ATTR_SCAN_EL_TYPE(gyro, s, 14, 16); |
31 | 28 | ||
32 | static IIO_SCAN_EL_C(accel_x, ADIS16350_SCAN_ACC_X, IIO_SIGNED(14), | 29 | static IIO_SCAN_EL_C(accel_x, ADIS16350_SCAN_ACC_X, ADIS16350_XACCL_OUT, NULL); |
33 | ADIS16350_XACCL_OUT, NULL); | 30 | static IIO_SCAN_EL_C(accel_y, ADIS16350_SCAN_ACC_Y, ADIS16350_YACCL_OUT, NULL); |
34 | static IIO_SCAN_EL_C(accel_y, ADIS16350_SCAN_ACC_Y, IIO_SIGNED(14), | 31 | static IIO_SCAN_EL_C(accel_z, ADIS16350_SCAN_ACC_Z, ADIS16350_ZACCL_OUT, NULL); |
35 | ADIS16350_YACCL_OUT, NULL); | ||
36 | static IIO_SCAN_EL_C(accel_z, ADIS16350_SCAN_ACC_Z, IIO_SIGNED(14), | ||
37 | ADIS16350_ZACCL_OUT, NULL); | ||
38 | static IIO_CONST_ATTR_SCAN_EL_TYPE(accel, s, 14, 16); | 32 | static IIO_CONST_ATTR_SCAN_EL_TYPE(accel, s, 14, 16); |
39 | 33 | ||
40 | static IIO_SCAN_EL_C(temp_x, ADIS16350_SCAN_TEMP_X, IIO_SIGNED(12), | 34 | static IIO_SCAN_EL_C(temp_x, ADIS16350_SCAN_TEMP_X, ADIS16350_XTEMP_OUT, NULL); |
41 | ADIS16350_XTEMP_OUT, NULL); | 35 | static IIO_SCAN_EL_C(temp_y, ADIS16350_SCAN_TEMP_Y, ADIS16350_YTEMP_OUT, NULL); |
42 | static IIO_SCAN_EL_C(temp_y, ADIS16350_SCAN_TEMP_Y, IIO_SIGNED(12), | 36 | static IIO_SCAN_EL_C(temp_z, ADIS16350_SCAN_TEMP_Z, ADIS16350_ZTEMP_OUT, NULL); |
43 | ADIS16350_YTEMP_OUT, NULL); | ||
44 | static IIO_SCAN_EL_C(temp_z, ADIS16350_SCAN_TEMP_Z, IIO_SIGNED(12), | ||
45 | ADIS16350_ZTEMP_OUT, NULL); | ||
46 | static IIO_CONST_ATTR_SCAN_EL_TYPE(temp, s, 12, 16); | 37 | static IIO_CONST_ATTR_SCAN_EL_TYPE(temp, s, 12, 16); |
47 | 38 | ||
48 | static IIO_SCAN_EL_C(in0, ADIS16350_SCAN_ADC_0, IIO_UNSIGNED(12), | 39 | static IIO_SCAN_EL_C(in0, ADIS16350_SCAN_ADC_0, ADIS16350_AUX_ADC, NULL); |
49 | ADIS16350_AUX_ADC, NULL); | ||
50 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in0, u, 12, 16); | 40 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in0, u, 12, 16); |
51 | 41 | ||
52 | static IIO_SCAN_EL_TIMESTAMP(11); | 42 | static IIO_SCAN_EL_TIMESTAMP(11); |
diff --git a/drivers/staging/iio/imu/adis16400_ring.c b/drivers/staging/iio/imu/adis16400_ring.c index 5a8219b1ae0..42703da5fa0 100644 --- a/drivers/staging/iio/imu/adis16400_ring.c +++ b/drivers/staging/iio/imu/adis16400_ring.c | |||
@@ -17,40 +17,29 @@ | |||
17 | #include "../trigger.h" | 17 | #include "../trigger.h" |
18 | #include "adis16400.h" | 18 | #include "adis16400.h" |
19 | 19 | ||
20 | static IIO_SCAN_EL_C(in_supply, ADIS16400_SCAN_SUPPLY, IIO_SIGNED(14), | 20 | static IIO_SCAN_EL_C(in_supply, ADIS16400_SCAN_SUPPLY, |
21 | ADIS16400_SUPPLY_OUT, NULL); | 21 | ADIS16400_SUPPLY_OUT, NULL); |
22 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in_supply, u, 14, 16); | 22 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in_supply, u, 14, 16); |
23 | 23 | ||
24 | static IIO_SCAN_EL_C(gyro_x, ADIS16400_SCAN_GYRO_X, IIO_SIGNED(14), | 24 | static IIO_SCAN_EL_C(gyro_x, ADIS16400_SCAN_GYRO_X, ADIS16400_XGYRO_OUT, NULL); |
25 | ADIS16400_XGYRO_OUT, NULL); | 25 | static IIO_SCAN_EL_C(gyro_y, ADIS16400_SCAN_GYRO_Y, ADIS16400_YGYRO_OUT, NULL); |
26 | static IIO_SCAN_EL_C(gyro_y, ADIS16400_SCAN_GYRO_Y, IIO_SIGNED(14), | 26 | static IIO_SCAN_EL_C(gyro_z, ADIS16400_SCAN_GYRO_Z, ADIS16400_ZGYRO_OUT, NULL); |
27 | ADIS16400_YGYRO_OUT, NULL); | ||
28 | static IIO_SCAN_EL_C(gyro_z, ADIS16400_SCAN_GYRO_Z, IIO_SIGNED(14), | ||
29 | ADIS16400_ZGYRO_OUT, NULL); | ||
30 | static IIO_CONST_ATTR_SCAN_EL_TYPE(gyro, s, 14, 16); | 27 | static IIO_CONST_ATTR_SCAN_EL_TYPE(gyro, s, 14, 16); |
31 | 28 | ||
32 | static IIO_SCAN_EL_C(accel_x, ADIS16400_SCAN_ACC_X, IIO_SIGNED(14), | 29 | static IIO_SCAN_EL_C(accel_x, ADIS16400_SCAN_ACC_X, ADIS16400_XACCL_OUT, NULL); |
33 | ADIS16400_XACCL_OUT, NULL); | 30 | static IIO_SCAN_EL_C(accel_y, ADIS16400_SCAN_ACC_Y, ADIS16400_YACCL_OUT, NULL); |
34 | static IIO_SCAN_EL_C(accel_y, ADIS16400_SCAN_ACC_Y, IIO_SIGNED(14), | 31 | static IIO_SCAN_EL_C(accel_z, ADIS16400_SCAN_ACC_Z, ADIS16400_ZACCL_OUT, NULL); |
35 | ADIS16400_YACCL_OUT, NULL); | ||
36 | static IIO_SCAN_EL_C(accel_z, ADIS16400_SCAN_ACC_Z, IIO_SIGNED(14), | ||
37 | ADIS16400_ZACCL_OUT, NULL); | ||
38 | static IIO_CONST_ATTR_SCAN_EL_TYPE(accel, s, 14, 16); | 32 | static IIO_CONST_ATTR_SCAN_EL_TYPE(accel, s, 14, 16); |
39 | 33 | ||
40 | static IIO_SCAN_EL_C(magn_x, ADIS16400_SCAN_MAGN_X, IIO_SIGNED(14), | 34 | static IIO_SCAN_EL_C(magn_x, ADIS16400_SCAN_MAGN_X, ADIS16400_XMAGN_OUT, NULL); |
41 | ADIS16400_XMAGN_OUT, NULL); | 35 | static IIO_SCAN_EL_C(magn_y, ADIS16400_SCAN_MAGN_Y, ADIS16400_YMAGN_OUT, NULL); |
42 | static IIO_SCAN_EL_C(magn_y, ADIS16400_SCAN_MAGN_Y, IIO_SIGNED(14), | 36 | static IIO_SCAN_EL_C(magn_z, ADIS16400_SCAN_MAGN_Z, ADIS16400_ZMAGN_OUT, NULL); |
43 | ADIS16400_YMAGN_OUT, NULL); | ||
44 | static IIO_SCAN_EL_C(magn_z, ADIS16400_SCAN_MAGN_Z, IIO_SIGNED(14), | ||
45 | ADIS16400_ZMAGN_OUT, NULL); | ||
46 | static IIO_CONST_ATTR_SCAN_EL_TYPE(magn, s, 14, 16); | 37 | static IIO_CONST_ATTR_SCAN_EL_TYPE(magn, s, 14, 16); |
47 | 38 | ||
48 | static IIO_SCAN_EL_C(temp, ADIS16400_SCAN_TEMP, IIO_SIGNED(12), | 39 | static IIO_SCAN_EL_C(temp, ADIS16400_SCAN_TEMP, ADIS16400_TEMP_OUT, NULL); |
49 | ADIS16400_TEMP_OUT, NULL); | ||
50 | static IIO_CONST_ATTR_SCAN_EL_TYPE(temp, s, 12, 16); | 40 | static IIO_CONST_ATTR_SCAN_EL_TYPE(temp, s, 12, 16); |
51 | 41 | ||
52 | static IIO_SCAN_EL_C(in0, ADIS16400_SCAN_ADC_0, IIO_SIGNED(12), | 42 | static IIO_SCAN_EL_C(in0, ADIS16400_SCAN_ADC_0, ADIS16400_AUX_ADC, NULL); |
53 | ADIS16400_AUX_ADC, NULL); | ||
54 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in0, u, 12, 16); | 43 | static IIO_CONST_ATTR_SCAN_EL_TYPE(in0, u, 12, 16); |
55 | 44 | ||
56 | static IIO_SCAN_EL_TIMESTAMP(12); | 45 | static IIO_SCAN_EL_TIMESTAMP(12); |
diff --git a/drivers/staging/iio/ring_generic.h b/drivers/staging/iio/ring_generic.h index 692b967eee7..6be399af17b 100644 --- a/drivers/staging/iio/ring_generic.h +++ b/drivers/staging/iio/ring_generic.h | |||
@@ -168,7 +168,6 @@ static inline void __iio_update_ring_buffer(struct iio_ring_buffer *ring, | |||
168 | * struct iio_scan_el - an individual element of a scan | 168 | * struct iio_scan_el - an individual element of a scan |
169 | * @dev_attr: control attribute (if directly controllable) | 169 | * @dev_attr: control attribute (if directly controllable) |
170 | * @number: unique identifier of element (used for bit mask) | 170 | * @number: unique identifier of element (used for bit mask) |
171 | * @bit_count: number of bits in scan element | ||
172 | * @label: useful data for the scan el (often reg address) | 171 | * @label: useful data for the scan el (often reg address) |
173 | * @set_state: for some devices datardy signals are generated | 172 | * @set_state: for some devices datardy signals are generated |
174 | * for any enabled lines. This allows unwanted lines | 173 | * for any enabled lines. This allows unwanted lines |
@@ -177,7 +176,6 @@ static inline void __iio_update_ring_buffer(struct iio_ring_buffer *ring, | |||
177 | struct iio_scan_el { | 176 | struct iio_scan_el { |
178 | struct device_attribute dev_attr; | 177 | struct device_attribute dev_attr; |
179 | unsigned int number; | 178 | unsigned int number; |
180 | int bit_count; | ||
181 | unsigned int label; | 179 | unsigned int label; |
182 | 180 | ||
183 | int (*set_state)(struct iio_scan_el *scanel, | 181 | int (*set_state)(struct iio_scan_el *scanel, |
@@ -232,39 +230,36 @@ ssize_t iio_scan_el_ts_show(struct device *dev, struct device_attribute *attr, | |||
232 | * @_name: identifying name. Resulting struct is iio_scan_el_##_name, | 230 | * @_name: identifying name. Resulting struct is iio_scan_el_##_name, |
233 | * sysfs element, _name##_en. | 231 | * sysfs element, _name##_en. |
234 | * @_number: unique id number for the scan element. | 232 | * @_number: unique id number for the scan element. |
235 | * @_bits: number of bits in the scan element result (used in mixed bit | ||
236 | * length devices). | 233 | * length devices). |
237 | * @_label: indentification variable used by drivers. Often a reg address. | 234 | * @_label: indentification variable used by drivers. Often a reg address. |
238 | * @_controlfunc: function used to notify hardware of whether state changes | 235 | * @_controlfunc: function used to notify hardware of whether state changes |
239 | **/ | 236 | **/ |
240 | #define __IIO_SCAN_EL_C(_name, _number, _bits, _label, _controlfunc) \ | 237 | #define __IIO_SCAN_EL_C(_name, _number, _label, _controlfunc) \ |
241 | struct iio_scan_el iio_scan_el_##_name = { \ | 238 | struct iio_scan_el iio_scan_el_##_name = { \ |
242 | .dev_attr = __ATTR(_number##_##_name##_en, \ | 239 | .dev_attr = __ATTR(_number##_##_name##_en, \ |
243 | S_IRUGO | S_IWUSR, \ | 240 | S_IRUGO | S_IWUSR, \ |
244 | iio_scan_el_show, \ | 241 | iio_scan_el_show, \ |
245 | iio_scan_el_store), \ | 242 | iio_scan_el_store), \ |
246 | .number = _number, \ | 243 | .number = _number, \ |
247 | .bit_count = _bits, \ | ||
248 | .label = _label, \ | 244 | .label = _label, \ |
249 | .set_state = _controlfunc, \ | 245 | .set_state = _controlfunc, \ |
250 | } | 246 | } |
251 | 247 | ||
252 | #define IIO_SCAN_EL_C(_name, _number, _bits, _label, _controlfunc) \ | 248 | #define IIO_SCAN_EL_C(_name, _number, _label, _controlfunc) \ |
253 | __IIO_SCAN_EL_C(_name, _number, _bits, _label, _controlfunc) | 249 | __IIO_SCAN_EL_C(_name, _number, _label, _controlfunc) |
254 | 250 | ||
255 | #define __IIO_SCAN_NAMED_EL_C(_name, _string, _number, _bits, _label, _cf) \ | 251 | #define __IIO_SCAN_NAMED_EL_C(_name, _string, _number, _label, _cf) \ |
256 | struct iio_scan_el iio_scan_el_##_name = { \ | 252 | struct iio_scan_el iio_scan_el_##_name = { \ |
257 | .dev_attr = __ATTR(_number##_##_string##_en, \ | 253 | .dev_attr = __ATTR(_number##_##_string##_en, \ |
258 | S_IRUGO | S_IWUSR, \ | 254 | S_IRUGO | S_IWUSR, \ |
259 | iio_scan_el_show, \ | 255 | iio_scan_el_show, \ |
260 | iio_scan_el_store), \ | 256 | iio_scan_el_store), \ |
261 | .number = _number, \ | 257 | .number = _number, \ |
262 | .bit_count = _bits, \ | ||
263 | .label = _label, \ | 258 | .label = _label, \ |
264 | .set_state = _cf, \ | 259 | .set_state = _cf, \ |
265 | } | 260 | } |
266 | #define IIO_SCAN_NAMED_EL_C(_name, _string, _number, _bits, _label, _cf) \ | 261 | #define IIO_SCAN_NAMED_EL_C(_name, _string, _number, _label, _cf) \ |
267 | __IIO_SCAN_NAMED_EL_C(_name, _string, _number, _bits, _label, _cf) | 262 | __IIO_SCAN_NAMED_EL_C(_name, _string, _number, _label, _cf) |
268 | /** | 263 | /** |
269 | * IIO_SCAN_EL_TIMESTAMP - declare a special scan element for timestamps | 264 | * IIO_SCAN_EL_TIMESTAMP - declare a special scan element for timestamps |
270 | * @number: specify where in the scan order this is stored. | 265 | * @number: specify where in the scan order this is stored. |