[PATCH v3 0/2] AM335x-ICE: Add support for rotary switch

Daniel Mack daniel at zonque.org
Wed Aug 24 04:01:44 PDT 2016


On 08/24/2016 11:15 AM, Vignesh R wrote:
> On Wednesday 24 August 2016 02:05 PM, Daniel Mack wrote:
>> On 08/24/2016 09:58 AM, Vignesh R wrote:
>>> This series adds support for rotary-switch on AM335x-ICE that is
>>> connected to TI PCA9536 I2C GPIO expander.
>>> First patch adds new generic driver to read status of group of GPIO
>>> lines and report the value as an input event. The second patch adds DT
>>> entries for the same.
>>>
>>> v2: https://lkml.org/lkml/2016/8/23/111
>>> v1: https://lkml.org/lkml/2016/8/12/7
>>
>> Is there a reason why the rotary-encoder driver cannot handle this?
>> Commit 7dde4e74744 ("Input: rotary-encoder - support more than 2 gpios
>> as input") added support for that mode AFAIU.
>>
> 
> Rotary encoder driver handles incremental encoders only and does not
> support absolute encoders. The rotary switch on am335x-ice is different
> from the incremental encoders in the
> sense that GPIO line status directly reflect the position(number)
> pointed by the dial of the encoder. So, there is no need to count steps
> or know the direction of rotation as it does not matter.
> 
> I did try to enhance rotary-encoder driver to support absolute
> encoder[1] but the comment there was to write new driver that simply
> translates gpio-encoded value into ABS* event. Indeed, the new driver
> looks more simple and can handle more such hardwares.

Okay. Yes, that makes sense. Thanks for the explanation!


Daniel




More information about the linux-arm-kernel mailing list