1# Copyright 2023 Google LLC 2# SPDX-License-Identifier: Apache-2.0 3 4description: Keyboard matrix device 5 6include: base.yaml 7 8properties: 9 row-size: 10 type: int 11 description: | 12 The number of rows in the keyboard matrix. 13 14 col-size: 15 type: int 16 description: | 17 The number of column in the keyboard matrix. 18 19 poll-period-ms: 20 type: int 21 default: 5 22 description: | 23 Defines the poll period in msecs between between matrix scans, set to 0 24 to never exit poll mode. Defaults to 5ms if unspecified. 25 26 stable-poll-period-ms: 27 type: int 28 description: | 29 Defines the poll period in msecs between matrix scans when the matrix is 30 stable, defaults to poll-period-ms value if unspecified. 31 32 poll-timeout-ms: 33 type: int 34 default: 100 35 description: | 36 How long to wait before going from polling back to idle state. Defaults 37 to 100ms if unspecified. 38 39 debounce-down-ms: 40 type: int 41 default: 10 42 description: | 43 Debouncing time for a key press event. Defaults to 10ms if unspecified. 44 45 debounce-up-ms: 46 type: int 47 default: 20 48 description: | 49 Debouncing time for a key release event. Defaults to 20ms if unspecified. 50 51 settle-time-us: 52 type: int 53 default: 50 54 description: | 55 Delay between setting column output and reading the row values. Defaults 56 to 50us if unspecified. 57 58 actual-key-mask: 59 type: array 60 description: 61 Keyboard scanning mask. For each keyboard column, specify which 62 keyboard rows actually exist. Can be used to avoid triggering the ghost 63 detection on non existing keys. No masking by default, any combination is 64 valid. 65 66 no-ghostkey-check: 67 type: boolean 68 description: | 69 Ignore the ghost key checking in the driver if the diodes are used 70 in the matrix hardware. 71