| What: /sys/bus/counter/devices/counterX/cascade_counts_enable |
| KernelVersion: 6.4 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Indicates the cascading of Counts on Counter X. |
| |
| Valid attribute values are boolean. |
| |
| What: /sys/bus/counter/devices/counterX/external_input_phase_clock_select |
| KernelVersion: 6.4 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Selects the external clock pin for phase counting mode of |
| Counter X. |
| |
| MTCLKA-MTCLKB: |
| MTCLKA and MTCLKB pins are selected for the external |
| phase clock. |
| |
| MTCLKC-MTCLKD: |
| MTCLKC and MTCLKD pins are selected for the external |
| phase clock. |
| |
| What: /sys/bus/counter/devices/counterX/external_input_phase_clock_select_available |
| KernelVersion: 6.4 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Discrete set of available values for the respective device |
| configuration are listed in this file. |
| |
| What: /sys/bus/counter/devices/counterX/countY/count |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Count data of Count Y represented as a string. |
| |
| What: /sys/bus/counter/devices/counterX/countY/capture |
| KernelVersion: 6.1 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Historical capture of the Count Y count data. |
| |
| What: /sys/bus/counter/devices/counterX/countY/ceiling |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Count value ceiling for Count Y. This is the upper limit for the |
| respective counter. |
| |
| What: /sys/bus/counter/devices/counterX/countY/floor |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Count value floor for Count Y. This is the lower limit for the |
| respective counter. |
| |
| What: /sys/bus/counter/devices/counterX/countY/count_mode |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Count mode for channel Y. The ceiling and floor values for |
| Count Y are used by the count mode where required. The following |
| count modes are available: |
| |
| normal: |
| Counting is continuous in either direction. |
| |
| range limit: |
| An upper or lower limit is set, mimicking limit switches |
| in the mechanical counterpart. The upper limit is set to |
| the Count Y ceiling value, while the lower limit is set |
| to the Count Y floor value. The counter freezes at |
| count = ceiling when counting up, and at count = floor |
| when counting down. At either of these limits, the |
| counting is resumed only when the count direction is |
| reversed. |
| |
| non-recycle: |
| The counter is disabled whenever a counter overflow or |
| underflow takes place. The counter is re-enabled when a |
| new count value is loaded to the counter via a preset |
| operation or direct write. |
| |
| modulo-n: |
| A count value boundary is set between the Count Y floor |
| value and the Count Y ceiling value. The counter is |
| reset to the Count Y floor value at count = ceiling when |
| counting up, while the counter is set to the Count Y |
| ceiling value at count = floor when counting down; the |
| counter does not freeze at the boundary points, but |
| counts continuously throughout. |
| |
| interrupt on terminal count: |
| The output signal is initially low, and will remain low |
| until the counter reaches zero. The output signal then |
| goes high and remains high until a new preset value is |
| set. |
| |
| hardware retriggerable one-shot: |
| The output signal is initially high. The output signal |
| will go low by a trigger input signal, and will remain |
| low until the counter reaches zero. The output will then |
| go high and remain high until the next trigger. A |
| trigger results in loading the counter to the preset |
| value and setting the output signal low, thus starting |
| the one-shot pulse. |
| |
| rate generator: |
| The output signal is initially high. When the counter |
| has decremented to 1, the output signal goes low for one |
| clock pulse. The output signal then goes high again, the |
| counter is reloaded to the preset value, and the process |
| repeats in a periodic manner as such. |
| |
| square wave mode: |
| The output signal is initially high. |
| |
| If the initial count is even, the counter is decremented |
| by two on succeeding clock pulses. When the count |
| expires, the output signal changes value and the |
| counter is reloaded to the preset value. The process |
| repeats in periodic manner as such. |
| |
| If the initial count is odd, the initial count minus one |
| (an even number) is loaded and then is decremented by |
| two on succeeding clock pulses. One clock pulse after |
| the count expires, the output signal goes low and the |
| counter is reloaded to the preset value minus one. |
| Succeeding clock pulses decrement the count by two. When |
| the count expires, the output goes high again and the |
| counter is reloaded to the preset value minus one. The |
| process repeats in a periodic manner as such. |
| |
| software triggered strobe: |
| The output signal is initially high. When the count |
| expires, the output will go low for one clock pulse and |
| then go high again. The counting sequence is "triggered" |
| by setting the preset value. |
| |
| hardware triggered strobe: |
| The output signal is initially high. Counting is started |
| by a trigger input signal. When the count expires, the |
| output signal will go low for one clock pulse and then |
| go high again. A trigger results in loading the counter |
| to the preset value. |
| |
| What: /sys/bus/counter/devices/counterX/countY/count_mode_available |
| What: /sys/bus/counter/devices/counterX/countY/error_noise_available |
| What: /sys/bus/counter/devices/counterX/countY/function_available |
| What: /sys/bus/counter/devices/counterX/countY/prescaler_available |
| What: /sys/bus/counter/devices/counterX/countY/signalZ_action_available |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Discrete set of available values for the respective Count Y |
| configuration are listed in this file. Values are delimited by |
| newline characters. |
| |
| What: /sys/bus/counter/devices/counterX/countY/direction |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Read-only attribute that indicates the count direction of Count |
| Y. Two count directions are available: forward and backward. |
| |
| Some counter devices are able to determine the direction of |
| their counting. For example, quadrature encoding counters can |
| determine the direction of movement by evaluating the leading |
| phase of the respective A and B quadrature encoding signals. |
| This attribute exposes such count directions. |
| |
| What: /sys/bus/counter/devices/counterX/countY/enable |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Whether channel Y counter is enabled. Valid attribute values are |
| boolean. |
| |
| This attribute is intended to serve as a pause/unpause mechanism |
| for Count Y. Suppose a counter device is used to count the total |
| movement of a conveyor belt: this attribute allows an operator |
| to temporarily pause the counter, service the conveyor belt, |
| and then finally unpause the counter to continue where it had |
| left off. |
| |
| What: /sys/bus/counter/devices/counterX/countY/error_noise |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Read-only attribute that indicates whether excessive noise is |
| present at the channel Y counter inputs. |
| |
| What: /sys/bus/counter/devices/counterX/countY/function |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Count function mode of Count Y; count function evaluation is |
| triggered by conditions specified by the Count Y signalZ_action |
| attributes. The following count functions are available: |
| |
| increase: |
| Accumulated count is incremented. |
| |
| decrease: |
| Accumulated count is decremented. |
| |
| pulse-direction: |
| Rising edges on signal A updates the respective count. |
| The input level of signal B determines direction. |
| |
| quadrature x1 a: |
| If direction is forward, rising edges on quadrature pair |
| signal A updates the respective count; if the direction |
| is backward, falling edges on quadrature pair signal A |
| updates the respective count. Quadrature encoding |
| determines the direction. |
| |
| quadrature x1 b: |
| If direction is forward, rising edges on quadrature pair |
| signal B updates the respective count; if the direction |
| is backward, falling edges on quadrature pair signal B |
| updates the respective count. Quadrature encoding |
| determines the direction. |
| |
| quadrature x2 a: |
| Any state transition on quadrature pair signal A updates |
| the respective count. Quadrature encoding determines the |
| direction. |
| |
| quadrature x2 b: |
| Any state transition on quadrature pair signal B updates |
| the respective count. Quadrature encoding determines the |
| direction. |
| |
| quadrature x4: |
| Any state transition on either quadrature pair signals |
| updates the respective count. Quadrature encoding |
| determines the direction. |
| |
| What: /sys/bus/counter/devices/counterX/countY/name |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Read-only attribute that indicates the device-specific name of |
| Count Y. If possible, this should match the name of the |
| respective channel as it appears in the device datasheet. |
| |
| What: /sys/bus/counter/devices/counterX/countY/prescaler |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Configure the prescaler value associated with Count Y. |
| On the FlexTimer, the counter clock source passes through a |
| prescaler (i.e. a counter). This acts like a clock |
| divider. |
| |
| What: /sys/bus/counter/devices/counterX/countY/preset |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| If the counter device supports preset registers -- registers |
| used to load counter channels to a set count upon device-defined |
| preset operation trigger events -- the preset count for channel |
| Y is provided by this attribute. |
| |
| What: /sys/bus/counter/devices/counterX/countY/preset_enable |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Whether channel Y counter preset operation is enabled. Valid |
| attribute values are boolean. |
| |
| What: /sys/bus/counter/devices/counterX/countY/signalZ_action |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Action mode of Count Y for Signal Z. This attribute indicates |
| the condition of Signal Z that triggers the count function |
| evaluation for Count Y. The following action modes are |
| available: |
| |
| none: |
| Signal does not trigger the count function. In |
| Pulse-Direction count function mode, this Signal is |
| evaluated as Direction. |
| |
| rising edge: |
| Low state transitions to high state. |
| |
| falling edge: |
| High state transitions to low state. |
| |
| both edges: |
| Any state transition. |
| |
| What: /sys/bus/counter/devices/counterX/countY/num_overflows |
| KernelVersion: 6.1 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| This attribute indicates the number of overflows of count Y. |
| |
| What: /sys/bus/counter/devices/counterX/cascade_counts_enable_component_id |
| What: /sys/bus/counter/devices/counterX/external_input_phase_clock_select_component_id |
| What: /sys/bus/counter/devices/counterX/countY/capture_component_id |
| What: /sys/bus/counter/devices/counterX/countY/ceiling_component_id |
| What: /sys/bus/counter/devices/counterX/countY/floor_component_id |
| What: /sys/bus/counter/devices/counterX/countY/count_mode_component_id |
| What: /sys/bus/counter/devices/counterX/countY/direction_component_id |
| What: /sys/bus/counter/devices/counterX/countY/enable_component_id |
| What: /sys/bus/counter/devices/counterX/countY/error_noise_component_id |
| What: /sys/bus/counter/devices/counterX/countY/prescaler_component_id |
| What: /sys/bus/counter/devices/counterX/countY/preset_component_id |
| What: /sys/bus/counter/devices/counterX/countY/preset_enable_component_id |
| What: /sys/bus/counter/devices/counterX/countY/signalZ_action_component_id |
| What: /sys/bus/counter/devices/counterX/countY/num_overflows_component_id |
| What: /sys/bus/counter/devices/counterX/signalY/cable_fault_component_id |
| What: /sys/bus/counter/devices/counterX/signalY/cable_fault_enable_component_id |
| What: /sys/bus/counter/devices/counterX/signalY/filter_clock_prescaler_component_id |
| What: /sys/bus/counter/devices/counterX/signalY/index_polarity_component_id |
| What: /sys/bus/counter/devices/counterX/signalY/polarity_component_id |
| What: /sys/bus/counter/devices/counterX/signalY/synchronous_mode_component_id |
| What: /sys/bus/counter/devices/counterX/signalY/frequency_component_id |
| KernelVersion: 5.16 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Read-only attribute that indicates the component ID of the |
| respective extension or Synapse. |
| |
| What: /sys/bus/counter/devices/counterX/countY/spike_filter_ns |
| KernelVersion: 5.14 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| If the counter device supports programmable spike filter this |
| attribute indicates the value in nanoseconds where noise pulses |
| shorter or equal to configured value are ignored. Value 0 means |
| filter is disabled. |
| |
| What: /sys/bus/counter/devices/counterX/events_queue_size |
| KernelVersion: 5.16 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Size of the Counter events queue in number of struct |
| counter_event data structures. The number of elements will be |
| rounded-up to a power of 2. |
| |
| What: /sys/bus/counter/devices/counterX/name |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Read-only attribute that indicates the device-specific name of |
| the Counter. This should match the name of the device as it |
| appears in its respective datasheet. |
| |
| What: /sys/bus/counter/devices/counterX/num_counts |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Read-only attribute that indicates the total number of Counts |
| belonging to the Counter. |
| |
| What: /sys/bus/counter/devices/counterX/num_signals |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Read-only attribute that indicates the total number of Signals |
| belonging to the Counter. |
| |
| What: /sys/bus/counter/devices/counterX/signalY/cable_fault |
| KernelVersion: 5.7 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Read-only attribute that indicates whether a differential |
| encoder cable fault (not connected or loose wires) is detected |
| for the respective channel of Signal Y. Valid attribute values |
| are boolean. Detection must first be enabled via the |
| corresponding cable_fault_enable attribute. |
| |
| What: /sys/bus/counter/devices/counterX/signalY/cable_fault_enable |
| KernelVersion: 5.7 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Whether detection of differential encoder cable faults for the |
| respective channel of Signal Y is enabled. Valid attribute |
| values are boolean. |
| |
| What: /sys/bus/counter/devices/counterX/signalY/filter_clock_prescaler |
| KernelVersion: 5.7 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Filter clock factor for input Signal Y. This prescaler value |
| affects the inputs of both quadrature pair signals. |
| |
| What: /sys/bus/counter/devices/counterX/signalY/index_polarity |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Active level of index input Signal Y; irrelevant in |
| non-synchronous load mode. |
| |
| What: /sys/bus/counter/devices/counterX/signalY/index_polarity_available |
| What: /sys/bus/counter/devices/counterX/signalY/synchronous_mode_available |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Discrete set of available values for the respective Signal Y |
| configuration are listed in this file. |
| |
| What: /sys/bus/counter/devices/counterX/signalY/polarity |
| KernelVersion: 6.1 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Active level of Signal Y. The following polarity values are |
| available: |
| |
| positive: |
| Signal high state considered active level (rising edge). |
| |
| negative: |
| Signal low state considered active level (falling edge). |
| |
| What: /sys/bus/counter/devices/counterX/signalY/name |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Read-only attribute that indicates the device-specific name of |
| Signal Y. If possible, this should match the name of the |
| respective signal as it appears in the device datasheet. |
| |
| What: /sys/bus/counter/devices/counterX/signalY/signal |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Signal level state of Signal Y. The following signal level |
| states are available: |
| |
| low: |
| Low level state. |
| |
| high: |
| High level state. |
| |
| What: /sys/bus/counter/devices/counterX/signalY/synchronous_mode |
| KernelVersion: 5.2 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Configure the counter associated with Signal Y for |
| non-synchronous or synchronous load mode. Synchronous load mode |
| cannot be selected in non-quadrature (Pulse-Direction) clock |
| mode. |
| |
| non-synchronous: |
| A logic low level is the active level at this index |
| input. The index function (as enabled via preset_enable) |
| is performed directly on the active level of the index |
| input. |
| |
| synchronous: |
| Intended for interfacing with encoder Index output in |
| quadrature clock mode. The active level is configured |
| via index_polarity. The index function (as enabled via |
| preset_enable) is performed synchronously with the |
| quadrature clock on the active level of the index input. |
| |
| What: /sys/bus/counter/devices/counterX/signalY/frequency |
| KernelVersion: 6.1 |
| Contact: linux-iio@vger.kernel.org |
| Description: |
| Read-only attribute that indicates the signal Y frequency, in Hz. |