On 25/10/2024 07:36, Ming-Jen Chen wrote:
No. 0, 8, 16, 32 , 64 etc.I will update the definition to specify the debounce period in terms of+ 0 = 0 clockHeh? So this is just 0
+ 1 = 0 clock
+ 2 = 0 clock
+ 3 = 8 clocksThis is 8
+ 4 = 16 clocks16, not 4
+ 5 = 32 clocksUse proper enum
+ 6 = 64 clocks
+ 7 = 128 clocks
+ 8 = 256 clocks
+ 9 = 512 clocks
+ 10 = 1024 clocks
+ 11 = 2048 clocks
+ 12 = 4096 clocks
+ 13 = 8192 clocks
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
Please look for matching existing properties first.pre-scale:
+Missing constraints
+ 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).
Both properties are unexpected... aren't you duplicating existing
properties?
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)
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