1What: /sys/bus/counter/devices/counterX/countY/count 2KernelVersion: 5.2 3Contact: linux-iio@vger.kernel.org 4Description: 5 Count data of Count Y represented as a string. 6 7What: /sys/bus/counter/devices/counterX/countY/capture 8KernelVersion: 6.1 9Contact: linux-iio@vger.kernel.org 10Description: 11 Historical capture of the Count Y count data. 12 13What: /sys/bus/counter/devices/counterX/countY/ceiling 14KernelVersion: 5.2 15Contact: linux-iio@vger.kernel.org 16Description: 17 Count value ceiling for Count Y. This is the upper limit for the 18 respective counter. 19 20What: /sys/bus/counter/devices/counterX/countY/floor 21KernelVersion: 5.2 22Contact: linux-iio@vger.kernel.org 23Description: 24 Count value floor for Count Y. This is the lower limit for the 25 respective counter. 26 27What: /sys/bus/counter/devices/counterX/countY/count_mode 28KernelVersion: 5.2 29Contact: linux-iio@vger.kernel.org 30Description: 31 Count mode for channel Y. The ceiling and floor values for 32 Count Y are used by the count mode where required. The following 33 count modes are available: 34 35 normal: 36 Counting is continuous in either direction. 37 38 range limit: 39 An upper or lower limit is set, mimicking limit switches 40 in the mechanical counterpart. The upper limit is set to 41 the Count Y ceiling value, while the lower limit is set 42 to the Count Y floor value. The counter freezes at 43 count = ceiling when counting up, and at count = floor 44 when counting down. At either of these limits, the 45 counting is resumed only when the count direction is 46 reversed. 47 48 non-recycle: 49 The counter is disabled whenever a counter overflow or 50 underflow takes place. The counter is re-enabled when a 51 new count value is loaded to the counter via a preset 52 operation or direct write. 53 54 modulo-n: 55 A count value boundary is set between the Count Y floor 56 value and the Count Y ceiling value. The counter is 57 reset to the Count Y floor value at count = ceiling when 58 counting up, while the counter is set to the Count Y 59 ceiling value at count = floor when counting down; the 60 counter does not freeze at the boundary points, but 61 counts continuously throughout. 62 63What: /sys/bus/counter/devices/counterX/countY/count_mode_available 64What: /sys/bus/counter/devices/counterX/countY/error_noise_available 65What: /sys/bus/counter/devices/counterX/countY/function_available 66What: /sys/bus/counter/devices/counterX/countY/prescaler_available 67What: /sys/bus/counter/devices/counterX/countY/signalZ_action_available 68KernelVersion: 5.2 69Contact: linux-iio@vger.kernel.org 70Description: 71 Discrete set of available values for the respective Count Y 72 configuration are listed in this file. Values are delimited by 73 newline characters. 74 75What: /sys/bus/counter/devices/counterX/countY/direction 76KernelVersion: 5.2 77Contact: linux-iio@vger.kernel.org 78Description: 79 Read-only attribute that indicates the count direction of Count 80 Y. Two count directions are available: forward and backward. 81 82 Some counter devices are able to determine the direction of 83 their counting. For example, quadrature encoding counters can 84 determine the direction of movement by evaluating the leading 85 phase of the respective A and B quadrature encoding signals. 86 This attribute exposes such count directions. 87 88What: /sys/bus/counter/devices/counterX/countY/enable 89KernelVersion: 5.2 90Contact: linux-iio@vger.kernel.org 91Description: 92 Whether channel Y counter is enabled. Valid attribute values are 93 boolean. 94 95 This attribute is intended to serve as a pause/unpause mechanism 96 for Count Y. Suppose a counter device is used to count the total 97 movement of a conveyor belt: this attribute allows an operator 98 to temporarily pause the counter, service the conveyor belt, 99 and then finally unpause the counter to continue where it had 100 left off. 101 102What: /sys/bus/counter/devices/counterX/countY/error_noise 103KernelVersion: 5.2 104Contact: linux-iio@vger.kernel.org 105Description: 106 Read-only attribute that indicates whether excessive noise is 107 present at the channel Y counter inputs. 108 109What: /sys/bus/counter/devices/counterX/countY/function 110KernelVersion: 5.2 111Contact: linux-iio@vger.kernel.org 112Description: 113 Count function mode of Count Y; count function evaluation is 114 triggered by conditions specified by the Count Y signalZ_action 115 attributes. The following count functions are available: 116 117 increase: 118 Accumulated count is incremented. 119 120 decrease: 121 Accumulated count is decremented. 122 123 pulse-direction: 124 Rising edges on signal A updates the respective count. 125 The input level of signal B determines direction. 126 127 quadrature x1 a: 128 If direction is forward, rising edges on quadrature pair 129 signal A updates the respective count; if the direction 130 is backward, falling edges on quadrature pair signal A 131 updates the respective count. Quadrature encoding 132 determines the direction. 133 134 quadrature x1 b: 135 If direction is forward, rising edges on quadrature pair 136 signal B updates the respective count; if the direction 137 is backward, falling edges on quadrature pair signal B 138 updates the respective count. Quadrature encoding 139 determines the direction. 140 141 quadrature x2 a: 142 Any state transition on quadrature pair signal A updates 143 the respective count. Quadrature encoding determines the 144 direction. 145 146 quadrature x2 b: 147 Any state transition on quadrature pair signal B updates 148 the respective count. Quadrature encoding determines the 149 direction. 150 151 quadrature x4: 152 Any state transition on either quadrature pair signals 153 updates the respective count. Quadrature encoding 154 determines the direction. 155 156What: /sys/bus/counter/devices/counterX/countY/name 157KernelVersion: 5.2 158Contact: linux-iio@vger.kernel.org 159Description: 160 Read-only attribute that indicates the device-specific name of 161 Count Y. If possible, this should match the name of the 162 respective channel as it appears in the device datasheet. 163 164What: /sys/bus/counter/devices/counterX/countY/prescaler 165KernelVersion: 5.2 166Contact: linux-iio@vger.kernel.org 167Description: 168 Configure the prescaler value associated with Count Y. 169 On the FlexTimer, the counter clock source passes through a 170 prescaler (i.e. a counter). This acts like a clock 171 divider. 172 173What: /sys/bus/counter/devices/counterX/countY/preset 174KernelVersion: 5.2 175Contact: linux-iio@vger.kernel.org 176Description: 177 If the counter device supports preset registers -- registers 178 used to load counter channels to a set count upon device-defined 179 preset operation trigger events -- the preset count for channel 180 Y is provided by this attribute. 181 182What: /sys/bus/counter/devices/counterX/countY/preset_enable 183KernelVersion: 5.2 184Contact: linux-iio@vger.kernel.org 185Description: 186 Whether channel Y counter preset operation is enabled. Valid 187 attribute values are boolean. 188 189What: /sys/bus/counter/devices/counterX/countY/signalZ_action 190KernelVersion: 5.2 191Contact: linux-iio@vger.kernel.org 192Description: 193 Action mode of Count Y for Signal Z. This attribute indicates 194 the condition of Signal Z that triggers the count function 195 evaluation for Count Y. The following action modes are 196 available: 197 198 none: 199 Signal does not trigger the count function. In 200 Pulse-Direction count function mode, this Signal is 201 evaluated as Direction. 202 203 rising edge: 204 Low state transitions to high state. 205 206 falling edge: 207 High state transitions to low state. 208 209 both edges: 210 Any state transition. 211 212What: /sys/bus/counter/devices/counterX/countY/num_overflows 213KernelVersion: 6.1 214Contact: linux-iio@vger.kernel.org 215Description: 216 This attribute indicates the number of overflows of count Y. 217 218What: /sys/bus/counter/devices/counterX/countY/capture_component_id 219What: /sys/bus/counter/devices/counterX/countY/ceiling_component_id 220What: /sys/bus/counter/devices/counterX/countY/floor_component_id 221What: /sys/bus/counter/devices/counterX/countY/count_mode_component_id 222What: /sys/bus/counter/devices/counterX/countY/direction_component_id 223What: /sys/bus/counter/devices/counterX/countY/enable_component_id 224What: /sys/bus/counter/devices/counterX/countY/error_noise_component_id 225What: /sys/bus/counter/devices/counterX/countY/prescaler_component_id 226What: /sys/bus/counter/devices/counterX/countY/preset_component_id 227What: /sys/bus/counter/devices/counterX/countY/preset_enable_component_id 228What: /sys/bus/counter/devices/counterX/countY/signalZ_action_component_id 229What: /sys/bus/counter/devices/counterX/countY/num_overflows_component_id 230What: /sys/bus/counter/devices/counterX/signalY/cable_fault_component_id 231What: /sys/bus/counter/devices/counterX/signalY/cable_fault_enable_component_id 232What: /sys/bus/counter/devices/counterX/signalY/filter_clock_prescaler_component_id 233What: /sys/bus/counter/devices/counterX/signalY/index_polarity_component_id 234What: /sys/bus/counter/devices/counterX/signalY/polarity_component_id 235What: /sys/bus/counter/devices/counterX/signalY/synchronous_mode_component_id 236What: /sys/bus/counter/devices/counterX/signalY/frequency_component_id 237KernelVersion: 5.16 238Contact: linux-iio@vger.kernel.org 239Description: 240 Read-only attribute that indicates the component ID of the 241 respective extension or Synapse. 242 243What: /sys/bus/counter/devices/counterX/countY/spike_filter_ns 244KernelVersion: 5.14 245Contact: linux-iio@vger.kernel.org 246Description: 247 If the counter device supports programmable spike filter this 248 attribute indicates the value in nanoseconds where noise pulses 249 shorter or equal to configured value are ignored. Value 0 means 250 filter is disabled. 251 252What: /sys/bus/counter/devices/counterX/events_queue_size 253KernelVersion: 5.16 254Contact: linux-iio@vger.kernel.org 255Description: 256 Size of the Counter events queue in number of struct 257 counter_event data structures. The number of elements will be 258 rounded-up to a power of 2. 259 260What: /sys/bus/counter/devices/counterX/name 261KernelVersion: 5.2 262Contact: linux-iio@vger.kernel.org 263Description: 264 Read-only attribute that indicates the device-specific name of 265 the Counter. This should match the name of the device as it 266 appears in its respective datasheet. 267 268What: /sys/bus/counter/devices/counterX/num_counts 269KernelVersion: 5.2 270Contact: linux-iio@vger.kernel.org 271Description: 272 Read-only attribute that indicates the total number of Counts 273 belonging to the Counter. 274 275What: /sys/bus/counter/devices/counterX/num_signals 276KernelVersion: 5.2 277Contact: linux-iio@vger.kernel.org 278Description: 279 Read-only attribute that indicates the total number of Signals 280 belonging to the Counter. 281 282What: /sys/bus/counter/devices/counterX/signalY/cable_fault 283KernelVersion: 5.7 284Contact: linux-iio@vger.kernel.org 285Description: 286 Read-only attribute that indicates whether a differential 287 encoder cable fault (not connected or loose wires) is detected 288 for the respective channel of Signal Y. Valid attribute values 289 are boolean. Detection must first be enabled via the 290 corresponding cable_fault_enable attribute. 291 292What: /sys/bus/counter/devices/counterX/signalY/cable_fault_enable 293KernelVersion: 5.7 294Contact: linux-iio@vger.kernel.org 295Description: 296 Whether detection of differential encoder cable faults for the 297 respective channel of Signal Y is enabled. Valid attribute 298 values are boolean. 299 300What: /sys/bus/counter/devices/counterX/signalY/filter_clock_prescaler 301KernelVersion: 5.7 302Contact: linux-iio@vger.kernel.org 303Description: 304 Filter clock factor for input Signal Y. This prescaler value 305 affects the inputs of both quadrature pair signals. 306 307What: /sys/bus/counter/devices/counterX/signalY/index_polarity 308KernelVersion: 5.2 309Contact: linux-iio@vger.kernel.org 310Description: 311 Active level of index input Signal Y; irrelevant in 312 non-synchronous load mode. 313 314What: /sys/bus/counter/devices/counterX/signalY/index_polarity_available 315What: /sys/bus/counter/devices/counterX/signalY/synchronous_mode_available 316KernelVersion: 5.2 317Contact: linux-iio@vger.kernel.org 318Description: 319 Discrete set of available values for the respective Signal Y 320 configuration are listed in this file. 321 322What: /sys/bus/counter/devices/counterX/signalY/polarity 323KernelVersion: 6.1 324Contact: linux-iio@vger.kernel.org 325Description: 326 Active level of Signal Y. The following polarity values are 327 available: 328 329 positive: 330 Signal high state considered active level (rising edge). 331 332 negative: 333 Signal low state considered active level (falling edge). 334 335What: /sys/bus/counter/devices/counterX/signalY/name 336KernelVersion: 5.2 337Contact: linux-iio@vger.kernel.org 338Description: 339 Read-only attribute that indicates the device-specific name of 340 Signal Y. If possible, this should match the name of the 341 respective signal as it appears in the device datasheet. 342 343What: /sys/bus/counter/devices/counterX/signalY/signal 344KernelVersion: 5.2 345Contact: linux-iio@vger.kernel.org 346Description: 347 Signal level state of Signal Y. The following signal level 348 states are available: 349 350 low: 351 Low level state. 352 353 high: 354 High level state. 355 356What: /sys/bus/counter/devices/counterX/signalY/synchronous_mode 357KernelVersion: 5.2 358Contact: linux-iio@vger.kernel.org 359Description: 360 Configure the counter associated with Signal Y for 361 non-synchronous or synchronous load mode. Synchronous load mode 362 cannot be selected in non-quadrature (Pulse-Direction) clock 363 mode. 364 365 non-synchronous: 366 A logic low level is the active level at this index 367 input. The index function (as enabled via preset_enable) 368 is performed directly on the active level of the index 369 input. 370 371 synchronous: 372 Intended for interfacing with encoder Index output in 373 quadrature clock mode. The active level is configured 374 via index_polarity. The index function (as enabled via 375 preset_enable) is performed synchronously with the 376 quadrature clock on the active level of the index input. 377 378What: /sys/bus/counter/devices/counterX/signalY/frequency 379KernelVersion: 6.1 380Contact: linux-iio@vger.kernel.org 381Description: 382 Read-only attribute that indicates the signal Y frequency, in Hz. 383