193fbe91bSBenjamin GaignardWhat: /sys/bus/iio/devices/triggerX/master_mode_available 293fbe91bSBenjamin GaignardKernelVersion: 4.11 393fbe91bSBenjamin GaignardContact: benjamin.gaignard@st.com 493fbe91bSBenjamin GaignardDescription: 593fbe91bSBenjamin Gaignard Reading returns the list possible master modes which are: 64adec7daSBenjamin Gaignard - "reset" : The UG bit from the TIMx_EGR register is 74adec7daSBenjamin Gaignard used as trigger output (TRGO). 84adec7daSBenjamin Gaignard - "enable" : The Counter Enable signal CNT_EN is used 94adec7daSBenjamin Gaignard as trigger output. 1093fbe91bSBenjamin Gaignard - "update" : The update event is selected as trigger output. 114adec7daSBenjamin Gaignard For instance a master timer can then be used 124adec7daSBenjamin Gaignard as a prescaler for a slave timer. 134adec7daSBenjamin Gaignard - "compare_pulse" : The trigger output send a positive pulse 144adec7daSBenjamin Gaignard when the CC1IF flag is to be set. 1593fbe91bSBenjamin Gaignard - "OC1REF" : OC1REF signal is used as trigger output. 1693fbe91bSBenjamin Gaignard - "OC2REF" : OC2REF signal is used as trigger output. 1793fbe91bSBenjamin Gaignard - "OC3REF" : OC3REF signal is used as trigger output. 1893fbe91bSBenjamin Gaignard - "OC4REF" : OC4REF signal is used as trigger output. 19*6fb34812SFabrice Gasnier Additional modes (on TRGO2 only): 20*6fb34812SFabrice Gasnier - "OC5REF" : OC5REF signal is used as trigger output. 21*6fb34812SFabrice Gasnier - "OC6REF" : OC6REF signal is used as trigger output. 22*6fb34812SFabrice Gasnier - "compare_pulse_OC4REF": 23*6fb34812SFabrice Gasnier OC4REF rising or falling edges generate pulses. 24*6fb34812SFabrice Gasnier - "compare_pulse_OC6REF": 25*6fb34812SFabrice Gasnier OC6REF rising or falling edges generate pulses. 26*6fb34812SFabrice Gasnier - "compare_pulse_OC4REF_r_or_OC6REF_r": 27*6fb34812SFabrice Gasnier OC4REF or OC6REF rising edges generate pulses. 28*6fb34812SFabrice Gasnier - "compare_pulse_OC4REF_r_or_OC6REF_f": 29*6fb34812SFabrice Gasnier OC4REF rising or OC6REF falling edges generate pulses. 30*6fb34812SFabrice Gasnier - "compare_pulse_OC5REF_r_or_OC6REF_r": 31*6fb34812SFabrice Gasnier OC5REF or OC6REF rising edges generate pulses. 32*6fb34812SFabrice Gasnier - "compare_pulse_OC5REF_r_or_OC6REF_f": 33*6fb34812SFabrice Gasnier OC5REF rising or OC6REF falling edges generate pulses. 34*6fb34812SFabrice Gasnier 35*6fb34812SFabrice Gasnier +-----------+ +-------------+ +---------+ 36*6fb34812SFabrice Gasnier | Prescaler +-> | Counter | +-> | Master | TRGO(2) 37*6fb34812SFabrice Gasnier +-----------+ +--+--------+-+ |-> | Control +--> 38*6fb34812SFabrice Gasnier | | || +---------+ 39*6fb34812SFabrice Gasnier +--v--------+-+ OCxREF || +---------+ 40*6fb34812SFabrice Gasnier | Chx compare +----------> | Output | ChX 41*6fb34812SFabrice Gasnier +-----------+-+ | | Control +--> 42*6fb34812SFabrice Gasnier . | | +---------+ 43*6fb34812SFabrice Gasnier . | | . 44*6fb34812SFabrice Gasnier +-----------v-+ OC6REF | . 45*6fb34812SFabrice Gasnier | Ch6 compare +---------+> 46*6fb34812SFabrice Gasnier +-------------+ 47*6fb34812SFabrice Gasnier 48*6fb34812SFabrice Gasnier Example with: "compare_pulse_OC4REF_r_or_OC6REF_r": 49*6fb34812SFabrice Gasnier 50*6fb34812SFabrice Gasnier X 51*6fb34812SFabrice Gasnier X X 52*6fb34812SFabrice Gasnier X . . X 53*6fb34812SFabrice Gasnier X . . X 54*6fb34812SFabrice Gasnier X . . X 55*6fb34812SFabrice Gasnier count X . . . . X 56*6fb34812SFabrice Gasnier . . . . 57*6fb34812SFabrice Gasnier . . . . 58*6fb34812SFabrice Gasnier +---------------+ 59*6fb34812SFabrice Gasnier OC4REF | . . | 60*6fb34812SFabrice Gasnier +-+ . . +-+ 61*6fb34812SFabrice Gasnier . +---+ . 62*6fb34812SFabrice Gasnier OC6REF . | | . 63*6fb34812SFabrice Gasnier +-------+ +-------+ 64*6fb34812SFabrice Gasnier +-+ +-+ 65*6fb34812SFabrice Gasnier TRGO2 | | | | 66*6fb34812SFabrice Gasnier +-+ +---+ +---------+ 6793fbe91bSBenjamin Gaignard 6893fbe91bSBenjamin GaignardWhat: /sys/bus/iio/devices/triggerX/master_mode 6993fbe91bSBenjamin GaignardKernelVersion: 4.11 7093fbe91bSBenjamin GaignardContact: benjamin.gaignard@st.com 7193fbe91bSBenjamin GaignardDescription: 7293fbe91bSBenjamin Gaignard Reading returns the current master modes. 7393fbe91bSBenjamin Gaignard Writing set the master mode 7493fbe91bSBenjamin Gaignard 7593fbe91bSBenjamin GaignardWhat: /sys/bus/iio/devices/triggerX/sampling_frequency 7693fbe91bSBenjamin GaignardKernelVersion: 4.11 7793fbe91bSBenjamin GaignardContact: benjamin.gaignard@st.com 7893fbe91bSBenjamin GaignardDescription: 7993fbe91bSBenjamin Gaignard Reading returns the current sampling frequency. 8093fbe91bSBenjamin Gaignard Writing an value different of 0 set and start sampling. 8193fbe91bSBenjamin Gaignard Writing 0 stop sampling. 824adec7daSBenjamin Gaignard 834adec7daSBenjamin GaignardWhat: /sys/bus/iio/devices/iio:deviceX/in_count0_preset 844adec7daSBenjamin GaignardKernelVersion: 4.12 854adec7daSBenjamin GaignardContact: benjamin.gaignard@st.com 864adec7daSBenjamin GaignardDescription: 874adec7daSBenjamin Gaignard Reading returns the current preset value. 884adec7daSBenjamin Gaignard Writing sets the preset value. 894adec7daSBenjamin Gaignard When counting up the counter starts from 0 and fires an 904adec7daSBenjamin Gaignard event when reach preset value. 914adec7daSBenjamin Gaignard When counting down the counter start from preset value 924adec7daSBenjamin Gaignard and fire event when reach 0. 934adec7daSBenjamin Gaignard 944adec7daSBenjamin GaignardWhat: /sys/bus/iio/devices/iio:deviceX/in_count_quadrature_mode_available 954adec7daSBenjamin GaignardKernelVersion: 4.12 964adec7daSBenjamin GaignardContact: benjamin.gaignard@st.com 974adec7daSBenjamin GaignardDescription: 984adec7daSBenjamin Gaignard Reading returns the list possible quadrature modes. 994adec7daSBenjamin Gaignard 1004adec7daSBenjamin GaignardWhat: /sys/bus/iio/devices/iio:deviceX/in_count0_quadrature_mode 1014adec7daSBenjamin GaignardKernelVersion: 4.12 1024adec7daSBenjamin GaignardContact: benjamin.gaignard@st.com 1034adec7daSBenjamin GaignardDescription: 1044adec7daSBenjamin Gaignard Configure the device counter quadrature modes: 1054adec7daSBenjamin Gaignard channel_A: 1064adec7daSBenjamin Gaignard Encoder A input servers as the count input and B as 1074adec7daSBenjamin Gaignard the UP/DOWN direction control input. 1084adec7daSBenjamin Gaignard 1094adec7daSBenjamin Gaignard channel_B: 1104adec7daSBenjamin Gaignard Encoder B input serves as the count input and A as 1114adec7daSBenjamin Gaignard the UP/DOWN direction control input. 1124adec7daSBenjamin Gaignard 1134adec7daSBenjamin Gaignard quadrature: 1144adec7daSBenjamin Gaignard Encoder A and B inputs are mixed to get direction 1154adec7daSBenjamin Gaignard and count with a scale of 0.25. 1162a830a45SBenjamin Gaignard 1172a830a45SBenjamin GaignardWhat: /sys/bus/iio/devices/iio:deviceX/in_count_enable_mode_available 1182a830a45SBenjamin GaignardKernelVersion: 4.12 1192a830a45SBenjamin GaignardContact: benjamin.gaignard@st.com 1202a830a45SBenjamin GaignardDescription: 1212a830a45SBenjamin Gaignard Reading returns the list possible enable modes. 1222a830a45SBenjamin Gaignard 1232a830a45SBenjamin GaignardWhat: /sys/bus/iio/devices/iio:deviceX/in_count0_enable_mode 1242a830a45SBenjamin GaignardKernelVersion: 4.12 1252a830a45SBenjamin GaignardContact: benjamin.gaignard@st.com 1262a830a45SBenjamin GaignardDescription: 1272a830a45SBenjamin Gaignard Configure the device counter enable modes, in all case 1282a830a45SBenjamin Gaignard counting direction is set by in_count0_count_direction 1292a830a45SBenjamin Gaignard attribute and the counter is clocked by the internal clock. 1302a830a45SBenjamin Gaignard always: 1312a830a45SBenjamin Gaignard Counter is always ON. 1322a830a45SBenjamin Gaignard 1332a830a45SBenjamin Gaignard gated: 1342a830a45SBenjamin Gaignard Counting is enabled when connected trigger signal 1352a830a45SBenjamin Gaignard level is high else counting is disabled. 1362a830a45SBenjamin Gaignard 1372a830a45SBenjamin Gaignard triggered: 1382a830a45SBenjamin Gaignard Counting is enabled on rising edge of the connected 1392a830a45SBenjamin Gaignard trigger, and remains enabled for the duration of this 1402a830a45SBenjamin Gaignard selected mode. 141