1 /* 2 * dds.h - sysfs attributes associated with DDS devices 3 * 4 * Copyright (c) 2010 Analog Devices Inc. 5 * 6 * Licensed under the GPL-2 or later. 7 */ 8 #ifndef IIO_DDS_H_ 9 #define IIO_DDS_H_ 10 11 /** 12 * /sys/bus/iio/devices/.../out_altvoltageX_frequencyY 13 */ 14 15 #define IIO_DEV_ATTR_FREQ(_channel, _num, _mode, _show, _store, _addr) \ 16 IIO_DEVICE_ATTR(out_altvoltage##_channel##_frequency##_num, \ 17 _mode, _show, _store, _addr) 18 19 /** 20 * /sys/bus/iio/devices/.../out_altvoltageX_frequencyY_scale 21 */ 22 23 #define IIO_CONST_ATTR_FREQ_SCALE(_channel, _string) \ 24 IIO_CONST_ATTR(out_altvoltage##_channel##_frequency_scale, _string) 25 26 /** 27 * /sys/bus/iio/devices/.../out_altvoltageX_frequencysymbol 28 */ 29 30 #define IIO_DEV_ATTR_FREQSYMBOL(_channel, _mode, _show, _store, _addr) \ 31 IIO_DEVICE_ATTR(out_altvoltage##_channel##_frequencysymbol, \ 32 _mode, _show, _store, _addr) 33 34 /** 35 * /sys/bus/iio/devices/.../out_altvoltageX_phaseY 36 */ 37 38 #define IIO_DEV_ATTR_PHASE(_channel, _num, _mode, _show, _store, _addr) \ 39 IIO_DEVICE_ATTR(out_altvoltage##_channel##_phase##_num, \ 40 _mode, _show, _store, _addr) 41 42 /** 43 * /sys/bus/iio/devices/.../out_altvoltageX_phaseY_scale 44 */ 45 46 #define IIO_CONST_ATTR_PHASE_SCALE(_channel, _string) \ 47 IIO_CONST_ATTR(out_altvoltage##_channel##_phase_scale, _string) 48 49 /** 50 * /sys/bus/iio/devices/.../out_altvoltageX_phasesymbol 51 */ 52 53 #define IIO_DEV_ATTR_PHASESYMBOL(_channel, _mode, _show, _store, _addr) \ 54 IIO_DEVICE_ATTR(out_altvoltage##_channel##_phasesymbol, \ 55 _mode, _show, _store, _addr) 56 57 /** 58 * /sys/bus/iio/devices/.../out_altvoltageX_pincontrol_en 59 */ 60 61 #define IIO_DEV_ATTR_PINCONTROL_EN(_channel, _mode, _show, _store, _addr)\ 62 IIO_DEVICE_ATTR(out_altvoltage##_channel##_pincontrol_en, \ 63 _mode, _show, _store, _addr) 64 65 /** 66 * /sys/bus/iio/devices/.../out_altvoltageX_pincontrol_frequency_en 67 */ 68 69 #define IIO_DEV_ATTR_PINCONTROL_FREQ_EN(_channel, _mode, _show, _store, _addr)\ 70 IIO_DEVICE_ATTR(out_altvoltage##_channel##_pincontrol_frequency_en,\ 71 _mode, _show, _store, _addr) 72 73 /** 74 * /sys/bus/iio/devices/.../out_altvoltageX_pincontrol_phase_en 75 */ 76 77 #define IIO_DEV_ATTR_PINCONTROL_PHASE_EN(_channel, _mode, _show, _store, _addr)\ 78 IIO_DEVICE_ATTR(out_altvoltage##_channel##_pincontrol_phase_en, \ 79 _mode, _show, _store, _addr) 80 81 /** 82 * /sys/bus/iio/devices/.../out_altvoltageX_out_enable 83 */ 84 85 #define IIO_DEV_ATTR_OUT_ENABLE(_channel, _mode, _show, _store, _addr) \ 86 IIO_DEVICE_ATTR(out_altvoltage##_channel##_out_enable, \ 87 _mode, _show, _store, _addr) 88 89 /** 90 * /sys/bus/iio/devices/.../out_altvoltageX_outY_enable 91 */ 92 93 #define IIO_DEV_ATTR_OUTY_ENABLE(_channel, _output, \ 94 _mode, _show, _store, _addr) \ 95 IIO_DEVICE_ATTR(out_altvoltage##_channel##_out##_output##_enable,\ 96 _mode, _show, _store, _addr) 97 98 /** 99 * /sys/bus/iio/devices/.../out_altvoltageX_outY_wavetype 100 */ 101 102 #define IIO_DEV_ATTR_OUT_WAVETYPE(_channel, _output, _store, _addr) \ 103 IIO_DEVICE_ATTR(out_altvoltage##_channel##_out##_output##_wavetype,\ 104 0200, NULL, _store, _addr) 105 106 /** 107 * /sys/bus/iio/devices/.../out_altvoltageX_outY_wavetype_available 108 */ 109 110 #define IIO_CONST_ATTR_OUT_WAVETYPES_AVAILABLE(_channel, _output, _modes)\ 111 IIO_CONST_ATTR( \ 112 out_altvoltage##_channel##_out##_output##_wavetype_available, _modes) 113 114 #endif /* IIO_DDS_H_ */ 115