Home
last modified time | relevance | path

Searched +full:rotary +full:- +full:encoder (Results 1 – 16 of 16) sorted by relevance

/Linux-v5.4/Documentation/devicetree/bindings/input/
Drotary-encoder.txt1 Rotary encoder DT bindings
4 - gpios: a spec for at least two GPIOs to be used, most significant first
7 - linux,axis: the input subsystem axis to map to this rotary encoder.
9 - rotary-encoder,steps: Number of steps in a full turnaround of the
10 encoder. Only relevant for absolute axis. Defaults to 24 which is a
12 - rotary-encoder,relative-axis: register a relative axis rather than an
13 absolute one. Relative axis will only generate +1/-1 events on the input
15 - rotary-encoder,rollover: Automatic rollover when the rotary value becomes
17 - rotary-encoder,steps-per-period: Number of steps (stable states) per period.
19 1: Full-period mode (default)
[all …]
/Linux-v5.4/drivers/input/misc/
Drotary_encoder.c1 // SPDX-License-Identifier: GPL-2.0-only
10 * A generic driver for rotary encoders connected to GPIO lines.
11 * See file:Documentation/input/devices/rotary-encoder.rst for more information
26 #define DRV_NAME "rotary-encoder"
51 signed char dir; /* 1 - clockwise, -1 - CCW */
56 static unsigned int rotary_encoder_get_state(struct rotary_encoder *encoder) in rotary_encoder_get_state() argument
61 for (i = 0; i < encoder->gpios->ndescs; ++i) { in rotary_encoder_get_state()
62 int val = gpiod_get_value_cansleep(encoder->gpios->desc[i]); in rotary_encoder_get_state()
65 if (encoder->encoding == ROTENC_GRAY && ret & 1) in rotary_encoder_get_state()
74 static void rotary_encoder_report_event(struct rotary_encoder *encoder) in rotary_encoder_report_event() argument
[all …]
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
40 Say Y here to use the PowerOn Key for ST-Ericsson's AB8500
41 Mix-Sig PMIC.
44 will be called ab8500-ponkey.
64 module will be called ad714x-i2c.
74 module will be called ad714x-spi.
84 module will be called arizona-haptics.
153 will be called pm8941-pwrkey.
161 on Qualcomm PM8xxx chip. This driver supports ff-memless interface
165 module will be called pm8xxx-vibrator.
[all …]
/Linux-v5.4/Documentation/input/devices/
Drotary-encoder.rst2 rotary-encoder - a generic driver for GPIO connected devices
8 --------
10 Rotary encoders are devices which are connected to the CPU or other
11 peripherals with two wires. The outputs are phase-shifted by 90 degrees
16 a stable state with both outputs high (half-period mode) and some have
17 a stable state in all steps (quarter-period mode).
33 |<-------->|
36 |<-->|
37 one step (half-period mode)
40 one step (quarter-period mode)
[all …]
/Linux-v5.4/include/linux/platform_data/
Dkeypad-pxa27x.h1 /* SPDX-License-Identifier: GPL-2.0 */
17 * _plus_ the number of rotary-encoder sensor inputs, this can be
18 * left as 0 if only rotary encoders are enabled, the driver will
21 * 2. direct_key_map is the key code map for the direct keys, if rotary
22 * encoder(s) are enabled, direct key 0/1(2/3) will be ignored
24 * 3. rotary can be either interpreted as a relative input event (e.g.
52 /* rotary encoders 0 */
58 /* rotary encoders 1 */
/Linux-v5.4/arch/arm/boot/dts/
Dimx28-cfa10049.dts1 // SPDX-License-Identifier: GPL-2.0-or-later
7 * The CFA-10049 is an expansion board for the CFA-10036 module, thus we
8 * need to include the CFA-10036 DTS.
10 #include "imx28-cfa10036.dts"
13 model = "Crystalfontz CFA-10049 Board";
17 compatible = "i2c-mux-gpio";
18 #address-cells = <1>;
19 #size-cells = <0>;
20 pinctrl-names = "default";
21 pinctrl-0 = <&i2cmux_pins_cfa10049>;
[all …]
Dpxa300-raumfeld-common.dtsi1 // SPDX-License-Identifier: GPL-2.0
4 #include <dt-bindings/gpio/gpio.h>
5 #include <dt-bindings/input/input.h>
6 #include <dt-bindings/interrupt-controller/irq.h>
10 hw-revision = <0>;
14 stdout-path = &ffuart;
22 reg_3v3: regulator-3v3 {
23 compatible = "regulator-fixed";
24 regulator-name = "3v3-fixed-supply";
25 regulator-min-microvolt = <3300000>;
[all …]
/Linux-v5.4/Documentation/devicetree/bindings/counter/
Dstm32-timer-cnt.txt1 STMicroelectronics STM32 Timer quadrature encoder
3 STM32 Timer provides quadrature encoder to detect
4 angular position and direction of rotary elements,
7 Must be a sub-node of an STM32 Timer device tree node.
8 See ../mfd/stm32-timers.txt for details about the parent node.
11 - compatible: Must be "st,stm32-timer-counter".
12 - pinctrl-names: Set to "default".
13 - pinctrl-0: List of phandles pointing to pin configuration nodes,
19 #address-cells = <1>;
20 #size-cells = <0>;
[all …]
Dstm32-lptimer-cnt.txt1 STMicroelectronics STM32 Low-Power Timer quadrature encoder and counter
3 STM32 Low-Power Timer provides several counter modes. It can be used as:
4 - quadrature encoder to detect angular position and direction of rotary
6 - simple counter from IN1 input signal.
8 Must be a sub-node of an STM32 Low-Power Timer device tree node.
9 See ../mfd/stm32-lptimer.txt for details about the parent node.
12 - compatible: Must be "st,stm32-lptimer-counter".
13 - pinctrl-names: Set to "default". An additional "sleep" state can be
15 - pinctrl-n: List of phandles pointing to pin configuration nodes,
16 to set IN1/IN2 pins in mode of operation for Low-Power
[all …]
/Linux-v5.4/drivers/input/keyboard/
Dpxa27x_keypad.c1 // SPDX-License-Identifier: GPL-2.0-only
29 #include <linux/platform_data/keypad-pxa27x.h>
35 #define KPREC 0x0010 /* Keypad Rotary Encoder register */
39 /* Keypad Automatic Scan Multiple Key Presser register 0-3 */
47 #define KPC_MKRN(n) ((((n) - 1) & 0x7) << 26) /* matrix key row number */
48 #define KPC_MKCN(n) ((((n) - 1) & 0x7) << 23) /* matrix key column number */
49 #define KPC_DKN(n) ((((n) - 1) & 0x7) << 6) /* direct key number */
63 #define KPC_RE_ZERO_DEB (0x1 << 4) /* Rotary Encoder Zero Debounce */
64 #define KPC_REE1 (0x1 << 3) /* Rotary Encoder1 Enable */
65 #define KPC_REE0 (0x1 << 2) /* Rotary Encoder0 Enable */
[all …]
/Linux-v5.4/drivers/hid/
Dhid-uclogic-core.c1 // SPDX-License-Identifier: GPL-2.0+
3 * HID driver for UC-Logic devices not fully compliant with HID standard
5 * Copyright (c) 2010-2014 Nikolai Kondrashov
21 #include "hid-uclogic-params.h"
23 #include "hid-ids.h"
38 /* In-range timer */
40 /* Last rotary encoder state, or U8_MAX for none */
45 * uclogic_inrange_timeout - handle pen in-range state timeout.
56 struct input_dev *input = drvdata->pen_input; in uclogic_inrange_timeout()
62 if (test_bit(BTN_TOUCH, input->key)) { in uclogic_inrange_timeout()
[all …]
Dhid-uclogic-rdesc.h1 /* SPDX-License-Identifier: GPL-2.0+ */
3 * HID driver for UC-Logic devices not fully compliant with HID standard
4 * - original and fixed report descriptors
6 * Copyright (c) 2010-2018 Nikolai Kondrashov
138 /* Fixed report descriptor for XP-Pen Deco 01 frame controls */
152 /* Least-significant bit of Ugee G5 frame rotary encoder state */
Dhid-uclogic-params.h1 /* SPDX-License-Identifier: GPL-2.0+ */
3 * HID driver for UC-Logic devices not fully compliant with HID standard
4 * - tablet initialization and parameter retrieval
22 /* Types of pen in-range reporting */
24 /* Normal reports: zero - out of proximity, one - in proximity */
26 /* Inverted reports: zero - in proximity, one - out of proximity */
32 /* Convert a pen in-range reporting type to a string */
57 /* Type of in-range reporting, only valid if "id" is not zero */
61 * high-order X and then Y bytes following the pressure field.
91 * Number of the least-significant bit of the 2-bit state of a rotary
[all …]
/Linux-v5.4/Documentation/driver-api/
Dgeneric-counter.rst1 .. SPDX-License-Identifier: GPL-2.0
22 some devices are quadrature encoder counters or tally counters, all
40 -----
57 * Pulse-Direction:
65 - x1 A:
71 - x1 B:
77 - x2 A:
81 - x2 B:
85 - x4:
92 ------
[all …]
/Linux-v5.4/sound/usb/caiaq/
Dinput.c1 // SPDX-License-Identifier: GPL-2.0-or-later
125 #define LOW_PEAK (-7)
136 int range = HIGH_PEAK - LOW_PEAK; in decode_erp()
139 weight_b = abs(mid_value - a) - (range / 2 - 100) / 2; in decode_erp()
147 weight_a = 100 - weight_b; in decode_erp()
151 pos_b = b - LOW_PEAK + DEG270; in decode_erp()
153 pos_b -= DEG360; in decode_erp()
156 pos_b = HIGH_PEAK - b + DEG90; in decode_erp()
161 pos_a = a - LOW_PEAK; in decode_erp()
164 pos_a = HIGH_PEAK - a + DEG180; in decode_erp()
[all …]
/Linux-v5.4/Documentation/devicetree/bindings/
Dvendor-prefixes.yaml1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/vendor-prefixes.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Rob Herring <robh@kernel.org>
19 "^(at25|devbus|dmacap|dsa|exynos|gpio-fan|gpio|gpmc|hdmi|i2c-gpio),.*": true
21 "^(pinctrl-single|#pinctrl-single|PowerPC),.*": true
22 "^(pl022|pxa-mmc|rcar_sound|rotary-encoder|s5m8767|sdhci),.*": true
23 "^(simple-audio-card|simple-graph-card|st-plgpio|st-spics|ts),.*": true
34 "^active-semi,.*":
[all …]