From: Philip Chen <philipchen@chromium.org>
To: LKML <linux-kernel@vger.kernel.org>, dmitry.torokhov@gmail.com
Cc: swboyd@chromium.org, dianders@chromium.org,
Philip Chen <philipchen@chromium.org>,
Benson Leung <bleung@chromium.org>,
Enric Balletbo i Serra <enric.balletbo@collabora.com>,
Guenter Roeck <groeck@chromium.org>,
Rob Herring <robh+dt@kernel.org>, Simon Glass <sjg@chromium.org>,
devicetree@vger.kernel.org, linux-input@vger.kernel.org
Subject: [PATCH v7 1/2] dt-bindings: input: cros-ec-keyb: Add a new property
Date: Fri, 15 Jan 2021 12:24:29 -0800 [thread overview]
Message-ID: <20210115122412.v7.1.I025fb861cd5fa0ef5286b7dce514728e9df7ae74@changeid> (raw)
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>
---
Changes in v7:
- Use MATRIX_KEY macro to describe `function-row-physmap`
Changes in v6:
- remove $ref and add `function-row-physmap` to the example
Changes in v5:
- add minItems and maxItems for `function-row-physmap`
Changes in v2:
- add `function-row-physmap` instead of `google,custom-keyb-top-row`
.../bindings/input/google,cros-ec-keyb.yaml | 24 +++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
index 8e50c14a9d778..5377b232fa10f 100644
--- a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
+++ b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
@@ -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
--
2.26.2
next reply other threads:[~2021-01-15 20:25 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-15 20:24 Philip Chen [this message]
2021-01-15 20:24 ` [PATCH v7 2/2] Input: cros-ec-keyb - Expose function row physical map to userspace Philip Chen
2021-01-15 20:34 ` Stephen Boyd
2021-02-04 23:58 ` Philip Chen
2021-02-23 5:07 ` Dmitry Torokhov
2021-01-15 20:34 ` [PATCH v7 1/2] dt-bindings: input: cros-ec-keyb: Add a new property Stephen Boyd
2021-01-25 23:15 ` Rob Herring
2021-02-23 5:07 ` Dmitry Torokhov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210115122412.v7.1.I025fb861cd5fa0ef5286b7dce514728e9df7ae74@changeid \
--to=philipchen@chromium.org \
--cc=bleung@chromium.org \
--cc=devicetree@vger.kernel.org \
--cc=dianders@chromium.org \
--cc=dmitry.torokhov@gmail.com \
--cc=enric.balletbo@collabora.com \
--cc=groeck@chromium.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=robh+dt@kernel.org \
--cc=sjg@chromium.org \
--cc=swboyd@chromium.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).