Re: [PATCH v2 5/5] dt-bindings: input/atkbd.txt: Add binding info for "keymap" property

From: Dmitry Torokhov
Date: Thu Mar 26 2020 - 17:28:52 EST


On Tue, Mar 24, 2020 at 05:35:18AM -0700, Rajat Jain wrote:
> Add the info for keymap property that allows firmware to specify the
> mapping from physical code to linux keycode, that the kernel should use.
>
> Signed-off-by: Rajat Jain <rajatja@xxxxxxxxxx>
> ---
> v2: Remove the Change-Id from the commit log
>
> .../devicetree/bindings/input/atkbd.txt | 27 ++++++++++++++++++-
> 1 file changed, 26 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/input/atkbd.txt b/Documentation/devicetree/bindings/input/atkbd.txt
> index 816653eb8e98d..0a0037d70adc8 100644
> --- a/Documentation/devicetree/bindings/input/atkbd.txt
> +++ b/Documentation/devicetree/bindings/input/atkbd.txt
> @@ -6,9 +6,15 @@ Optional properties:
> An ordered array of the physical codes for the function
> row keys. Arranged in order from left to right.
>
> + keymap:

This map will contain Linux specific values, so I would say
"linux,keymap". Rob?

> + An array of the u32 entries to specify mapping from the
> + keyboard physcial codes to linux keycodes. The top 16
> + bits of each entry are the physical code, and bottom
> + 16 bits are the linux keycode.
> +
> Example:
>
> - This is a sample ACPI _DSD node describing the property:
> + This is a sample ACPI _DSD node describing the properties:
>
> Name (_DSD, Package () {
> ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
> @@ -29,6 +35,25 @@ Example:
> 0xAE, /* T12 VOL_DOWN */
> 0xB0, /* T13 VOL_UP */
> }
> + },
> + Package () { "keymap",
> + Package () {
> + 0xEA009E, /* EA -> KEY_BACK */
> + 0xE700AD, /* E7 -> KEY_REFRESH */
> + 0x910174, /* 91 -> KEY_FULL_SCREEN */
> + 0x920078, /* 92 -> KEY_SCALE */
> + 0x930280, /* 93 -> 0x280 */
> + 0x9400E0, /* 94 -> KEY_BRIGHTNESS_DOWN*/
> + 0x9500E1, /* 95 -> KEY_BRIGHTNESS_UP */
> + 0x960279, /* 96 -> KEY_PRIVACY_SCRN_TOGGLE*/
> + 0x9700E5, /* 97 -> KEY_KBDILLUMDOWN */
> + 0x9800E6, /* 98 -> KEY_KBDILLUMUP */
> + 0xA00071, /* A0 -> KEY_MUTE */
> + 0xAE0072, /* AE -> KEY_VOLUMEDOWN */
> + 0xB00073, /* B0 -> KEY_VOLUMEUP */
> + ...
> + <snip other entries>
> + }
> }
> }
> })
> --
> 2.25.1.696.g5e7596f4ac-goog
>

Thanks.

--
Dmitry