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 */ 401