2023-08-30 17:31:07 +02:00
|
|
|
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
|
|
%YAML 1.2
|
|
|
|
---
|
|
|
|
$id: http://devicetree.org/schemas/input/matrix-keymap.yaml#
|
|
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
|
|
|
|
title: Common Key Matrices on Matrix-connected Key Boards
|
|
|
|
|
|
|
|
maintainers:
|
|
|
|
- Olof Johansson <olof@lixom.net>
|
|
|
|
|
|
|
|
description: |
|
|
|
|
A simple common binding for matrix-connected key boards. Currently targeted at
|
|
|
|
defining the keys in the scope of linux key codes since that is a stable and
|
|
|
|
standardized interface at this time.
|
|
|
|
|
|
|
|
Some users of this binding might choose to specify secondary keymaps for
|
|
|
|
cases where there is a modifier key such as a Fn key. Proposed names
|
|
|
|
for said properties are "linux,fn-keymap" or with another descriptive
|
|
|
|
word for the modifier other from "Fn".
|
|
|
|
|
|
|
|
properties:
|
|
|
|
linux,keymap:
|
2023-10-24 12:59:35 +02:00
|
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
2023-08-30 17:31:07 +02:00
|
|
|
description: |
|
|
|
|
An array of packed 1-cell entries containing the equivalent of row,
|
|
|
|
column and linux key-code. The 32-bit big endian cell is packed as:
|
|
|
|
row << 24 | column << 16 | key-code
|
|
|
|
|
|
|
|
keypad,num-rows:
|
|
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
description: Number of row lines connected to the keypad controller.
|
|
|
|
|
|
|
|
keypad,num-columns:
|
|
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
description: Number of column lines connected to the keypad controller.
|
|
|
|
|
|
|
|
additionalProperties: true
|
|
|
|
|
|
|
|
examples:
|
|
|
|
- |
|
|
|
|
keypad {
|
|
|
|
/* ... */
|
|
|
|
linux,keymap = < 0x00030012
|
|
|
|
0x0102003a >;
|
|
|
|
keypad,num-rows = <2>;
|
|
|
|
keypad,num-columns = <8>;
|
|
|
|
};
|