|
@@ -196,25 +196,6 @@ ssize_t iio_scan_el_store(struct device *dev, struct device_attribute *attr,
|
|
|
**/
|
|
|
ssize_t iio_scan_el_show(struct device *dev, struct device_attribute *attr,
|
|
|
char *buf);
|
|
|
-/**
|
|
|
- * IIO_SCAN_EL - declare and initialize a scan element without control func
|
|
|
- * @_name: identifying name. Resulting struct is iio_scan_el_##_name,
|
|
|
- * sysfs element, scan_en_##_name.
|
|
|
- * @_number: unique id number for the scan element.
|
|
|
- * @_bits: number of bits in the scan element result (used in mixed bit
|
|
|
- * length devices).
|
|
|
- * @_label: indentification variable used by drivers. Often a reg address.
|
|
|
- **/
|
|
|
-#define IIO_SCAN_EL(_name, _number, _bits, _label) \
|
|
|
- struct iio_scan_el iio_scan_el_##_name = { \
|
|
|
- .dev_attr = __ATTR(scan_en_##_name, \
|
|
|
- S_IRUGO | S_IWUSR, \
|
|
|
- iio_scan_el_show, \
|
|
|
- iio_scan_el_store), \
|
|
|
- .mask = (1 << _number), \
|
|
|
- .bit_count = _bits, \
|
|
|
- .label = _label, \
|
|
|
- }
|
|
|
|
|
|
ssize_t iio_scan_el_ts_store(struct device *dev, struct device_attribute *attr,
|
|
|
const char *buf, size_t len);
|
|
@@ -225,7 +206,7 @@ ssize_t iio_scan_el_ts_show(struct device *dev, struct device_attribute *attr,
|
|
|
* IIO_SCAN_EL_C - declare and initialize a scan element with a control func
|
|
|
*
|
|
|
* @_name: identifying name. Resulting struct is iio_scan_el_##_name,
|
|
|
- * sysfs element, scan_en_##_name.
|
|
|
+ * sysfs element, _name##_en.
|
|
|
* @_number: unique id number for the scan element.
|
|
|
* @_bits: number of bits in the scan element result (used in mixed bit
|
|
|
* length devices).
|
|
@@ -234,7 +215,7 @@ ssize_t iio_scan_el_ts_show(struct device *dev, struct device_attribute *attr,
|
|
|
**/
|
|
|
#define IIO_SCAN_EL_C(_name, _number, _bits, _label, _controlfunc) \
|
|
|
struct iio_scan_el iio_scan_el_##_name = { \
|
|
|
- .dev_attr = __ATTR(scan_en_##_name, \
|
|
|
+ .dev_attr = __ATTR(_number##_##_name##_en, \
|
|
|
S_IRUGO | S_IWUSR, \
|
|
|
iio_scan_el_show, \
|
|
|
iio_scan_el_store), \
|
|
@@ -243,6 +224,19 @@ ssize_t iio_scan_el_ts_show(struct device *dev, struct device_attribute *attr,
|
|
|
.label = _label, \
|
|
|
.set_state = _controlfunc, \
|
|
|
}
|
|
|
+
|
|
|
+#define IIO_SCAN_NAMED_EL_C(_name, _string, _number, _bits, _label, _cf) \
|
|
|
+ struct iio_scan_el iio_scan_el_##_name = { \
|
|
|
+ .dev_attr = __ATTR(_number##_##_string##_en, \
|
|
|
+ S_IRUGO | S_IWUSR, \
|
|
|
+ iio_scan_el_show, \
|
|
|
+ iio_scan_el_store), \
|
|
|
+ .number = _number, \
|
|
|
+ .bit_count = _bits, \
|
|
|
+ .label = _label, \
|
|
|
+ .set_state = _cf, \
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* IIO_SCAN_EL_TIMESTAMP - declare a special scan element for timestamps
|
|
|
*
|