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_voltageY_i_en 52What: /sys/.../iio:deviceX/scan_elements/in_voltageY_q_en 53What: /sys/.../iio:deviceX/scan_elements/in_voltage_i_en 54What: /sys/.../iio:deviceX/scan_elements/in_voltage_q_en 55What: /sys/.../iio:deviceX/scan_elements/in_incli_x_en 56What: /sys/.../iio:deviceX/scan_elements/in_incli_y_en 57What: /sys/.../iio:deviceX/scan_elements/in_pressureY_en 58What: /sys/.../iio:deviceX/scan_elements/in_pressure_en 59What: /sys/.../iio:deviceX/scan_elements/in_rot_quaternion_en 60What: /sys/.../iio:deviceX/scan_elements/in_proximity_en 61KernelVersion: 2.6.37 62Contact: linux-iio@vger.kernel.org 63Description: 64 Scan element control for triggered data capture. 65 66 Since kernel 5.11 the scan_elements attributes are merged into 67 the bufferY directory, to be configurable per buffer. 68 69What: /sys/.../iio:deviceX/scan_elements/in_accel_type 70What: /sys/.../iio:deviceX/scan_elements/in_anglvel_type 71What: /sys/.../iio:deviceX/scan_elements/in_magn_type 72What: /sys/.../iio:deviceX/scan_elements/in_incli_type 73What: /sys/.../iio:deviceX/scan_elements/in_voltageY_type 74What: /sys/.../iio:deviceX/scan_elements/in_voltage_type 75What: /sys/.../iio:deviceX/scan_elements/in_voltageY_supply_type 76What: /sys/.../iio:deviceX/scan_elements/in_voltageY_i_type 77What: /sys/.../iio:deviceX/scan_elements/in_voltageY_q_type 78What: /sys/.../iio:deviceX/scan_elements/in_voltage_i_type 79What: /sys/.../iio:deviceX/scan_elements/in_voltage_q_type 80What: /sys/.../iio:deviceX/scan_elements/in_timestamp_type 81What: /sys/.../iio:deviceX/scan_elements/in_pressureY_type 82What: /sys/.../iio:deviceX/scan_elements/in_pressure_type 83What: /sys/.../iio:deviceX/scan_elements/in_rot_quaternion_type 84What: /sys/.../iio:deviceX/scan_elements/in_proximity_type 85KernelVersion: 2.6.37 86Contact: linux-iio@vger.kernel.org 87Description: 88 Description of the scan element data storage within the buffer 89 and hence the form in which it is read from user-space. 90 Form is [be|le]:[s|u]bits/storagebits[>>shift]. 91 be or le specifies big or little endian. s or u specifies if 92 signed (2's complement) or unsigned. bits is the number of bits 93 of data and storagebits is the space (after padding) that it 94 occupies in the buffer. shift if specified, is the shift that 95 needs to be applied prior to masking out unused bits. Some 96 devices put their data in the middle of the transferred elements 97 with additional information on both sides. Note that some 98 devices will have additional information in the unused bits 99 so to get a clean value, the bits value must be used to mask 100 the buffer output value appropriately. The storagebits value 101 also specifies the data alignment. So s48/64>>2 will be a 102 signed 48 bit integer stored in a 64 bit location aligned to 103 a 64 bit boundary. To obtain the clean value, shift right 2 104 and apply a mask to zero the top 16 bits of the result. 105 For other storage combinations this attribute will be extended 106 appropriately. 107 108 Since kernel 5.11 the scan_elements attributes are merged into 109 the bufferY directory, to be configurable per buffer. 110 111What: /sys/.../iio:deviceX/scan_elements/in_voltageY_index 112What: /sys/.../iio:deviceX/scan_elements/in_voltageY_supply_index 113What: /sys/.../iio:deviceX/scan_elements/in_voltageY_i_index 114What: /sys/.../iio:deviceX/scan_elements/in_voltageY_q_index 115What: /sys/.../iio:deviceX/scan_elements/in_voltage_i_index 116What: /sys/.../iio:deviceX/scan_elements/in_voltage_q_index 117What: /sys/.../iio:deviceX/scan_elements/in_accel_x_index 118What: /sys/.../iio:deviceX/scan_elements/in_accel_y_index 119What: /sys/.../iio:deviceX/scan_elements/in_accel_z_index 120What: /sys/.../iio:deviceX/scan_elements/in_anglvel_x_index 121What: /sys/.../iio:deviceX/scan_elements/in_anglvel_y_index 122What: /sys/.../iio:deviceX/scan_elements/in_anglvel_z_index 123What: /sys/.../iio:deviceX/scan_elements/in_magn_x_index 124What: /sys/.../iio:deviceX/scan_elements/in_magn_y_index 125What: /sys/.../iio:deviceX/scan_elements/in_magn_z_index 126What: /sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_index 127What: /sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_index 128What: /sys/.../iio:deviceX/scan_elements/in_rot_from_north_magnetic_tilt_comp_index 129What: /sys/.../iio:deviceX/scan_elements/in_rot_from_north_true_tilt_comp_index 130What: /sys/.../iio:deviceX/scan_elements/in_incli_x_index 131What: /sys/.../iio:deviceX/scan_elements/in_incli_y_index 132What: /sys/.../iio:deviceX/scan_elements/in_timestamp_index 133What: /sys/.../iio:deviceX/scan_elements/in_pressureY_index 134What: /sys/.../iio:deviceX/scan_elements/in_pressure_index 135What: /sys/.../iio:deviceX/scan_elements/in_rot_quaternion_index 136What: /sys/.../iio:deviceX/scan_elements/in_proximity_index 137KernelVersion: 2.6.37 138Description: 139 A single positive integer specifying the position of this 140 scan element in the buffer. Note these are not dependent on 141 what is enabled and may not be contiguous. Thus for user-space 142 to establish the full layout these must be used in conjunction 143 with all _en attributes to establish which channels are present, 144 and the relevant _type attributes to establish the data storage 145 format. 146 147 Since kernel 5.11 the scan_elements attributes are merged into 148 the bufferY directory, to be configurable per buffer. 149 150What: /sys/bus/iio/devices/iio:deviceX/buffer/watermark 151KernelVersion: 4.2 152Contact: linux-iio@vger.kernel.org 153Description: 154 A single positive integer specifying the maximum number of scan 155 elements to wait for. 156 157 Poll will block until the watermark is reached. 158 159 Blocking read will wait until the minimum between the requested 160 read amount or the low water mark is available. 161 162 Non-blocking read will retrieve the available samples from the 163 buffer even if there are less samples then watermark level. This 164 allows the application to block on poll with a timeout and read 165 the available samples after the timeout expires and thus have a 166 maximum delay guarantee. 167 168 Since Kernel 5.11, multiple buffers are supported. 169 so, it is better to use, instead: 170 171 /sys/bus/iio/devices/iio:deviceX/bufferY/watermark 172 173What: /sys/bus/iio/devices/iio:deviceX/buffer/data_available 174KernelVersion: 4.16 175Contact: linux-iio@vger.kernel.org 176Description: 177 A read-only value indicating the bytes of data available in the 178 buffer. In the case of an output buffer, this indicates the 179 amount of empty space available to write data to. In the case of 180 an input buffer, this indicates the amount of data available for 181 reading. 182 183 Since Kernel 5.11, multiple buffers are supported. 184 so, it is better to use, instead: 185 186 /sys/bus/iio/devices/iio:deviceX/bufferY/data_available 187