Skip to content

Commit

Permalink
add additional overrides to rotary-encoder overlay (#2334)
Browse files Browse the repository at this point in the history
  • Loading branch information
shawaj authored and popcornmix committed Feb 9, 2018
1 parent fb193ab commit 003504e
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 5 deletions.
23 changes: 23 additions & 0 deletions arch/arm/boot/dts/overlays/README
Expand Up @@ -1331,6 +1331,29 @@ Params: rotary0_pin_a GPIO connected to rotary encoder channel A
(default 4).
rotary0_pin_b GPIO connected to rotary encoder channel B
(default 17).
relative_axis register a relative axis rather than an
absolute one. Relative axis will only
generate +1/-1 events on the input device,
hence no steps need to be passed.
linux_axis the input subsystem axis to map to this
rotary encoder. Defaults to 0 (ABS_X / REL_X)
rollover Automatic rollover when the rotary value
becomes greater than the specified steps or
smaller than 0. For absolute axis only.
steps-per-period Number of steps (stable states) per period.
The values have the following meaning:
1: Full-period mode (default)
2: Half-period mode
4: Quarter-period mode
steps Number of steps in a full turnaround of the
encoder. Only relevant for absolute axis.
Defaults to 24 which is a typical value for
such devices.
wakeup Boolean, rotary encoder can wake up the
system.
encoding String, the method used to encode steps.
Supported are "gray" (the default and more
common) and "binary".


Name: rpi-backlight
Expand Down
18 changes: 13 additions & 5 deletions arch/arm/boot/dts/overlays/rotary-encoder-overlay.dts
Expand Up @@ -28,16 +28,24 @@
gpios = <&gpio 4 0>, <&gpio 17 0>;
linux,axis = <0>; /* REL_X */
rotary-encoder,encoding = "gray";
rotary-encoder,relative-axis;
rotary-encoder,steps = <24>; /* 24 default */
rotary-encoder,steps-per-period = <1>; /* corresponds to full period mode. See README */
};
};

};

__overrides__ {
rotary0_pin_a = <&rotary0>,"gpios:4",
<&rotary0_pins>,"brcm,pins:0";
rotary0_pin_b = <&rotary0>,"gpios:16",
<&rotary0_pins>,"brcm,pins:4";
rotary0_pin_a = <&rotary0>,"gpios:4",
<&rotary0_pins>,"brcm,pins:0";
rotary0_pin_b = <&rotary0>,"gpios:16",
<&rotary0_pins>,"brcm,pins:4";
relative_axis = <&rotary0>,"rotary-encoder,relative-axis?";
linux_axis = <&rotary0>,"linux,axis:0";
rollover = <&rotary0>,"rotary-encoder,rollover?";
steps-per-period = <&rotary0>,"rotary-encoder,steps-per-period:0";
steps = <&rotary0>,"rotary-encoder,steps:0";
wakeup = <&rotary0>,"wakeup-source?";
encoding = <&rotary0>,"rotary-encoder,encoding";
};
};

0 comments on commit 003504e

Please sign in to comment.