Lines Matching +full:function +full:- +full:mask

1 /* SPDX-License-Identifier: GPL-2.0-only */
39 * struct iio_chan_spec_ext_info - Extended channel info attribute
58 * struct iio_enum - Enum channel info attribute
61 * @set: Set callback function, may be NULL.
62 * @get: Get callback function, may be NULL.
89 * IIO_ENUM() - Initialize enum extended channel attribute
106 * IIO_ENUM_AVAILABLE() - Initialize enum available extended channel attribute
123 * struct iio_mount_matrix - iio mounting matrix
140 * IIO_MOUNT_MATRIX() - Initialize mount matrix extended channel attribute
153 * struct iio_event_spec - specification for a channel event
156 * @mask_separate: Bit mask of enum iio_event_info values. Attributes
157 * set in this mask will be registered per channel.
158 * @mask_shared_by_type: Bit mask of enum iio_event_info values. Attributes
159 * set in this mask will be shared by channel type.
160 * @mask_shared_by_dir: Bit mask of enum iio_event_info values. Attributes
161 * set in this mask will be shared by channel type and
163 * @mask_shared_by_all: Bit mask of enum iio_event_info values. Attributes
164 * set in this mask will be shared by all channels.
176 * struct iio_chan_spec - specification of a single channel
225 * iio_info->read_label() to override the label, which
227 * @datasheet_name: A name used in in-kernel mapping of channels. It should
230 * possible compound name (e.g. IND-INC).
276 * iio_channel_has_info() - Checks whether a channel supports a info attribute
286 return (chan->info_mask_separate & BIT(type)) | in iio_channel_has_info()
287 (chan->info_mask_shared_by_type & BIT(type)) | in iio_channel_has_info()
288 (chan->info_mask_shared_by_dir & BIT(type)) | in iio_channel_has_info()
289 (chan->info_mask_shared_by_all & BIT(type)); in iio_channel_has_info()
293 * iio_channel_has_available() - Checks if a channel has an available attribute
303 return (chan->info_mask_separate_available & BIT(type)) | in iio_channel_has_available()
304 (chan->info_mask_shared_by_type_available & BIT(type)) | in iio_channel_has_available()
305 (chan->info_mask_shared_by_dir_available & BIT(type)) | in iio_channel_has_available()
306 (chan->info_mask_shared_by_all_available & BIT(type)); in iio_channel_has_available()
311 .channel = -1, \
326 * on-demand reads.
327 * b) A new value after performing an on-demand read otherwise.
328 * On most devices, this is a single-shot read. On some devices with data
329 * streams without an 'on-demand' function, this might also be the 'last value'
335 * attach a poll function when enabling the buffer, which is indicated by the
340 * No poll function can be attached because there is no triggered infrastructure
345 * any poll function when enabling the buffer.
395 * struct iio_info - constant information about device
398 * @read_raw: function to request a value from the device.
399 * mask specifies which value. Note 0 means a reading of
403 * @read_raw_multi: function to return values from the device.
404 * mask specifies which value. Note 0 means a reading of
411 * @read_avail: function to return the available values from the device.
412 * mask specifies which value. Note 0 means the available
419 * @write_raw: function to write a value to the device.
421 * @read_label: function to request label name for a specified label,
423 * @write_raw_get_fmt: callback function to query the expected
430 * @read_event_label: function to request label name for a specified label,
432 * @validate_trigger: function to validate the trigger when the
434 * @update_scan_mode: function to configure device and scan buffer when
436 * @debugfs_reg_access: function to read or write register value of device
437 * @fwnode_xlate: fwnode based function pointer to obtain channel specifier index.
438 * @hwfifo_set_watermark: function pointer to set the current hardware
440 * Documentation/ABI/testing/sysfs-bus-iio for details on
442 * @hwfifo_flush_to_buffer: function pointer to flush the samples stored
444 * should not flush more than count samples. The function
457 long mask);
464 long mask);
471 long mask);
477 long mask);
485 long mask);
531 * struct iio_buffer_setup_ops - buffer setup related callbacks
532 * @preenable: [DRIVER] function to run prior to marking buffer enabled
533 * @postenable: [DRIVER] function to run after marking buffer enabled
534 * @predisable: [DRIVER] function to run prior to marking buffer
536 * @postdisable: [DRIVER] function to run after marking buffer disabled
537 * @validate_scan_mask: [DRIVER] function callback to check whether a given
538 * scan mask is valid for the device.
550 * struct iio_dev - industrial I/O device
564 * @masklength: [INTERN] the length of the mask established from
569 * @pollfunc: [DRIVER] function run on trigger being received
570 * @pollfunc_event: [DRIVER] function run on events trigger being received
614 * iio_device_register() - register a device with the IIO subsystem
622 * devm_iio_device_register - Resource-managed iio_device_register()
627 * function is automatically unregistered on driver detach. This function
628 * calls iio_device_register() internally. Refer to that function for more
647 * iio_device_put() - reference counted deallocation of struct device
653 put_device(&indio_dev->dev); in iio_device_put()
660 * dev_to_iio_dev() - Get IIO device struct from a device struct
671 * iio_device_get() - increment reference count for the device
678 return indio_dev ? dev_to_iio_dev(get_device(&indio_dev->dev)) : NULL; in iio_device_get()
682 * iio_device_set_parent() - assign parent device to the IIO device object
699 indio_dev->dev.parent = parent; in iio_device_set_parent()
703 * iio_device_set_drvdata() - Set device driver data
712 dev_set_drvdata(&indio_dev->dev, data); in iio_device_set_drvdata()
716 * iio_device_get_drvdata() - Get device driver data
723 return dev_get_drvdata(&indio_dev->dev); in iio_device_get_drvdata()
730 * them safe for use with non-coherent DMA.
738 return indio_dev->priv; in iio_priv()
751 * iio_get_debugfs_dentry() - helper function to get the debugfs_dentry
769 * IIO_DEGREE_TO_RAD() - Convert degree to rad
777 * IIO_RAD_TO_DEGREE() - Convert rad to degree
786 * IIO_G_TO_M_S_2() - Convert g to meter / second**2
794 * IIO_M_S_2_TO_G() - Convert meter / second**2 to g