Thread (9 messages) 9 messages, 3 authors, 2013-02-13

Re: [PATCH 5/5] Input: Add ChromeOS EC keyboard driver

From: Simon Glass <sjg@chromium.org>
Date: 2012-12-19 20:35:07
Also in: linux-devicetree, lkml

On Wed, Dec 19, 2012 at 10:16 AM, Dmitry Torokhov
[off-list ref] wrote:
On Wed, Dec 19, 2012 at 12:57:22PM +0000, Grant Likely wrote:
quoted
On Fri, 14 Dec 2012 17:43:31 -0800, Dmitry Torokhov [off-list ref] wrote:
quoted
On Saturday, December 15, 2012 01:13:45 AM Grant Likely wrote:
quoted
On Wed, 12 Dec 2012 13:33:48 -0800, Simon Glass [off-list ref] wrote:
quoted
Use the key-matrix layer to interpret key scan information from the EC
and inject input based on the FDT-supplied key map. This driver registers
itself with the ChromeOS EC driver to perform communications.

Additional FDT bindings are provided to specify rows/columns and the
auto-repeat information.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Luigi Semenzato <redacted>
Signed-off-by: Vincent Palatin <redacted>
---

 .../devicetree/bindings/input/cros-ec-keyb.txt     |   77 ++++
 drivers/input/keyboard/Kconfig                     |   10 +
 drivers/input/keyboard/Makefile                    |    1 +
 drivers/input/keyboard/cros_ec_keyb.c              |  413
 ++++++++++++++++++++ 4 files changed, 501 insertions(+), 0 deletions(-)
 create mode 100644
 Documentation/devicetree/bindings/input/cros-ec-keyb.txt
 create mode 100644 drivers/input/keyboard/cros_ec_keyb.c
diff --git a/Documentation/devicetree/bindings/input/cros-ec-keyb.txt
b/Documentation/devicetree/bindings/input/cros-ec-keyb.txt new file mode
100644
index 0000000..67f51d8
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/cros-ec-keyb.txt
@@ -0,0 +1,77 @@
+ChromeOS EC Keyboard
+
+Google's ChromeOS EC Keyboard is a simple matrix keyboard implemented on
+a separate EC (Embedded Controller) device. It provides a message for
reading +key scans from the EC. These are then converted into keycodes
for processing +by the kernel.
+
+Required properties:
+- compatible: "google,cros-ec-keyb"
+- google,key-rows: Number of keyboard rows (must be <= 8)
+- google,key-columns: Number of keyboard columns (must be <= 13)
+- google,repeat-delay-ms: Key repeat delay in milliseconds
+- google,repeat-rate-ms: Key repeat rate in milliseconds
Hmmm, these should probably be in a common binding. Take a look at
the other input bindings and make a proposal for properties to add to
matrix-keymap.txt.
Actually these are not essentia for bringup and can be set from userspace,
so I'd say simply drop them.
Aren't they needed for a working keyboard? If so, I would really think
they should be set correctly without userspace intervention.
I am sorry if I was unclear, but I was actually talking about the last
2: repeat-delay-ms and repeat-rate-ms. Input core has I believe sane
defaults (250 msec delay, 33 cps autorepeat) and user can adjust if
other rate is preferred.
(resending due to mailing problem)

I seems like I should remove these two, then.

It would be nice if we could keep these parameters so that the
keyboard doesn't require user-space set up to work, but I understand
and agree they are not essential. Regarding Grant's request to come up
with a common binding, if I remove these then that is not needed,
right?

Regards,
Simon
Thanks.

--
Dmitry
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help