1*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/count 2*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 3*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 4*ea2b23b8SWilliam Breathitt GrayDescription: 5*ea2b23b8SWilliam Breathitt Gray Count data of Count Y represented as a string. 6*ea2b23b8SWilliam Breathitt Gray 7*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/ceiling 8*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 9*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 10*ea2b23b8SWilliam Breathitt GrayDescription: 11*ea2b23b8SWilliam Breathitt Gray Count value ceiling for Count Y. This is the upper limit for the 12*ea2b23b8SWilliam Breathitt Gray respective counter. 13*ea2b23b8SWilliam Breathitt Gray 14*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/floor 15*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 16*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 17*ea2b23b8SWilliam Breathitt GrayDescription: 18*ea2b23b8SWilliam Breathitt Gray Count value floor for Count Y. This is the lower limit for the 19*ea2b23b8SWilliam Breathitt Gray respective counter. 20*ea2b23b8SWilliam Breathitt Gray 21*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/count_mode 22*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 23*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 24*ea2b23b8SWilliam Breathitt GrayDescription: 25*ea2b23b8SWilliam Breathitt Gray Count mode for channel Y. The ceiling and floor values for 26*ea2b23b8SWilliam Breathitt Gray Count Y are used by the count mode where required. The following 27*ea2b23b8SWilliam Breathitt Gray count modes are available: 28*ea2b23b8SWilliam Breathitt Gray 29*ea2b23b8SWilliam Breathitt Gray normal: 30*ea2b23b8SWilliam Breathitt Gray Counting is continuous in either direction. 31*ea2b23b8SWilliam Breathitt Gray 32*ea2b23b8SWilliam Breathitt Gray range limit: 33*ea2b23b8SWilliam Breathitt Gray An upper or lower limit is set, mimicking limit switches 34*ea2b23b8SWilliam Breathitt Gray in the mechanical counterpart. The upper limit is set to 35*ea2b23b8SWilliam Breathitt Gray the Count Y ceiling value, while the lower limit is set 36*ea2b23b8SWilliam Breathitt Gray to the Count Y floor value. The counter freezes at 37*ea2b23b8SWilliam Breathitt Gray count = ceiling when counting up, and at count = floor 38*ea2b23b8SWilliam Breathitt Gray when counting down. At either of these limits, the 39*ea2b23b8SWilliam Breathitt Gray counting is resumed only when the count direction is 40*ea2b23b8SWilliam Breathitt Gray reversed. 41*ea2b23b8SWilliam Breathitt Gray 42*ea2b23b8SWilliam Breathitt Gray non-recycle: 43*ea2b23b8SWilliam Breathitt Gray The counter is disabled whenever a counter overflow or 44*ea2b23b8SWilliam Breathitt Gray underflow takes place. The counter is re-enabled when a 45*ea2b23b8SWilliam Breathitt Gray new count value is loaded to the counter via a preset 46*ea2b23b8SWilliam Breathitt Gray operation or direct write. 47*ea2b23b8SWilliam Breathitt Gray 48*ea2b23b8SWilliam Breathitt Gray modulo-n: 49*ea2b23b8SWilliam Breathitt Gray A count value boundary is set between the Count Y floor 50*ea2b23b8SWilliam Breathitt Gray value and the Count Y ceiling value. The counter is 51*ea2b23b8SWilliam Breathitt Gray reset to the Count Y floor value at count = ceiling when 52*ea2b23b8SWilliam Breathitt Gray counting up, while the counter is set to the Count Y 53*ea2b23b8SWilliam Breathitt Gray ceiling value at count = floor when counting down; the 54*ea2b23b8SWilliam Breathitt Gray counter does not freeze at the boundary points, but 55*ea2b23b8SWilliam Breathitt Gray counts continuously throughout. 56*ea2b23b8SWilliam Breathitt Gray 57*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/count_mode_available 58*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/error_noise_available 59*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/function_available 60*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/signalZ_action_available 61*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 62*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 63*ea2b23b8SWilliam Breathitt GrayDescription: 64*ea2b23b8SWilliam Breathitt Gray Discrete set of available values for the respective Count Y 65*ea2b23b8SWilliam Breathitt Gray configuration are listed in this file. Values are delimited by 66*ea2b23b8SWilliam Breathitt Gray newline characters. 67*ea2b23b8SWilliam Breathitt Gray 68*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/direction 69*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 70*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 71*ea2b23b8SWilliam Breathitt GrayDescription: 72*ea2b23b8SWilliam Breathitt Gray Read-only attribute that indicates the count direction of Count 73*ea2b23b8SWilliam Breathitt Gray Y. Two count directions are available: forward and backward. 74*ea2b23b8SWilliam Breathitt Gray 75*ea2b23b8SWilliam Breathitt Gray Some counter devices are able to determine the direction of 76*ea2b23b8SWilliam Breathitt Gray their counting. For example, quadrature encoding counters can 77*ea2b23b8SWilliam Breathitt Gray determine the direction of movement by evaluating the leading 78*ea2b23b8SWilliam Breathitt Gray phase of the respective A and B quadrature encoding signals. 79*ea2b23b8SWilliam Breathitt Gray This attribute exposes such count directions. 80*ea2b23b8SWilliam Breathitt Gray 81*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/enable 82*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 83*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 84*ea2b23b8SWilliam Breathitt GrayDescription: 85*ea2b23b8SWilliam Breathitt Gray Whether channel Y counter is enabled. Valid attribute values are 86*ea2b23b8SWilliam Breathitt Gray boolean. 87*ea2b23b8SWilliam Breathitt Gray 88*ea2b23b8SWilliam Breathitt Gray This attribute is intended to serve as a pause/unpause mechanism 89*ea2b23b8SWilliam Breathitt Gray for Count Y. Suppose a counter device is used to count the total 90*ea2b23b8SWilliam Breathitt Gray movement of a conveyor belt: this attribute allows an operator 91*ea2b23b8SWilliam Breathitt Gray to temporarily pause the counter, service the conveyor belt, 92*ea2b23b8SWilliam Breathitt Gray and then finally unpause the counter to continue where it had 93*ea2b23b8SWilliam Breathitt Gray left off. 94*ea2b23b8SWilliam Breathitt Gray 95*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/error_noise 96*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 97*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 98*ea2b23b8SWilliam Breathitt GrayDescription: 99*ea2b23b8SWilliam Breathitt Gray Read-only attribute that indicates whether excessive noise is 100*ea2b23b8SWilliam Breathitt Gray present at the channel Y counter inputs. 101*ea2b23b8SWilliam Breathitt Gray 102*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/function 103*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 104*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 105*ea2b23b8SWilliam Breathitt GrayDescription: 106*ea2b23b8SWilliam Breathitt Gray Count function mode of Count Y; count function evaluation is 107*ea2b23b8SWilliam Breathitt Gray triggered by conditions specified by the Count Y signalZ_action 108*ea2b23b8SWilliam Breathitt Gray attributes. The following count functions are available: 109*ea2b23b8SWilliam Breathitt Gray 110*ea2b23b8SWilliam Breathitt Gray increase: 111*ea2b23b8SWilliam Breathitt Gray Accumulated count is incremented. 112*ea2b23b8SWilliam Breathitt Gray 113*ea2b23b8SWilliam Breathitt Gray decrease: 114*ea2b23b8SWilliam Breathitt Gray Accumulated count is decremented. 115*ea2b23b8SWilliam Breathitt Gray 116*ea2b23b8SWilliam Breathitt Gray pulse-direction: 117*ea2b23b8SWilliam Breathitt Gray Rising edges on signal A updates the respective count. 118*ea2b23b8SWilliam Breathitt Gray The input level of signal B determines direction. 119*ea2b23b8SWilliam Breathitt Gray 120*ea2b23b8SWilliam Breathitt Gray quadrature x1 a: 121*ea2b23b8SWilliam Breathitt Gray If direction is forward, rising edges on quadrature pair 122*ea2b23b8SWilliam Breathitt Gray signal A updates the respective count; if the direction 123*ea2b23b8SWilliam Breathitt Gray is backward, falling edges on quadrature pair signal A 124*ea2b23b8SWilliam Breathitt Gray updates the respective count. Quadrature encoding 125*ea2b23b8SWilliam Breathitt Gray determines the direction. 126*ea2b23b8SWilliam Breathitt Gray 127*ea2b23b8SWilliam Breathitt Gray quadrature x1 b: 128*ea2b23b8SWilliam Breathitt Gray If direction is forward, rising edges on quadrature pair 129*ea2b23b8SWilliam Breathitt Gray signal B updates the respective count; if the direction 130*ea2b23b8SWilliam Breathitt Gray is backward, falling edges on quadrature pair signal B 131*ea2b23b8SWilliam Breathitt Gray updates the respective count. Quadrature encoding 132*ea2b23b8SWilliam Breathitt Gray determines the direction. 133*ea2b23b8SWilliam Breathitt Gray 134*ea2b23b8SWilliam Breathitt Gray quadrature x2 a: 135*ea2b23b8SWilliam Breathitt Gray Any state transition on quadrature pair signal A updates 136*ea2b23b8SWilliam Breathitt Gray the respective count. Quadrature encoding determines the 137*ea2b23b8SWilliam Breathitt Gray direction. 138*ea2b23b8SWilliam Breathitt Gray 139*ea2b23b8SWilliam Breathitt Gray quadrature x2 b: 140*ea2b23b8SWilliam Breathitt Gray Any state transition on quadrature pair signal B updates 141*ea2b23b8SWilliam Breathitt Gray the respective count. Quadrature encoding determines the 142*ea2b23b8SWilliam Breathitt Gray direction. 143*ea2b23b8SWilliam Breathitt Gray 144*ea2b23b8SWilliam Breathitt Gray quadrature x4: 145*ea2b23b8SWilliam Breathitt Gray Any state transition on either quadrature pair signals 146*ea2b23b8SWilliam Breathitt Gray updates the respective count. Quadrature encoding 147*ea2b23b8SWilliam Breathitt Gray determines the direction. 148*ea2b23b8SWilliam Breathitt Gray 149*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/name 150*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 151*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 152*ea2b23b8SWilliam Breathitt GrayDescription: 153*ea2b23b8SWilliam Breathitt Gray Read-only attribute that indicates the device-specific name of 154*ea2b23b8SWilliam Breathitt Gray Count Y. If possible, this should match the name of the 155*ea2b23b8SWilliam Breathitt Gray respective channel as it appears in the device datasheet. 156*ea2b23b8SWilliam Breathitt Gray 157*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/preset 158*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 159*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 160*ea2b23b8SWilliam Breathitt GrayDescription: 161*ea2b23b8SWilliam Breathitt Gray If the counter device supports preset registers -- registers 162*ea2b23b8SWilliam Breathitt Gray used to load counter channels to a set count upon device-defined 163*ea2b23b8SWilliam Breathitt Gray preset operation trigger events -- the preset count for channel 164*ea2b23b8SWilliam Breathitt Gray Y is provided by this attribute. 165*ea2b23b8SWilliam Breathitt Gray 166*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/preset_enable 167*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 168*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 169*ea2b23b8SWilliam Breathitt GrayDescription: 170*ea2b23b8SWilliam Breathitt Gray Whether channel Y counter preset operation is enabled. Valid 171*ea2b23b8SWilliam Breathitt Gray attribute values are boolean. 172*ea2b23b8SWilliam Breathitt Gray 173*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/countY/signalZ_action 174*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 175*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 176*ea2b23b8SWilliam Breathitt GrayDescription: 177*ea2b23b8SWilliam Breathitt Gray Action mode of Count Y for Signal Z. This attribute indicates 178*ea2b23b8SWilliam Breathitt Gray the condition of Signal Z that triggers the count function 179*ea2b23b8SWilliam Breathitt Gray evaluation for Count Y. The following action modes are 180*ea2b23b8SWilliam Breathitt Gray available: 181*ea2b23b8SWilliam Breathitt Gray 182*ea2b23b8SWilliam Breathitt Gray none: 183*ea2b23b8SWilliam Breathitt Gray Signal does not trigger the count function. In 184*ea2b23b8SWilliam Breathitt Gray Pulse-Direction count function mode, this Signal is 185*ea2b23b8SWilliam Breathitt Gray evaluated as Direction. 186*ea2b23b8SWilliam Breathitt Gray 187*ea2b23b8SWilliam Breathitt Gray rising edge: 188*ea2b23b8SWilliam Breathitt Gray Low state transitions to high state. 189*ea2b23b8SWilliam Breathitt Gray 190*ea2b23b8SWilliam Breathitt Gray falling edge: 191*ea2b23b8SWilliam Breathitt Gray High state transitions to low state. 192*ea2b23b8SWilliam Breathitt Gray 193*ea2b23b8SWilliam Breathitt Gray both edges: 194*ea2b23b8SWilliam Breathitt Gray Any state transition. 195*ea2b23b8SWilliam Breathitt Gray 196*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/name 197*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 198*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 199*ea2b23b8SWilliam Breathitt GrayDescription: 200*ea2b23b8SWilliam Breathitt Gray Read-only attribute that indicates the device-specific name of 201*ea2b23b8SWilliam Breathitt Gray the Counter. This should match the name of the device as it 202*ea2b23b8SWilliam Breathitt Gray appears in its respective datasheet. 203*ea2b23b8SWilliam Breathitt Gray 204*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/num_counts 205*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 206*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 207*ea2b23b8SWilliam Breathitt GrayDescription: 208*ea2b23b8SWilliam Breathitt Gray Read-only attribute that indicates the total number of Counts 209*ea2b23b8SWilliam Breathitt Gray belonging to the Counter. 210*ea2b23b8SWilliam Breathitt Gray 211*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/num_signals 212*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 213*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 214*ea2b23b8SWilliam Breathitt GrayDescription: 215*ea2b23b8SWilliam Breathitt Gray Read-only attribute that indicates the total number of Signals 216*ea2b23b8SWilliam Breathitt Gray belonging to the Counter. 217*ea2b23b8SWilliam Breathitt Gray 218*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/signalY/signal 219*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 220*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 221*ea2b23b8SWilliam Breathitt GrayDescription: 222*ea2b23b8SWilliam Breathitt Gray Signal data of Signal Y represented as a string. 223*ea2b23b8SWilliam Breathitt Gray 224*ea2b23b8SWilliam Breathitt GrayWhat: /sys/bus/counter/devices/counterX/signalY/name 225*ea2b23b8SWilliam Breathitt GrayKernelVersion: 5.2 226*ea2b23b8SWilliam Breathitt GrayContact: linux-iio@vger.kernel.org 227*ea2b23b8SWilliam Breathitt GrayDescription: 228*ea2b23b8SWilliam Breathitt Gray Read-only attribute that indicates the device-specific name of 229*ea2b23b8SWilliam Breathitt Gray Signal Y. If possible, this should match the name of the 230*ea2b23b8SWilliam Breathitt Gray respective signal as it appears in the device datasheet. 231