[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ef407e89-950f-4874-9dca-474d107f6a52@kernel.org>
Date: Fri, 25 Oct 2024 13:42:04 +0200
From: Krzysztof Kozlowski <krzk@...nel.org>
To: Ming-Jen Chen <mjchen0829@...il.com>
Cc: linux-kernel@...r.kernel.org, devicetree@...r.kernel.org,
linux-input@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
mjchen@...oton.com, peng.fan@....com, sudeep.holla@....com, arnd@...db.de,
conor+dt@...nel.org, krzk+dt@...nel.org, robh@...nel.org,
dmitry.torokhov@...il.com
Subject: Re: [PATCH 1/2] dt-bindings: input: Add Nuvoton MA35D1 keypad
On 25/10/2024 07:36, Ming-Jen Chen wrote:
>>
>>> + 0 = 0 clock
>>> + 1 = 0 clock
>>> + 2 = 0 clock
>> Heh? So this is just 0
>>
>>> + 3 = 8 clocks
>> This is 8
>>
>>> + 4 = 16 clocks
>> 16, not 4
>>
>>> + 5 = 32 clocks
>>> + 6 = 64 clocks
>>> + 7 = 128 clocks
>>> + 8 = 256 clocks
>>> + 9 = 512 clocks
>>> + 10 = 1024 clocks
>>> + 11 = 2048 clocks
>>> + 12 = 4096 clocks
>>> + 13 = 8192 clocks
>> Use proper enum
> I will update the definition to specify the debounce period in terms of
> keypad IP clock cycles, as follow:
>
> nuvoton,debounce-period:
> type: integer
> enum: [0, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]
> description: |
> Key debounce period select, specified in terms of keypad IP
> clock cycles.
> This value corresponds to the register setting for the keypad
> interface.
> The following values indicate the debounce time:
> - 0 = 0 clock cycles (no debounce)
> - 3 = 8 clock cycles
> - 4 = 16 clock cycles
> - 5 = 32 clock cycles
> - 6 = 64 clock cycles
> - 7 = 128 clock cycles
> - 8 = 256 clock cycles
> - 9 = 512 clock cycles
> - 10 = 1024 clock cycles
> - 11 = 2048 clock cycles
> - 12 = 4096 clock cycles
> - 13 = 8192 clock cycles
No. 0, 8, 16, 32 , 64 etc.
>>
>>
>>> +
>>> + per-scale:
>>> + $ref: /schemas/types.yaml#/definitions/uint32
>>> + description: Row Scan Cycle Pre-scale Value (1 to 256).
>> Missing constraints
>>
>>> +
>>> + per-scalediv:
>>> + $ref: /schemas/types.yaml#/definitions/uint32
>>> + description: Per-scale divider (1 to 256).
>> Missing constraints
>>
>> Both properties are unexpected... aren't you duplicating existing
>> properties?
> pre-scale:
> This value configures the IC register for the row scan cycle
> pre-scaling, with valid values ranging from 1 to 256
> per-scalediv:(I will change pre-scalediv to pre-scale-div)
Please look for matching existing properties first.
> This will describe its role in setting the divisor for the row scan
> cycle pre-scaling, allowing for finer control over the keypad scanning
> frequency
>
> I will change it to the following content:
> nuvoton,pre-scale:
> type: uint32
> description: |
> Row Scan Cycle Pre-scale Value, used to pre-scale the row scan
> cycle. The valid range is from 1 to 256.
> minimum: 1
> maximum: 256
>
> nuvoton,pre-scale-div:
> type: uint32
> description: |
> Divider for the pre-scale value, further adjusting the scan
> frequency for the keypad.
> minimum: 1
> maximum: 256
Best regards,
Krzysztof
Powered by blists - more mailing lists