Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / drivers / staging / iio / meter / meter.h
1 #ifndef _METER_H
2 #define _METER_H
3
4 #include <linux/iio/sysfs.h>
5
6 /* metering ic types of attribute */
7
8 #define IIO_DEV_ATTR_CURRENT_A_OFFSET(_mode, _show, _store, _addr)      \
9         IIO_DEVICE_ATTR(current_a_offset, _mode, _show, _store, _addr)
10
11 #define IIO_DEV_ATTR_CURRENT_B_OFFSET(_mode, _show, _store, _addr)      \
12         IIO_DEVICE_ATTR(current_b_offset, _mode, _show, _store, _addr)
13
14 #define IIO_DEV_ATTR_CURRENT_C_OFFSET(_mode, _show, _store, _addr)      \
15         IIO_DEVICE_ATTR(current_c_offset, _mode, _show, _store, _addr)
16
17 #define IIO_DEV_ATTR_VOLT_A_OFFSET(_mode, _show, _store, _addr)      \
18         IIO_DEVICE_ATTR(volt_a_offset, _mode, _show, _store, _addr)
19
20 #define IIO_DEV_ATTR_VOLT_B_OFFSET(_mode, _show, _store, _addr)      \
21         IIO_DEVICE_ATTR(volt_b_offset, _mode, _show, _store, _addr)
22
23 #define IIO_DEV_ATTR_VOLT_C_OFFSET(_mode, _show, _store, _addr)      \
24         IIO_DEVICE_ATTR(volt_c_offset, _mode, _show, _store, _addr)
25
26 #define IIO_DEV_ATTR_REACTIVE_POWER_A_OFFSET(_mode, _show, _store, _addr)   \
27         IIO_DEVICE_ATTR(reactive_power_a_offset, _mode, _show, _store, _addr)
28
29 #define IIO_DEV_ATTR_REACTIVE_POWER_B_OFFSET(_mode, _show, _store, _addr)   \
30         IIO_DEVICE_ATTR(reactive_power_b_offset, _mode, _show, _store, _addr)
31
32 #define IIO_DEV_ATTR_REACTIVE_POWER_C_OFFSET(_mode, _show, _store, _addr)   \
33         IIO_DEVICE_ATTR(reactive_power_c_offset, _mode, _show, _store, _addr)
34
35 #define IIO_DEV_ATTR_ACTIVE_POWER_A_OFFSET(_mode, _show, _store, _addr)     \
36         IIO_DEVICE_ATTR(active_power_a_offset, _mode, _show, _store, _addr)
37
38 #define IIO_DEV_ATTR_ACTIVE_POWER_B_OFFSET(_mode, _show, _store, _addr)     \
39         IIO_DEVICE_ATTR(active_power_b_offset, _mode, _show, _store, _addr)
40
41 #define IIO_DEV_ATTR_ACTIVE_POWER_C_OFFSET(_mode, _show, _store, _addr)     \
42         IIO_DEVICE_ATTR(active_power_c_offset, _mode, _show, _store, _addr)
43
44 #define IIO_DEV_ATTR_CURRENT_A_GAIN(_mode, _show, _store, _addr)        \
45         IIO_DEVICE_ATTR(current_a_gain, _mode, _show, _store, _addr)
46
47 #define IIO_DEV_ATTR_CURRENT_B_GAIN(_mode, _show, _store, _addr)        \
48         IIO_DEVICE_ATTR(current_b_gain, _mode, _show, _store, _addr)
49
50 #define IIO_DEV_ATTR_CURRENT_C_GAIN(_mode, _show, _store, _addr)        \
51         IIO_DEVICE_ATTR(current_c_gain, _mode, _show, _store, _addr)
52
53 #define IIO_DEV_ATTR_APPARENT_POWER_A_GAIN(_mode, _show, _store, _addr)     \
54         IIO_DEVICE_ATTR(apparent_power_a_gain, _mode, _show, _store, _addr)
55
56 #define IIO_DEV_ATTR_APPARENT_POWER_B_GAIN(_mode, _show, _store, _addr)     \
57         IIO_DEVICE_ATTR(apparent_power_b_gain, _mode, _show, _store, _addr)
58
59 #define IIO_DEV_ATTR_APPARENT_POWER_C_GAIN(_mode, _show, _store, _addr)     \
60         IIO_DEVICE_ATTR(apparent_power_c_gain, _mode, _show, _store, _addr)
61
62 #define IIO_DEV_ATTR_ACTIVE_POWER_GAIN(_mode, _show, _store, _addr)     \
63         IIO_DEVICE_ATTR(active_power_gain, _mode, _show, _store, _addr)
64
65 #define IIO_DEV_ATTR_ACTIVE_POWER_A_GAIN(_mode, _show, _store, _addr)   \
66         IIO_DEVICE_ATTR(active_power_a_gain, _mode, _show, _store, _addr)
67
68 #define IIO_DEV_ATTR_ACTIVE_POWER_B_GAIN(_mode, _show, _store, _addr)   \
69         IIO_DEVICE_ATTR(active_power_b_gain, _mode, _show, _store, _addr)
70
71 #define IIO_DEV_ATTR_ACTIVE_POWER_C_GAIN(_mode, _show, _store, _addr)   \
72         IIO_DEVICE_ATTR(active_power_c_gain, _mode, _show, _store, _addr)
73
74 #define IIO_DEV_ATTR_REACTIVE_POWER_A_GAIN(_mode, _show, _store, _addr)     \
75         IIO_DEVICE_ATTR(reactive_power_a_gain, _mode, _show, _store, _addr)
76
77 #define IIO_DEV_ATTR_REACTIVE_POWER_B_GAIN(_mode, _show, _store, _addr)     \
78         IIO_DEVICE_ATTR(reactive_power_b_gain, _mode, _show, _store, _addr)
79
80 #define IIO_DEV_ATTR_REACTIVE_POWER_C_GAIN(_mode, _show, _store, _addr)     \
81         IIO_DEVICE_ATTR(reactive_power_c_gain, _mode, _show, _store, _addr)
82
83 #define IIO_DEV_ATTR_CURRENT_A(_show, _addr)                    \
84         IIO_DEVICE_ATTR(current_a, S_IRUGO, _show, NULL, _addr)
85
86 #define IIO_DEV_ATTR_CURRENT_B(_show, _addr)                    \
87         IIO_DEVICE_ATTR(current_b, S_IRUGO, _show, NULL, _addr)
88
89 #define IIO_DEV_ATTR_CURRENT_C(_show, _addr)                    \
90         IIO_DEVICE_ATTR(current_c, S_IRUGO, _show, NULL, _addr)
91
92 #define IIO_DEV_ATTR_VOLT_A(_show, _addr)                       \
93         IIO_DEVICE_ATTR(volt_a, S_IRUGO, _show, NULL, _addr)
94
95 #define IIO_DEV_ATTR_VOLT_B(_show, _addr)                       \
96         IIO_DEVICE_ATTR(volt_b, S_IRUGO, _show, NULL, _addr)
97
98 #define IIO_DEV_ATTR_VOLT_C(_show, _addr)                       \
99         IIO_DEVICE_ATTR(volt_c, S_IRUGO, _show, NULL, _addr)
100
101 #define IIO_DEV_ATTR_AENERGY(_show, _addr)                      \
102         IIO_DEVICE_ATTR(aenergy, S_IRUGO, _show, NULL, _addr)
103
104 #define IIO_DEV_ATTR_LENERGY(_show, _addr)                      \
105         IIO_DEVICE_ATTR(lenergy, S_IRUGO, _show, NULL, _addr)
106
107 #define IIO_DEV_ATTR_RAENERGY(_show, _addr)                     \
108         IIO_DEVICE_ATTR(raenergy, S_IRUGO, _show, NULL, _addr)
109
110 #define IIO_DEV_ATTR_LAENERGY(_show, _addr)                     \
111         IIO_DEVICE_ATTR(laenergy, S_IRUGO, _show, NULL, _addr)
112
113 #define IIO_DEV_ATTR_VAENERGY(_show, _addr)                     \
114         IIO_DEVICE_ATTR(vaenergy, S_IRUGO, _show, NULL, _addr)
115
116 #define IIO_DEV_ATTR_LVAENERGY(_show, _addr)                    \
117         IIO_DEVICE_ATTR(lvaenergy, S_IRUGO, _show, NULL, _addr)
118
119 #define IIO_DEV_ATTR_RVAENERGY(_show, _addr)                    \
120         IIO_DEVICE_ATTR(rvaenergy, S_IRUGO, _show, NULL, _addr)
121
122 #define IIO_DEV_ATTR_LVARENERGY(_show, _addr)                   \
123         IIO_DEVICE_ATTR(lvarenergy, S_IRUGO, _show, NULL, _addr)
124
125 #define IIO_DEV_ATTR_CHKSUM(_show, _addr)                       \
126         IIO_DEVICE_ATTR(chksum, S_IRUGO, _show, NULL, _addr)
127
128 #define IIO_DEV_ATTR_ANGLE0(_show, _addr)                       \
129         IIO_DEVICE_ATTR(angle0, S_IRUGO, _show, NULL, _addr)
130
131 #define IIO_DEV_ATTR_ANGLE1(_show, _addr)                       \
132         IIO_DEVICE_ATTR(angle1, S_IRUGO, _show, NULL, _addr)
133
134 #define IIO_DEV_ATTR_ANGLE2(_show, _addr)                       \
135         IIO_DEVICE_ATTR(angle2, S_IRUGO, _show, NULL, _addr)
136
137 #define IIO_DEV_ATTR_AWATTHR(_show, _addr)                      \
138         IIO_DEVICE_ATTR(awatthr, S_IRUGO, _show, NULL, _addr)
139
140 #define IIO_DEV_ATTR_BWATTHR(_show, _addr)                      \
141         IIO_DEVICE_ATTR(bwatthr, S_IRUGO, _show, NULL, _addr)
142
143 #define IIO_DEV_ATTR_CWATTHR(_show, _addr)                      \
144         IIO_DEVICE_ATTR(cwatthr, S_IRUGO, _show, NULL, _addr)
145
146 #define IIO_DEV_ATTR_AFWATTHR(_show, _addr)                     \
147         IIO_DEVICE_ATTR(afwatthr, S_IRUGO, _show, NULL, _addr)
148
149 #define IIO_DEV_ATTR_BFWATTHR(_show, _addr)                     \
150         IIO_DEVICE_ATTR(bfwatthr, S_IRUGO, _show, NULL, _addr)
151
152 #define IIO_DEV_ATTR_CFWATTHR(_show, _addr)                     \
153         IIO_DEVICE_ATTR(cfwatthr, S_IRUGO, _show, NULL, _addr)
154
155 #define IIO_DEV_ATTR_AVARHR(_show, _addr)                       \
156         IIO_DEVICE_ATTR(avarhr, S_IRUGO, _show, NULL, _addr)
157
158 #define IIO_DEV_ATTR_BVARHR(_show, _addr)                       \
159         IIO_DEVICE_ATTR(bvarhr, S_IRUGO, _show, NULL, _addr)
160
161 #define IIO_DEV_ATTR_CVARHR(_show, _addr)                       \
162         IIO_DEVICE_ATTR(cvarhr, S_IRUGO, _show, NULL, _addr)
163
164 #define IIO_DEV_ATTR_AVAHR(_show, _addr)                        \
165         IIO_DEVICE_ATTR(avahr, S_IRUGO, _show, NULL, _addr)
166
167 #define IIO_DEV_ATTR_BVAHR(_show, _addr)                        \
168         IIO_DEVICE_ATTR(bvahr, S_IRUGO, _show, NULL, _addr)
169
170 #define IIO_DEV_ATTR_CVAHR(_show, _addr)                        \
171         IIO_DEVICE_ATTR(cvahr, S_IRUGO, _show, NULL, _addr)
172
173 #define IIO_DEV_ATTR_IOS(_mode, _show, _store, _addr)                \
174         IIO_DEVICE_ATTR(ios, _mode, _show, _store, _addr)
175
176 #define IIO_DEV_ATTR_VOS(_mode, _show, _store, _addr)                \
177         IIO_DEVICE_ATTR(vos, _mode, _show, _store, _addr)
178
179 #define IIO_DEV_ATTR_PHCAL(_mode, _show, _store, _addr)                \
180         IIO_DEVICE_ATTR(phcal, _mode, _show, _store, _addr)
181
182 #define IIO_DEV_ATTR_APHCAL(_mode, _show, _store, _addr)                \
183         IIO_DEVICE_ATTR(aphcal, _mode, _show, _store, _addr)
184
185 #define IIO_DEV_ATTR_BPHCAL(_mode, _show, _store, _addr)                \
186         IIO_DEVICE_ATTR(bphcal, _mode, _show, _store, _addr)
187
188 #define IIO_DEV_ATTR_CPHCAL(_mode, _show, _store, _addr)                \
189         IIO_DEVICE_ATTR(cphcal, _mode, _show, _store, _addr)
190
191 #define IIO_DEV_ATTR_APOS(_mode, _show, _store, _addr)                \
192         IIO_DEVICE_ATTR(apos, _mode, _show, _store, _addr)
193
194 #define IIO_DEV_ATTR_AAPOS(_mode, _show, _store, _addr)                \
195         IIO_DEVICE_ATTR(aapos, _mode, _show, _store, _addr)
196
197 #define IIO_DEV_ATTR_BAPOS(_mode, _show, _store, _addr)                \
198         IIO_DEVICE_ATTR(bapos, _mode, _show, _store, _addr)
199
200 #define IIO_DEV_ATTR_CAPOS(_mode, _show, _store, _addr)                \
201         IIO_DEVICE_ATTR(capos, _mode, _show, _store, _addr)
202
203 #define IIO_DEV_ATTR_AVRMSGAIN(_mode, _show, _store, _addr)                \
204         IIO_DEVICE_ATTR(avrmsgain, _mode, _show, _store, _addr)
205
206 #define IIO_DEV_ATTR_BVRMSGAIN(_mode, _show, _store, _addr)                \
207         IIO_DEVICE_ATTR(bvrmsgain, _mode, _show, _store, _addr)
208
209 #define IIO_DEV_ATTR_CVRMSGAIN(_mode, _show, _store, _addr)                \
210         IIO_DEVICE_ATTR(cvrmsgain, _mode, _show, _store, _addr)
211
212 #define IIO_DEV_ATTR_AIGAIN(_mode, _show, _store, _addr)                \
213         IIO_DEVICE_ATTR(aigain, _mode, _show, _store, _addr)
214
215 #define IIO_DEV_ATTR_BIGAIN(_mode, _show, _store, _addr)                \
216         IIO_DEVICE_ATTR(bigain, _mode, _show, _store, _addr)
217
218 #define IIO_DEV_ATTR_CIGAIN(_mode, _show, _store, _addr)                \
219         IIO_DEVICE_ATTR(cigain, _mode, _show, _store, _addr)
220
221 #define IIO_DEV_ATTR_NIGAIN(_mode, _show, _store, _addr)                \
222         IIO_DEVICE_ATTR(nigain, _mode, _show, _store, _addr)
223
224 #define IIO_DEV_ATTR_AVGAIN(_mode, _show, _store, _addr)                \
225         IIO_DEVICE_ATTR(avgain, _mode, _show, _store, _addr)
226
227 #define IIO_DEV_ATTR_BVGAIN(_mode, _show, _store, _addr)                \
228         IIO_DEVICE_ATTR(bvgain, _mode, _show, _store, _addr)
229
230 #define IIO_DEV_ATTR_CVGAIN(_mode, _show, _store, _addr)                \
231         IIO_DEVICE_ATTR(cvgain, _mode, _show, _store, _addr)
232
233 #define IIO_DEV_ATTR_WGAIN(_mode, _show, _store, _addr)                \
234         IIO_DEVICE_ATTR(wgain, _mode, _show, _store, _addr)
235
236 #define IIO_DEV_ATTR_WDIV(_mode, _show, _store, _addr)                \
237         IIO_DEVICE_ATTR(wdiv, _mode, _show, _store, _addr)
238
239 #define IIO_DEV_ATTR_CFNUM(_mode, _show, _store, _addr)                \
240         IIO_DEVICE_ATTR(cfnum, _mode, _show, _store, _addr)
241
242 #define IIO_DEV_ATTR_CFDEN(_mode, _show, _store, _addr)                \
243         IIO_DEVICE_ATTR(cfden, _mode, _show, _store, _addr)
244
245 #define IIO_DEV_ATTR_CF1DEN(_mode, _show, _store, _addr)                \
246         IIO_DEVICE_ATTR(cf1den, _mode, _show, _store, _addr)
247
248 #define IIO_DEV_ATTR_CF2DEN(_mode, _show, _store, _addr)                \
249         IIO_DEVICE_ATTR(cf2den, _mode, _show, _store, _addr)
250
251 #define IIO_DEV_ATTR_CF3DEN(_mode, _show, _store, _addr)                \
252         IIO_DEVICE_ATTR(cf3den, _mode, _show, _store, _addr)
253
254 #define IIO_DEV_ATTR_IRMS(_mode, _show, _store, _addr)                \
255         IIO_DEVICE_ATTR(irms, _mode, _show, _store, _addr)
256
257 #define IIO_DEV_ATTR_VRMS(_mode, _show, _store, _addr)                \
258         IIO_DEVICE_ATTR(vrms, _mode, _show, _store, _addr)
259
260 #define IIO_DEV_ATTR_AIRMS(_mode, _show, _store, _addr)                \
261         IIO_DEVICE_ATTR(airms, _mode, _show, _store, _addr)
262
263 #define IIO_DEV_ATTR_BIRMS(_mode, _show, _store, _addr)                \
264         IIO_DEVICE_ATTR(birms, _mode, _show, _store, _addr)
265
266 #define IIO_DEV_ATTR_CIRMS(_mode, _show, _store, _addr)                \
267         IIO_DEVICE_ATTR(cirms, _mode, _show, _store, _addr)
268
269 #define IIO_DEV_ATTR_NIRMS(_mode, _show, _store, _addr)                \
270         IIO_DEVICE_ATTR(nirms, _mode, _show, _store, _addr)
271
272 #define IIO_DEV_ATTR_AVRMS(_mode, _show, _store, _addr)                \
273         IIO_DEVICE_ATTR(avrms, _mode, _show, _store, _addr)
274
275 #define IIO_DEV_ATTR_BVRMS(_mode, _show, _store, _addr)                \
276         IIO_DEVICE_ATTR(bvrms, _mode, _show, _store, _addr)
277
278 #define IIO_DEV_ATTR_CVRMS(_mode, _show, _store, _addr)                \
279         IIO_DEVICE_ATTR(cvrms, _mode, _show, _store, _addr)
280
281 #define IIO_DEV_ATTR_IRMSOS(_mode, _show, _store, _addr)                \
282         IIO_DEVICE_ATTR(irmsos, _mode, _show, _store, _addr)
283
284 #define IIO_DEV_ATTR_VRMSOS(_mode, _show, _store, _addr)                \
285         IIO_DEVICE_ATTR(vrmsos, _mode, _show, _store, _addr)
286
287 #define IIO_DEV_ATTR_AIRMSOS(_mode, _show, _store, _addr)                \
288         IIO_DEVICE_ATTR(airmsos, _mode, _show, _store, _addr)
289
290 #define IIO_DEV_ATTR_BIRMSOS(_mode, _show, _store, _addr)                \
291         IIO_DEVICE_ATTR(birmsos, _mode, _show, _store, _addr)
292
293 #define IIO_DEV_ATTR_CIRMSOS(_mode, _show, _store, _addr)                \
294         IIO_DEVICE_ATTR(cirmsos, _mode, _show, _store, _addr)
295
296 #define IIO_DEV_ATTR_AVRMSOS(_mode, _show, _store, _addr)                \
297         IIO_DEVICE_ATTR(avrmsos, _mode, _show, _store, _addr)
298
299 #define IIO_DEV_ATTR_BVRMSOS(_mode, _show, _store, _addr)                \
300         IIO_DEVICE_ATTR(bvrmsos, _mode, _show, _store, _addr)
301
302 #define IIO_DEV_ATTR_CVRMSOS(_mode, _show, _store, _addr)                \
303         IIO_DEVICE_ATTR(cvrmsos, _mode, _show, _store, _addr)
304
305 #define IIO_DEV_ATTR_VAGAIN(_mode, _show, _store, _addr)                \
306         IIO_DEVICE_ATTR(vagain, _mode, _show, _store, _addr)
307
308 #define IIO_DEV_ATTR_PGA_GAIN(_mode, _show, _store, _addr)                \
309         IIO_DEVICE_ATTR(pga_gain, _mode, _show, _store, _addr)
310
311 #define IIO_DEV_ATTR_VADIV(_mode, _show, _store, _addr)                \
312         IIO_DEVICE_ATTR(vadiv, _mode, _show, _store, _addr)
313
314 #define IIO_DEV_ATTR_LINECYC(_mode, _show, _store, _addr)                \
315         IIO_DEVICE_ATTR(linecyc, _mode, _show, _store, _addr)
316
317 #define IIO_DEV_ATTR_SAGCYC(_mode, _show, _store, _addr)                \
318         IIO_DEVICE_ATTR(sagcyc, _mode, _show, _store, _addr)
319
320 #define IIO_DEV_ATTR_CFCYC(_mode, _show, _store, _addr)                \
321         IIO_DEVICE_ATTR(cfcyc, _mode, _show, _store, _addr)
322
323 #define IIO_DEV_ATTR_PEAKCYC(_mode, _show, _store, _addr)                \
324         IIO_DEVICE_ATTR(peakcyc, _mode, _show, _store, _addr)
325
326 #define IIO_DEV_ATTR_SAGLVL(_mode, _show, _store, _addr)                \
327         IIO_DEVICE_ATTR(saglvl, _mode, _show, _store, _addr)
328
329 #define IIO_DEV_ATTR_IPKLVL(_mode, _show, _store, _addr)                \
330         IIO_DEVICE_ATTR(ipklvl, _mode, _show, _store, _addr)
331
332 #define IIO_DEV_ATTR_VPKLVL(_mode, _show, _store, _addr)                \
333         IIO_DEVICE_ATTR(vpklvl, _mode, _show, _store, _addr)
334
335 #define IIO_DEV_ATTR_IPEAK(_mode, _show, _store, _addr)                 \
336         IIO_DEVICE_ATTR(ipeak, _mode, _show, _store, _addr)
337
338 #define IIO_DEV_ATTR_RIPEAK(_mode, _show, _store, _addr)                \
339         IIO_DEVICE_ATTR(ripeak, _mode, _show, _store, _addr)
340
341 #define IIO_DEV_ATTR_VPEAK(_mode, _show, _store, _addr)                 \
342         IIO_DEVICE_ATTR(vpeak, _mode, _show, _store, _addr)
343
344 #define IIO_DEV_ATTR_RVPEAK(_mode, _show, _store, _addr)                \
345         IIO_DEVICE_ATTR(rvpeak, _mode, _show, _store, _addr)
346
347 #define IIO_DEV_ATTR_VPERIOD(_mode, _show, _store, _addr)               \
348         IIO_DEVICE_ATTR(vperiod, _mode, _show, _store, _addr)
349
350 #define IIO_DEV_ATTR_CH_OFF(_num, _mode, _show, _store, _addr)          \
351         IIO_DEVICE_ATTR(choff_##_num, _mode, _show, _store, _addr)
352
353 /* active energy register, AENERGY, is more than half full */
354 #define IIO_EVENT_ATTR_AENERGY_HALF_FULL(_evlist, _show, _store, _mask) \
355         IIO_EVENT_ATTR_SH(aenergy_half_full, _evlist, _show, _store, _mask)
356
357 /* a SAG on the line voltage */
358 #define IIO_EVENT_ATTR_LINE_VOLT_SAG(_evlist, _show, _store, _mask) \
359         IIO_EVENT_ATTR_SH(line_volt_sag, _evlist, _show, _store, _mask)
360
361 /*
362  * Indicates the end of energy accumulation over an integer number
363  * of half line cycles
364  */
365 #define IIO_EVENT_ATTR_CYCEND(_evlist, _show, _store, _mask) \
366         IIO_EVENT_ATTR_SH(cycend, _evlist, _show, _store, _mask)
367
368 /* on the rising and falling edge of the voltage waveform */
369 #define IIO_EVENT_ATTR_ZERO_CROSS(_evlist, _show, _store, _mask) \
370         IIO_EVENT_ATTR_SH(zero_cross, _evlist, _show, _store, _mask)
371
372 /* the active energy register has overflowed */
373 #define IIO_EVENT_ATTR_AENERGY_OVERFLOW(_evlist, _show, _store, _mask) \
374         IIO_EVENT_ATTR_SH(aenergy_overflow, _evlist, _show, _store, _mask)
375
376 /* the apparent energy register has overflowed */
377 #define IIO_EVENT_ATTR_VAENERGY_OVERFLOW(_evlist, _show, _store, _mask) \
378         IIO_EVENT_ATTR_SH(vaenergy_overflow, _evlist, _show, _store, _mask)
379
380 /* the active energy register, VAENERGY, is more than half full */
381 #define IIO_EVENT_ATTR_VAENERGY_HALF_FULL(_evlist, _show, _store, _mask) \
382         IIO_EVENT_ATTR_SH(vaenergy_half_full, _evlist, _show, _store, _mask)
383
384 /* the power has gone from negative to positive */
385 #define IIO_EVENT_ATTR_PPOS(_evlist, _show, _store, _mask) \
386         IIO_EVENT_ATTR_SH(ppos, _evlist, _show, _store, _mask)
387
388 /* the power has gone from positive to negative */
389 #define IIO_EVENT_ATTR_PNEG(_evlist, _show, _store, _mask) \
390         IIO_EVENT_ATTR_SH(pneg, _evlist, _show, _store, _mask)
391
392 /* waveform sample from Channel 1 has exceeded the IPKLVL value */
393 #define IIO_EVENT_ATTR_IPKLVL_EXC(_evlist, _show, _store, _mask) \
394         IIO_EVENT_ATTR_SH(ipklvl_exc, _evlist, _show, _store, _mask)
395
396 /* waveform sample from Channel 2 has exceeded the VPKLVL value */
397 #define IIO_EVENT_ATTR_VPKLVL_EXC(_evlist, _show, _store, _mask) \
398         IIO_EVENT_ATTR_SH(vpklvl_exc, _evlist, _show, _store, _mask)
399
400 #endif /* _METER_H */