Hi Mylene,
On Fri, Jun 14, 2019 at 03:36:51PM +0200, Mylène Josserand wrote:
quoted hunk ↗ jump to hunk
Add the support of a gpio that can be defined as a push button.
Thanks to that, it is possible to emit a keycode in case of a
"push" event, if the rotary supports that.
The keycode to emit is defined using "linux,code" property
(such as in gpio-keys).
Signed-off-by: Mylène Josserand <redacted>
---
.../devicetree/bindings/input/rotary-encoder.txt | 5 +++
drivers/input/misc/rotary_encoder.c | 50 ++++++++++++++++++++++
2 files changed, 55 insertions(+)
diff --git a/Documentation/devicetree/bindings/input/rotary-encoder.txt b/Documentation/devicetree/bindings/input/rotary-encoder.txt
index a644408b33b8..1cfce5d0b5c4 100644
--- a/Documentation/devicetree/bindings/input/rotary-encoder.txt
+++ b/Documentation/devicetree/bindings/input/rotary-encoder.txt
@@ -22,6 +22,9 @@ Optional properties:
- wakeup-source: Boolean, rotary encoder can wake up the system.
- rotary-encoder,encoding: String, the method used to encode steps.
Supported are "gray" (the default and more common) and "binary".
+- push-gpio: a gpio to be used as a detection of a push from the rotary.
According to Documentation/devicetree/bindings/gpio/gpio.txt, GPIO
properties with a -gpio suffix are now deprecated in favor of the
-gpios suffix.
+- linux,code: keycode to emit with the push-gpio of this rotary encoder.
+ Required property in case "push-gpio"'s one is used.
I guess we should make it clear in the property name that it's the
keycode emitted at push. Otherwise, it will be ambiguous between the
rotary itself, or the button.
Maxime
--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com