GUI: Fix Tomato RAF theme for all builds. Compilation typo.
[tomato.git] / release / src-rt-6.x.4708 / linux / linux-2.6.36 / drivers / staging / iio / accel / accel.h
blob1b6e37f76200a28ac81b1369da504ad2cfd5a328
2 #include "../sysfs.h"
4 /* Accelerometer types of attribute */
5 #define IIO_DEV_ATTR_ACCEL_OFFSET(_mode, _show, _store, _addr) \
6 IIO_DEVICE_ATTR(accel_offset, _mode, _show, _store, _addr)
8 #define IIO_DEV_ATTR_ACCEL_X_OFFSET(_mode, _show, _store, _addr) \
9 IIO_DEVICE_ATTR(accel_x_offset, _mode, _show, _store, _addr)
11 #define IIO_DEV_ATTR_ACCEL_Y_OFFSET(_mode, _show, _store, _addr) \
12 IIO_DEVICE_ATTR(accel_y_offset, _mode, _show, _store, _addr)
14 #define IIO_DEV_ATTR_ACCEL_Z_OFFSET(_mode, _show, _store, _addr) \
15 IIO_DEVICE_ATTR(accel_z_offset, _mode, _show, _store, _addr)
17 #define IIO_DEV_ATTR_ACCEL_X_GAIN(_mode, _show, _store, _addr) \
18 IIO_DEVICE_ATTR(accel_x_gain, _mode, _show, _store, _addr)
20 #define IIO_DEV_ATTR_ACCEL_Y_GAIN(_mode, _show, _store, _addr) \
21 IIO_DEVICE_ATTR(accel_y_gain, _mode, _show, _store, _addr)
23 #define IIO_DEV_ATTR_ACCEL_Z_GAIN(_mode, _show, _store, _addr) \
24 IIO_DEVICE_ATTR(accel_z_gain, _mode, _show, _store, _addr)
26 #define IIO_DEV_ATTR_ACCEL(_show, _addr) \
27 IIO_DEVICE_ATTR(accel_raw, S_IRUGO, _show, NULL, _addr)
29 #define IIO_DEV_ATTR_ACCEL_X(_show, _addr) \
30 IIO_DEVICE_ATTR(accel_x_raw, S_IRUGO, _show, NULL, _addr)
32 #define IIO_DEV_ATTR_ACCEL_Y(_show, _addr) \
33 IIO_DEVICE_ATTR(accel_y_raw, S_IRUGO, _show, NULL, _addr)
35 #define IIO_DEV_ATTR_ACCEL_Z(_show, _addr) \
36 IIO_DEVICE_ATTR(accel_z_raw, S_IRUGO, _show, NULL, _addr)
38 /* Thresholds are somewhat chip dependent - may need quite a few defs here */
39 /* For unified thresholds (shared across all directions */
41 /**
42 * IIO_DEV_ATTR_ACCEL_THRESH: unified threshold
43 * @_mode: read/write
44 * @_show: read detector threshold value
45 * @_store: write detector threshold value
46 * @_addr: driver specific data, typically a register address
48 * This one is for cases where as single threshold covers all directions
49 **/
50 #define IIO_DEV_ATTR_ACCEL_THRESH(_mode, _show, _store, _addr) \
51 IIO_DEVICE_ATTR(thresh, _mode, _show, _store, _addr)
53 /**
54 * IIO_DEV_ATTR_ACCEL_THRESH_X: independant direction threshold, x axis
55 * @_mode: readable / writable
56 * @_show: read x axis detector threshold value
57 * @_store: write x axis detector threshold value
58 * @_addr: device driver dependant, typically a register address
59 **/
60 #define IIO_DEV_ATTR_ACCEL_THRESH_X(_mode, _show, _store, _addr) \
61 IIO_DEVICE_ATTR(thresh_accel_x, _mode, _show, _store, _addr)
63 #define IIO_DEV_ATTR_ACCEL_THRESH_Y(_mode, _show, _store, _addr) \
64 IIO_DEVICE_ATTR(thresh_accel_y, _mode, _show, _store, _addr)
66 #define IIO_DEV_ATTR_ACCEL_THRESH_Z(_mode, _show, _store, _addr) \
67 IIO_DEVICE_ATTR(thresh_accel_z, _mode, _show, _store, _addr)
69 /**
70 * IIO_EVENT_ATTR_ACCEL_X_HIGH: threshold event, x acceleration
71 * @_show: read x acceleration high threshold
72 * @_store: write x acceleration high threshold
73 * @_mask: device dependant, typically a bit mask
74 * @_handler: the iio_handler associated with this attribute
75 **/
76 #define IIO_EVENT_ATTR_ACCEL_X_HIGH(_show, _store, _mask, _handler) \
77 IIO_EVENT_ATTR(accel_x_high, _show, _store, _mask, _handler)
79 /**
80 * IIO_EVENT_ATTR_ACCEL_X_HIGH_SH: threshold event, x accel high, shared handler
81 * @_evlist: event list used to share the handler
82 * @_show: attribute read
83 * @_store: attribute write
84 * @_mask: driver specific data, typically a bit mask
85 **/
86 #define IIO_EVENT_ATTR_ACCEL_X_HIGH_SH(_evlist, _show, _store, _mask) \
87 IIO_EVENT_ATTR_SH(accel_x_high, _evlist, _show, _store, _mask)
89 /**
90 * IIO_EVENT_CODE_ACCEL_X_HIGH - event code for x axis high accel threshold
91 **/
92 #define IIO_EVENT_CODE_ACCEL_X_HIGH IIO_EVENT_CODE_ACCEL_BASE
94 #define IIO_EVENT_ATTR_ACCEL_Y_HIGH(_show, _store, _mask, _handler) \
95 IIO_EVENT_ATTR(accel_y_high, _show, _store, _mask, _handler)
97 #define IIO_EVENT_ATTR_ACCEL_Y_HIGH_SH(_evlist, _show, _store, _mask) \
98 IIO_EVENT_ATTR_SH(accel_y_high, _evlist, _show, _store, _mask)
100 #define IIO_EVENT_CODE_ACCEL_Y_HIGH (IIO_EVENT_CODE_ACCEL_BASE + 1)
102 #define IIO_EVENT_ATTR_ACCEL_Z_HIGH(_show, _store, _mask, _handler) \
103 IIO_EVENT_ATTR(accel_z_high, _show, _store, _mask, _handler)
105 #define IIO_EVENT_ATTR_ACCEL_Z_HIGH_SH(_evlist, _show, _store, _mask) \
106 IIO_EVENT_ATTR_SH(accel_z_high, _evlist, _show, _store, _mask)
108 #define IIO_EVENT_CODE_ACCEL_Z_HIGH (IIO_EVENT_CODE_ACCEL_BASE + 2)
110 #define IIO_EVENT_ATTR_ACCEL_X_LOW(_show, _store, _mask, _handler) \
111 IIO_EVENT_ATTR(accel_x_low, _show, _store, _mask, _handler)
113 #define IIO_EVENT_ATTR_ACCEL_X_LOW_SH(_evlist, _show, _store, _mask) \
114 IIO_EVENT_ATTR_SH(accel_x_low, _evlist, _show, _store, _mask)
116 #define IIO_EVENT_CODE_ACCEL_X_LOW (IIO_EVENT_CODE_ACCEL_BASE + 3)
118 #define IIO_EVENT_ATTR_ACCEL_Y_LOW(_show, _store, _mask, _handler) \
119 IIO_EVENT_ATTR(accel_y_low, _show, _store, _mask, _handler)
121 #define IIO_EVENT_ATTR_ACCEL_Y_LOW_SH(_evlist, _show, _store, _mask)\
122 IIO_EVENT_ATTR_SH(accel_y_low, _evlist, _show, _store, _mask)
124 #define IIO_EVENT_CODE_ACCEL_Y_LOW (IIO_EVENT_CODE_ACCEL_BASE + 4)
126 #define IIO_EVENT_ATTR_ACCEL_Z_LOW(_show, _store, _mask, _handler) \
127 IIO_EVENT_ATTR(accel_z_low, _show, _store, _mask, _handler)
129 #define IIO_EVENT_ATTR_ACCEL_Z_LOW_SH(_evlist, _show, _store, _mask) \
130 IIO_EVENT_ATTR_SH(accel_z_low, _evlist, _show, _store, _mask)
132 #define IIO_EVENT_CODE_ACCEL_Z_LOW (IIO_EVENT_CODE_ACCEL_BASE + 5)
134 #define IIO_EVENT_ATTR_FREE_FALL_DETECT(_show, _store, _mask, _handler) \
135 IIO_EVENT_ATTR(free_fall, _show, _store, _mask, _handler)
137 #define IIO_EVENT_ATTR_FREE_FALL_DETECT_SH(_evlist, _show, _store, _mask) \
138 IIO_EVENT_ATTR_SH(free_fall, _evlist, _show, _store, _mask)
140 #define IIO_EVENT_CODE_FREE_FALL (IIO_EVENT_CODE_ACCEL_BASE + 6)
143 #define IIO_EVENT_ATTR_ACCEL_X_ROC_HIGH_SH(_evlist, _show, _store, _mask) \
144 IIO_EVENT_ATTR_SH(accel_x_roc_high, _evlist, _show, _store, _mask)
146 #define IIO_EVENT_CODE_ACCEL_X_ROC_HIGH (IIO_EVENT_CODE_ACCEL_BASE + 10)
148 #define IIO_EVENT_ATTR_ACCEL_X_ROC_LOW_SH(_evlist, _show, _store, _mask) \
149 IIO_EVENT_ATTR_SH(accel_x_roc_low, _evlist, _show, _store, _mask)
151 #define IIO_EVENT_CODE_ACCEL_X_ROC_LOW (IIO_EVENT_CODE_ACCEL_BASE + 11)
153 #define IIO_EVENT_ATTR_ACCEL_Y_ROC_HIGH_SH(_evlist, _show, _store, _mask) \
154 IIO_EVENT_ATTR_SH(accel_y_roc_high, _evlist, _show, _store, _mask)
156 #define IIO_EVENT_CODE_ACCEL_Y_ROC_HIGH (IIO_EVENT_CODE_ACCEL_BASE + 12)
158 #define IIO_EVENT_ATTR_ACCEL_Y_ROC_LOW_SH(_evlist, _show, _store, _mask) \
159 IIO_EVENT_ATTR_SH(accel_y_roc_low, _evlist, _show, _store, _mask)
161 #define IIO_EVENT_CODE_ACCEL_Y_ROC_LOW (IIO_EVENT_CODE_ACCEL_BASE + 13)
163 #define IIO_EVENT_ATTR_ACCEL_Z_ROC_HIGH_SH(_evlist, _show, _store, _mask) \
164 IIO_EVENT_ATTR_SH(accel_z_roc_high, _evlist, _show, _store, _mask)
166 #define IIO_EVENT_CODE_ACCEL_Z_ROC_HIGH (IIO_EVENT_CODE_ACCEL_BASE + 14)
168 #define IIO_EVENT_ATTR_ACCEL_Z_ROC_LOW_SH(_evlist, _show, _store, _mask) \
169 IIO_EVENT_ATTR_SH(accel_z_roc_low, _evlist, _show, _store, _mask)
171 #define IIO_EVENT_CODE_ACCEL_Z_ROC_LOW (IIO_EVENT_CODE_ACCEL_BASE + 15)