Merge branches 'acpi-hotplug', 'acpi-sysfs' and 'acpi-sleep'
[firefly-linux-kernel-4.4.55.git] / drivers / staging / iio / frequency / dds.h
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
9 /**
10  * /sys/bus/iio/devices/.../out_altvoltageX_frequencyY
11  */
12
13 #define IIO_DEV_ATTR_FREQ(_channel, _num, _mode, _show, _store, _addr)  \
14         IIO_DEVICE_ATTR(out_altvoltage##_channel##_frequency##_num,     \
15                         _mode, _show, _store, _addr)
16
17 /**
18  * /sys/bus/iio/devices/.../out_altvoltageX_frequencyY_scale
19  */
20
21 #define IIO_CONST_ATTR_FREQ_SCALE(_channel, _string)                    \
22         IIO_CONST_ATTR(out_altvoltage##_channel##_frequency_scale, _string)
23
24 /**
25  * /sys/bus/iio/devices/.../out_altvoltageX_frequencysymbol
26  */
27
28 #define IIO_DEV_ATTR_FREQSYMBOL(_channel, _mode, _show, _store, _addr)  \
29         IIO_DEVICE_ATTR(out_altvoltage##_channel##_frequencysymbol,     \
30                         _mode, _show, _store, _addr);
31
32 /**
33  * /sys/bus/iio/devices/.../out_altvoltageX_phaseY
34  */
35
36 #define IIO_DEV_ATTR_PHASE(_channel, _num, _mode, _show, _store, _addr) \
37         IIO_DEVICE_ATTR(out_altvoltage##_channel##_phase##_num,         \
38                         _mode, _show, _store, _addr)
39
40 /**
41  * /sys/bus/iio/devices/.../out_altvoltageX_phaseY_scale
42  */
43
44 #define IIO_CONST_ATTR_PHASE_SCALE(_channel, _string)                   \
45         IIO_CONST_ATTR(out_altvoltage##_channel##_phase_scale, _string)
46
47 /**
48  * /sys/bus/iio/devices/.../out_altvoltageX_phasesymbol
49  */
50
51 #define IIO_DEV_ATTR_PHASESYMBOL(_channel, _mode, _show, _store, _addr) \
52         IIO_DEVICE_ATTR(out_altvoltage##_channel##_phasesymbol,         \
53                         _mode, _show, _store, _addr);
54
55 /**
56  * /sys/bus/iio/devices/.../out_altvoltageX_pincontrol_en
57  */
58
59 #define IIO_DEV_ATTR_PINCONTROL_EN(_channel, _mode, _show, _store, _addr)\
60         IIO_DEVICE_ATTR(out_altvoltage##_channel##_pincontrol_en,       \
61                         _mode, _show, _store, _addr);
62
63 /**
64  * /sys/bus/iio/devices/.../out_altvoltageX_pincontrol_frequency_en
65  */
66
67 #define IIO_DEV_ATTR_PINCONTROL_FREQ_EN(_channel, _mode, _show, _store, _addr)\
68         IIO_DEVICE_ATTR(out_altvoltage##_channel##_pincontrol_frequency_en,\
69                         _mode, _show, _store, _addr);
70
71 /**
72  * /sys/bus/iio/devices/.../out_altvoltageX_pincontrol_phase_en
73  */
74
75 #define IIO_DEV_ATTR_PINCONTROL_PHASE_EN(_channel, _mode, _show, _store, _addr)\
76         IIO_DEVICE_ATTR(out_altvoltage##_channel##_pincontrol_phase_en, \
77                         _mode, _show, _store, _addr);
78
79 /**
80  * /sys/bus/iio/devices/.../out_altvoltageX_out_enable
81  */
82
83 #define IIO_DEV_ATTR_OUT_ENABLE(_channel, _mode, _show, _store, _addr)  \
84         IIO_DEVICE_ATTR(out_altvoltage##_channel##_out_enable,          \
85                         _mode, _show, _store, _addr);
86
87 /**
88  * /sys/bus/iio/devices/.../out_altvoltageX_outY_enable
89  */
90
91 #define IIO_DEV_ATTR_OUTY_ENABLE(_channel, _output,                     \
92                         _mode, _show, _store, _addr)                    \
93         IIO_DEVICE_ATTR(out_altvoltage##_channel##_out##_output##_enable,\
94                         _mode, _show, _store, _addr);
95
96 /**
97  * /sys/bus/iio/devices/.../out_altvoltageX_outY_wavetype
98  */
99
100 #define IIO_DEV_ATTR_OUT_WAVETYPE(_channel, _output, _store, _addr)     \
101         IIO_DEVICE_ATTR(out_altvoltage##_channel##_out##_output##_wavetype,\
102                         S_IWUSR, NULL, _store, _addr);
103
104 /**
105  * /sys/bus/iio/devices/.../out_altvoltageX_outY_wavetype_available
106  */
107
108 #define IIO_CONST_ATTR_OUT_WAVETYPES_AVAILABLE(_channel, _output, _modes)\
109         IIO_CONST_ATTR(                                                 \
110         out_altvoltage##_channel##_out##_output##_wavetype_available, _modes);