microchip,xec-kbd

Description

Microchip XEC keyboard matrix controller

Properties

Properties not inherited from the base binding file.

Name

Type

Details

pcrs

int

KBD PCR register index and bit position

This property is required.

row-size

int

The number of rows in the keyboard matrix.

This property is required.

col-size

int

The number of column in the keyboard matrix.

This property is required.

poll-period-us

int

Defines the poll period in usecs between between matrix scans, set to 0
to never exit poll mode. Defaults to 5,000us if unspecified.

Default value: 5000

stable-poll-period-us

int

Defines the poll period in usecs between matrix scans when the matrix is
stable, defaults to poll-period-us value if unspecified.

poll-timeout-ms

int

How long to wait before going from polling back to idle state. Defaults
to 100ms if unspecified.

Default value: 100

debounce-down-ms

int

Debouncing time for a key press event. Defaults to 10ms if unspecified.

Default value: 10

debounce-up-ms

int

Debouncing time for a key release event. Defaults to 20ms if unspecified.

Default value: 20

settle-time-us

int

Delay between setting column output and reading the row values. Defaults
to 50us if unspecified.

Default value: 50

actual-key-mask

array

Keyboard scanning mask. For each keyboard column, specify which keyboard rows actually exist. Can be used to avoid triggering the ghost detection on non existing keys. No masking by default, any combination is valid.

no-ghostkey-check

boolean

Ignore the ghost key checking in the driver if the diodes are used
in the matrix hardware.

pinctrl-0

phandles

Pin configuration/s for the first state. Content is specific to the
selected pin controller driver implementation.

pinctrl-1

phandles

Pin configuration/s for the second state. See pinctrl-0.

pinctrl-2

phandles

Pin configuration/s for the third state. See pinctrl-0.

pinctrl-3

phandles

Pin configuration/s for the fourth state. See pinctrl-0.

pinctrl-4

phandles

Pin configuration/s for the fifth state. See pinctrl-0.

pinctrl-names

string-array

Names for the provided states. The number of names needs to match the
number of states.

girqs

array

Many DEC/MEC periperals interrupt signals are direct capable. The signals are
connected to bits in a GIRQ. Each GIRQ is composed of 5 32-bit registers:
status(latched or r/w1-c), set-enable, clr-enable, and result (read-only).
The read-only result register bits are the bitwise AND of status and enable.
Direct mode routes the individual result register bits to NVIC inputs. If
direct mode is disable by setting direct mode bit to 0 in the EC subsystem
interrupt control register then the result register outputs are OR'd together
and the OR'd result is connected to an NVIC input based on GIRQ number.
To enable an interrupt a driver must know:
a. NVIC input number and priority from the interrupts property
b. GIRQ number and bit position from the girqs property
The number of entries in interrupts and girqs should be the same in a DT node.

This property is required.