blob: 6699d5e32dcafe111af27dc0a4899b5d0d12c066 [file] [log] [blame]
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
title: Common key matrices binding for matrix-connected key boards
- Olof Johansson <>
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".
$ref: '/schemas/types.yaml#/definitions/uint32-array'
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
$ref: /schemas/types.yaml#/definitions/uint32
description: Number of row lines connected to the keypad controller.
$ref: /schemas/types.yaml#/definitions/uint32
description: Number of column lines connected to the keypad controller.
additionalProperties: true
- |
keypad {
/* ... */
linux,keymap = < 0x00030012
0x0102003a >;
keypad,num-rows = <2>;
keypad,num-columns = <8>;