Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1446447 > unrolled thread

Re: [RFC PATCH 1/2] Input: rotary-encoder- Add support for absolute encoder

Started by"R, Vignesh" <vigneshr@ti.com>
First post2016-07-19 15:10 +0200
Last post2016-07-19 15:10 +0200
Articles 1 — 1 participant

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [RFC PATCH 1/2] Input: rotary-encoder- Add support for absolute  encoder "R, Vignesh" <vigneshr@ti.com> - 2016-07-19 15:10 +0200

#1446447 — Re: [RFC PATCH 1/2] Input: rotary-encoder- Add support for absolute encoder

From"R, Vignesh" <vigneshr@ti.com>
Date2016-07-19 15:10 +0200
SubjectRe: [RFC PATCH 1/2] Input: rotary-encoder- Add support for absolute encoder
Message-ID<rWCWD-4qE-43@gated-at.bofh.it>
Dmitry,

On 6/16/2016 4:17 PM, Vignesh R wrote:
[...]
>>> On 5/20/2016 10:04 PM, Dmitry Torokhov wrote:
>>>> On Thu, May 19, 2016 at 02:34:00PM +0530, Vignesh R wrote:
>>>>> There are rotary-encoders where GPIO lines reflect the actual position
>>>>> of the rotary encoder dial. For example, if dial points to 9, then four
>>>>> GPIO lines connected to the rotary encoder will read HLLH(1001b = 9).
>>>>> Add support for such rotary-encoder.
>>>>> The driver relies on rotary-encoder,absolute-encoder DT property to
>>>>> detect such encoders.
>>>>> Since, GPIO IRQs are not necessary to work with
>>>>> such encoders, optional polling mode support is added using
>>>>> input_poll_dev skeleton. This is can be used by enabling
>>>>> CONFIG_INPUT_GPIO_ROTARY_ENCODER_POLL_MODE_SUPPORT.
>>>>
>>>> Does this really belong to a rotary encoder and not a new driver that
>>>> simply translates gpio-encoded value into ABS* event?
>>>>
>>>
>>> Currently rotary encoder driver only supports incremental/step counting
>>> rotary devices. However, the device that is there on am335x-ice is an
>>> absolute encoder but, IMO, nevertheless a kind of rotary encoder. The
>>> only difference is that there is no need to count steps and the absolute
>>> position value is always available as binary encoded state of connected
>>> GPIOs.
>>> The hardware on am335x-ice is a mechanical rotary encoder switch
>>> connected over 4 GPIOs. It is same as binary encoder described at [1]
>>> (except there are 4 GPIO lines), so this lead me to add support in
>>> rotary-encoder.
>>>
>>> [1]https://en.wikipedia.org/wiki/Rotary_encoder#Standard_binary_encoding
>>>
>>
>> Could you please comment on how would you like to support above
>> described encoder: As a new driver or with existing driver with new
>> compatible/mode setting via DT or as suggest by Uwe in another reply?
>> IMHO, supporting using existing driver with new mode/compatible string
>> looks a better option as the hardware is a kind of rotary-encoder.
>>

Could you please suggest the right solution here? Do you think new
driver is need to support above described absolute encoder h/w? It would
be great to have your input now, so that I can work on the new set of
patches and submit them for v4.9 merge window as soon as v4.8 merge
window closes?

Regards
Vignesh

[toc] | [standalone]


Back to top | Article view | linux.kernel


csiph-web