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