2021-01-07 23:44:48

by Philip Chen

[permalink] [raw]
Subject: [PATCH v4 1/2] dt-bindings: input: cros-ec-keyb: Add a new property

This patch adds 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 <[email protected]>
---

(no changes since v2)

Changes in v2:
- add `function-row-physmap` instead of `google,custom-keyb-top-row`

.../devicetree/bindings/input/google,cros-ec-keyb.yaml | 10 ++++++++++
1 file changed, 10 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..7acdb33781d30 100644
--- a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
+++ b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
@@ -31,6 +31,16 @@ properties:
if the EC does not have its own logic or hardware for this.
type: boolean

+ function-row-physmap:
+ $ref: '/schemas/types.yaml#/definitions/uint32-array'
+ 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

--
2.26.2


2021-01-12 11:09:43

by Stephen Boyd

[permalink] [raw]
Subject: Re: [PATCH v4 1/2] dt-bindings: input: cros-ec-keyb: Add a new property

Quoting Philip Chen (2021-01-07 15:42:08)
> This patch adds a new property `function-row-physmap` to the

From Documentation/process/submitting-patches.rst

Describe your changes in imperative mood, e.g. "make xyzzy do frotz"
instead of "[This patch] makes xyzzy do frotz" or "[I] changed xyzzy
to do frotz", as if you are giving orders to the codebase to change
its behaviour.

> 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 <[email protected]>
> ---
> diff --git a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> index 8e50c14a9d778..7acdb33781d30 100644
> --- a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> +++ b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> @@ -31,6 +31,16 @@ properties:
> if the EC does not have its own logic or hardware for this.
> type: boolean
>
> + function-row-physmap:

Is there any minimum/maximum number of elements possible?

> + $ref: '/schemas/types.yaml#/definitions/uint32-array'
> + 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.
> +

2021-01-13 03:28:07

by Philip Chen

[permalink] [raw]
Subject: Re: [PATCH v4 1/2] dt-bindings: input: cros-ec-keyb: Add a new property

On Mon, Jan 11, 2021 at 6:10 PM Stephen Boyd <[email protected]> wrote:
>
> Quoting Philip Chen (2021-01-07 15:42:08)
> > This patch adds a new property `function-row-physmap` to the
>
> From Documentation/process/submitting-patches.rst
>
> Describe your changes in imperative mood, e.g. "make xyzzy do frotz"
> instead of "[This patch] makes xyzzy do frotz" or "[I] changed xyzzy
> to do frotz", as if you are giving orders to the codebase to change
> its behaviour.
I was aware of this guideline, but I thought it only applies to the
summary line.
I'll apply the guideline to the whole description.
Thanks!
>
> > 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 <[email protected]>
> > ---
> > diff --git a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> > index 8e50c14a9d778..7acdb33781d30 100644
> > --- a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> > +++ b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> > @@ -31,6 +31,16 @@ properties:
> > if the EC does not have its own logic or hardware for this.
> > type: boolean
> >
> > + function-row-physmap:
>
> Is there any minimum/maximum number of elements possible?
The maximum is 15.
There is no definition for the minimum - we can probably say the minimum is 1.
>
> > + $ref: '/schemas/types.yaml#/definitions/uint32-array'
> > + 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.
> > +

2021-01-13 06:56:22

by Stephen Boyd

[permalink] [raw]
Subject: Re: [PATCH v4 1/2] dt-bindings: input: cros-ec-keyb: Add a new property

Quoting Philip Chen (2021-01-12 15:29:11)
> On Mon, Jan 11, 2021 at 6:10 PM Stephen Boyd <[email protected]> wrote:
> > Quoting Philip Chen (2021-01-07 15:42:08)
> > > ---
> > > diff --git a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> > > index 8e50c14a9d778..7acdb33781d30 100644
> > > --- a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> > > +++ b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> > > @@ -31,6 +31,16 @@ properties:
> > > if the EC does not have its own logic or hardware for this.
> > > type: boolean
> > >
> > > + function-row-physmap:
> >
> > Is there any minimum/maximum number of elements possible?
> The maximum is 15.
> There is no definition for the minimum - we can probably say the minimum is 1.

Ok cool. Please add min/max of 1 to 15 to the binding.

> >
> > > + $ref: '/schemas/types.yaml#/definitions/uint32-array'
> > > + 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.
> > > +