1What: /sys/bus/iio/devices/iio:deviceX/buffer/length 2KernelVersion: 2.6.35 3Contact: linux-iio@vger.kernel.org 4Description: 5 Number of scans contained by the buffer. 6 7 Since Kernel 5.11, multiple buffers are supported. 8 so, it is better to use, instead: 9 10 /sys/bus/iio/devices/iio:deviceX/bufferY/length 11 12What: /sys/bus/iio/devices/iio:deviceX/buffer/enable 13KernelVersion: 2.6.35 14Contact: linux-iio@vger.kernel.org 15Description: 16 Actually start the buffer capture up. Will start trigger 17 if first device and appropriate. 18 19 Since Kernel 5.11, multiple buffers are supported. 20 so, it is better to use, instead: 21 22 /sys/bus/iio/devices/iio:deviceX/bufferY/enable 23 24What: /sys/bus/iio/devices/iio:deviceX/scan_elements 25KernelVersion: 2.6.37 26Contact: linux-iio@vger.kernel.org 27Description: 28 Directory containing interfaces for elements that will be 29 captured for a single triggered sample set in the buffer. 30 31 Since kernel 5.11 the scan_elements attributes are merged into 32 the bufferY directory, to be configurable per buffer. 33 34What: /sys/.../iio:deviceX/scan_elements/in_accel_x_en 35What: /sys/.../iio:deviceX/scan_elements/in_accel_y_en 36What: /sys/.../iio:deviceX/scan_elements/in_accel_z_en 37What: /sys/.../iio:deviceX/scan_elements/in_anglvel_x_en 38What: /sys/.../iio:deviceX/scan_elements/in_anglvel_y_en 39What: /sys/.../iio:deviceX/scan_elements/in_anglvel_z_en 40What: /sys/.../iio:deviceX/scan_elements/in_magn_x_en 41What: /sys/.../iio:deviceX/scan_elements/in_magn_y_en 42What: /sys/.../iio:deviceX/scan_elements/in_magn_z_en 43What: /sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_en 44What: /sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_en 45What: /sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_tilt_comp_en 46What: /sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_tilt_comp_en 47What: /sys/.../iio:deviceX/scan_elements/in_timestamp_en 48What: /sys/.../iio:deviceX/scan_elements/in_voltageY_supply_en 49What: /sys/.../iio:deviceX/scan_elements/in_voltageY_en 50What: /sys/.../iio:deviceX/scan_elements/in_voltageY-voltageZ_en 51What: /sys/.../iio:deviceX/scan_elements/in_incli_x_en 52What: /sys/.../iio:deviceX/scan_elements/in_incli_y_en 53What: /sys/.../iio:deviceX/scan_elements/in_pressureY_en 54What: /sys/.../iio:deviceX/scan_elements/in_pressure_en 55What: /sys/.../iio:deviceX/scan_elements/in_rot_quaternion_en 56What: /sys/.../iio:deviceX/scan_elements/in_proximity_en 57KernelVersion: 2.6.37 58Contact: linux-iio@vger.kernel.org 59Description: 60 Scan element control for triggered data capture. 61 62 Since kernel 5.11 the scan_elements attributes are merged into 63 the bufferY directory, to be configurable per buffer. 64 65What: /sys/.../iio:deviceX/scan_elements/in_accel_type 66What: /sys/.../iio:deviceX/scan_elements/in_anglvel_type 67What: /sys/.../iio:deviceX/scan_elements/in_magn_type 68What: /sys/.../iio:deviceX/scan_elements/in_incli_type 69What: /sys/.../iio:deviceX/scan_elements/in_voltageY_type 70What: /sys/.../iio:deviceX/scan_elements/in_voltage_type 71What: /sys/.../iio:deviceX/scan_elements/in_voltageY_supply_type 72What: /sys/.../iio:deviceX/scan_elements/in_timestamp_type 73What: /sys/.../iio:deviceX/scan_elements/in_pressureY_type 74What: /sys/.../iio:deviceX/scan_elements/in_pressure_type 75What: /sys/.../iio:deviceX/scan_elements/in_rot_quaternion_type 76What: /sys/.../iio:deviceX/scan_elements/in_proximity_type 77KernelVersion: 2.6.37 78Contact: linux-iio@vger.kernel.org 79Description: 80 Description of the scan element data storage within the buffer 81 and hence the form in which it is read from user-space. 82 Form is [be|le]:[s|u]bits/storagebits[>>shift]. 83 be or le specifies big or little endian. s or u specifies if 84 signed (2's complement) or unsigned. bits is the number of bits 85 of data and storagebits is the space (after padding) that it 86 occupies in the buffer. shift if specified, is the shift that 87 needs to be applied prior to masking out unused bits. Some 88 devices put their data in the middle of the transferred elements 89 with additional information on both sides. Note that some 90 devices will have additional information in the unused bits 91 so to get a clean value, the bits value must be used to mask 92 the buffer output value appropriately. The storagebits value 93 also specifies the data alignment. So s48/64>>2 will be a 94 signed 48 bit integer stored in a 64 bit location aligned to 95 a 64 bit boundary. To obtain the clean value, shift right 2 96 and apply a mask to zero the top 16 bits of the result. 97 For other storage combinations this attribute will be extended 98 appropriately. 99 100 Since kernel 5.11 the scan_elements attributes are merged into 101 the bufferY directory, to be configurable per buffer. 102 103What: /sys/.../iio:deviceX/scan_elements/in_voltageY_index 104What: /sys/.../iio:deviceX/scan_elements/in_voltageY_supply_index 105What: /sys/.../iio:deviceX/scan_elements/in_accel_x_index 106What: /sys/.../iio:deviceX/scan_elements/in_accel_y_index 107What: /sys/.../iio:deviceX/scan_elements/in_accel_z_index 108What: /sys/.../iio:deviceX/scan_elements/in_anglvel_x_index 109What: /sys/.../iio:deviceX/scan_elements/in_anglvel_y_index 110What: /sys/.../iio:deviceX/scan_elements/in_anglvel_z_index 111What: /sys/.../iio:deviceX/scan_elements/in_magn_x_index 112What: /sys/.../iio:deviceX/scan_elements/in_magn_y_index 113What: /sys/.../iio:deviceX/scan_elements/in_magn_z_index 114What: /sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_index 115What: /sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_index 116What: /sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_tilt_comp_index 117What: /sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_tilt_comp_index 118What: /sys/.../iio:deviceX/scan_elements/in_incli_x_index 119What: /sys/.../iio:deviceX/scan_elements/in_incli_y_index 120What: /sys/.../iio:deviceX/scan_elements/in_timestamp_index 121What: /sys/.../iio:deviceX/scan_elements/in_pressureY_index 122What: /sys/.../iio:deviceX/scan_elements/in_pressure_index 123What: /sys/.../iio:deviceX/scan_elements/in_rot_quaternion_index 124What: /sys/.../iio:deviceX/scan_elements/in_proximity_index 125KernelVersion: 2.6.37 126Description: 127 A single positive integer specifying the position of this 128 scan element in the buffer. Note these are not dependent on 129 what is enabled and may not be contiguous. Thus for user-space 130 to establish the full layout these must be used in conjunction 131 with all _en attributes to establish which channels are present, 132 and the relevant _type attributes to establish the data storage 133 format. 134 135 Since kernel 5.11 the scan_elements attributes are merged into 136 the bufferY directory, to be configurable per buffer. 137 138What: /sys/bus/iio/devices/iio:deviceX/buffer/watermark 139KernelVersion: 4.2 140Contact: linux-iio@vger.kernel.org 141Description: 142 A single positive integer specifying the maximum number of scan 143 elements to wait for. 144 145 Poll will block until the watermark is reached. 146 147 Blocking read will wait until the minimum between the requested 148 read amount or the low water mark is available. 149 150 Non-blocking read will retrieve the available samples from the 151 buffer even if there are less samples then watermark level. This 152 allows the application to block on poll with a timeout and read 153 the available samples after the timeout expires and thus have a 154 maximum delay guarantee. 155 156 Since Kernel 5.11, multiple buffers are supported. 157 so, it is better to use, instead: 158 159 /sys/bus/iio/devices/iio:deviceX/bufferY/watermark 160 161What: /sys/bus/iio/devices/iio:deviceX/buffer/data_available 162KernelVersion: 4.16 163Contact: linux-iio@vger.kernel.org 164Description: 165 A read-only value indicating the bytes of data available in the 166 buffer. In the case of an output buffer, this indicates the 167 amount of empty space available to write data to. In the case of 168 an input buffer, this indicates the amount of data available for 169 reading. 170 171 Since Kernel 5.11, multiple buffers are supported. 172 so, it is better to use, instead: 173 174 /sys/bus/iio/devices/iio:deviceX/bufferY/data_available 175