dt-bindings: input: cros-ec-keyb: Add a new property describing top row
Add a new property `function-row-physmap` to the device tree for the custom keyboard top row design. The property describes the rows/columns of the top row keys from left to right. Signed-off-by: Philip Chen <philipchen@chromium.org> Reviewed-by: Stephen Boyd <swboyd@chromium.org> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20210115122412.v7.1.I025fb861cd5fa0ef5286b7dce514728e9df7ae74@changeid Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
parent
415e915fdf
commit
311a27da62
@ -31,6 +31,17 @@ properties:
|
||||
if the EC does not have its own logic or hardware for this.
|
||||
type: boolean
|
||||
|
||||
function-row-physmap:
|
||||
minItems: 1
|
||||
maxItems: 15
|
||||
description: |
|
||||
An ordered u32 array describing the rows/columns (in the scan matrix)
|
||||
of top row keys from physical left (KEY_F1) to right. Each entry
|
||||
encodes the row/column as:
|
||||
(((row) & 0xFF) << 24) | (((column) & 0xFF) << 16)
|
||||
where the lower 16 bits are reserved. This property is specified only
|
||||
when the keyboard has a custom design for the top row keys.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
|
||||
@ -38,11 +49,24 @@ unevaluatedProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/input/input.h>
|
||||
cros-ec-keyb {
|
||||
compatible = "google,cros-ec-keyb";
|
||||
keypad,num-rows = <8>;
|
||||
keypad,num-columns = <13>;
|
||||
google,needs-ghost-filter;
|
||||
function-row-physmap = <
|
||||
MATRIX_KEY(0x00, 0x02, 0) /* T1 */
|
||||
MATRIX_KEY(0x03, 0x02, 0) /* T2 */
|
||||
MATRIX_KEY(0x02, 0x02, 0) /* T3 */
|
||||
MATRIX_KEY(0x01, 0x02, 0) /* T4 */
|
||||
MATRIX_KEY(0x03, 0x04, 0) /* T5 */
|
||||
MATRIX_KEY(0x02, 0x04, 0) /* T6 */
|
||||
MATRIX_KEY(0x01, 0x04, 0) /* T7 */
|
||||
MATRIX_KEY(0x02, 0x09, 0) /* T8 */
|
||||
MATRIX_KEY(0x01, 0x09, 0) /* T9 */
|
||||
MATRIX_KEY(0x00, 0x04, 0) /* T10 */
|
||||
>;
|
||||
/*
|
||||
* Keymap entries take the form of 0xRRCCKKKK where
|
||||
* RR=Row CC=Column KKKK=Key Code
|
||||
|
Loading…
Reference in New Issue
Block a user