Re: [PATCH 1/2] dt-bindings: input: Add Nuvoton MA35D1 keypad

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2024/10/28 下午 03:04, Krzysztof Kozlowski wrote:

On 28/10/2024 02:15, Ming-Jen Chen wrote:
On 2024/10/25 下午 07:42, Krzysztof Kozlowski wrote:
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.
I will change it to the following content:

nuvoton,debounce-period:
    type:  integer
    enum:  [0,8,16,32,64,128,256,512,1024,2048,4096,8192]
    description:  | Key debounce period select, specified in terms of keypad IP clock
cycles. Valid values include 0 (no debounce) and specific clock cycle
values: 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, and 8192.

+
+  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.
I will change it to the following content:

nuvoton,scan-time:
Why? What about my request?

I utilized|grep|  to search for relevant properties in the|input/|  folder using keywords such as|scan|,|time|,|period|,|freq|, and|interval|.
While I found some similar properties, I did not locate any that completely meet my requirements.

For example, I found|"scanning_period"|, which is described as "Time between scans. Each step is 1024 us. Valid 1-256."
I would like to confirm if you are suggesting that I use|scanning_period|  and explain my specific use case in the description,
for example:

nuvoton,scanning-period:
    type:  uint32
description: | Set the scan time for each key, specified in terms of keypad IP clock cycles. The valid range is from 1 to 256. minimum: 1
    maximum:  256 Could you please confirm if this approach aligns with your suggestion,
 or if you have any other recommended existing properties?

Thank you for your assistance!



Best regards,
Krzysztof

Best regards,
Ming-Jen Chen





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux