[v3,1/3] dt-bindings: power: supply: Add Acer Aspire 1 EC

Message ID 20240220-aspire1-ec-v3-1-02cb139a4931@trvn.ru
State New
Headers
Series power: supply: Acer Aspire 1 embedded controller |

Commit Message

Nikita Travkin Feb. 20, 2024, 11:57 a.m. UTC
  Add binding for the EC found in the Acer Aspire 1 laptop.

Signed-off-by: Nikita Travkin <nikita@trvn.ru>
---
 .../bindings/power/supply/acer,aspire1-ec.yaml     | 69 ++++++++++++++++++++++
 1 file changed, 69 insertions(+)
  

Comments

Conor Dooley Feb. 20, 2024, 6:41 p.m. UTC | #1
Rob,

On Tue, Feb 20, 2024 at 04:57:12PM +0500, Nikita Travkin wrote:
> Add binding for the EC found in the Acer Aspire 1 laptop.
> 
> Signed-off-by: Nikita Travkin <nikita@trvn.ru>
> ---
>  .../bindings/power/supply/acer,aspire1-ec.yaml     | 69 ++++++++++++++++++++++
>  1 file changed, 69 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/power/supply/acer,aspire1-ec.yaml b/Documentation/devicetree/bindings/power/supply/acer,aspire1-ec.yaml
> new file mode 100644
> index 000000000000..984cf19cf806
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/power/supply/acer,aspire1-ec.yaml
> @@ -0,0 +1,69 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/power/supply/acer,aspire1-ec.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Acer Aspire 1 Embedded Controller
> +
> +maintainers:
> +  - Nikita Travkin <nikita@trvn.ru>
> +
> +description:
> +  The Acer Aspire 1 laptop uses an embedded controller to control battery
> +  and charging as well as to provide a set of misc features such as the
> +  laptop lid status and HPD events for the USB Type-C DP alt mode.
> +
> +properties:
> +  compatible:
> +    const: acer,aspire1-ec
> +
> +  reg:
> +    const: 0x76
> +
> +  interrupts:
> +    maxItems: 1
> +
> +  acer,fn-selects-media-keys:
> +    description: Configure the keyboard layout to invert the Fn key.
> +      By default the function row of the keyboard inputs media keys
> +      (i.e Vol-Up) when Fn is not pressed. With this option set, pressing
> +      the key without Fn would input function keys (i.e. F11). The
> +      firmware may choose to add this property when user selects the fn
> +      mode in the firmware setup utility.
> +    type: boolean

We both had some comments on this property, and Nikita tried to follow
up on yours (which was much more substantive than mine) but got no
response:
https://lore.kernel.org/all/20231214220210.GA988134-robh@kernel.org/

Reading what you said, I'm not entirely sure what you were looking for,
my guess is that you were wanted something controllable from userspace,
but I'm not sure how you figured that should work where the firmware
alone is able to control this.

Cheers,
Conor.

> +
> +  connector:
> +    $ref: /schemas/connector/usb-connector.yaml#
> +
> +required:
> +  - compatible
> +  - reg
> +  - interrupts
> +
> +additionalProperties: false
> +
> +examples:
> +  - |+
> +    #include <dt-bindings/interrupt-controller/irq.h>
> +    i2c {
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +
> +        embedded-controller@76 {
> +            compatible = "acer,aspire1-ec";
> +            reg = <0x76>;
> +
> +            interrupts-extended = <&tlmm 30 IRQ_TYPE_LEVEL_LOW>;
> +
> +            connector {
> +                compatible = "usb-c-connector";
> +
> +                port {
> +                    ec_dp_in: endpoint {
> +                        remote-endpoint = <&mdss_dp_out>;
> +                    };
> +                };
> +            };
> +        };
> +    };
> 
> -- 
> 2.43.0
>
  
Krzysztof Kozlowski Feb. 21, 2024, 7:53 a.m. UTC | #2
On 20/02/2024 12:57, Nikita Travkin wrote:
> Add binding for the EC found in the Acer Aspire 1 laptop.
> 
> Signed-off-by: Nikita Travkin <nikita@trvn.ru>

..

> +
> +  connector:
> +    $ref: /schemas/connector/usb-connector.yaml#
> +
> +required:
> +  - compatible
> +  - reg
> +  - interrupts
> +
> +additionalProperties: false
> +
> +examples:
> +  - |+

If there is going to be new posting: drop "+"

Best regards,
Krzysztof
  
Rob Herring Feb. 23, 2024, 4:56 a.m. UTC | #3
On Tue, Feb 20, 2024 at 06:41:06PM +0000, Conor Dooley wrote:
> Rob,
> 
> On Tue, Feb 20, 2024 at 04:57:12PM +0500, Nikita Travkin wrote:
> > Add binding for the EC found in the Acer Aspire 1 laptop.
> > 
> > Signed-off-by: Nikita Travkin <nikita@trvn.ru>
> > ---
> >  .../bindings/power/supply/acer,aspire1-ec.yaml     | 69 ++++++++++++++++++++++
> >  1 file changed, 69 insertions(+)
> > 
> > diff --git a/Documentation/devicetree/bindings/power/supply/acer,aspire1-ec.yaml b/Documentation/devicetree/bindings/power/supply/acer,aspire1-ec.yaml
> > new file mode 100644
> > index 000000000000..984cf19cf806
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/power/supply/acer,aspire1-ec.yaml
> > @@ -0,0 +1,69 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/power/supply/acer,aspire1-ec.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Acer Aspire 1 Embedded Controller
> > +
> > +maintainers:
> > +  - Nikita Travkin <nikita@trvn.ru>
> > +
> > +description:
> > +  The Acer Aspire 1 laptop uses an embedded controller to control battery
> > +  and charging as well as to provide a set of misc features such as the
> > +  laptop lid status and HPD events for the USB Type-C DP alt mode.
> > +
> > +properties:
> > +  compatible:
> > +    const: acer,aspire1-ec
> > +
> > +  reg:
> > +    const: 0x76
> > +
> > +  interrupts:
> > +    maxItems: 1
> > +
> > +  acer,fn-selects-media-keys:
> > +    description: Configure the keyboard layout to invert the Fn key.
> > +      By default the function row of the keyboard inputs media keys
> > +      (i.e Vol-Up) when Fn is not pressed. With this option set, pressing
> > +      the key without Fn would input function keys (i.e. F11). The
> > +      firmware may choose to add this property when user selects the fn
> > +      mode in the firmware setup utility.
> > +    type: boolean
> 
> We both had some comments on this property, and Nikita tried to follow
> up on yours (which was much more substantive than mine) but got no
> response:
> https://lore.kernel.org/all/20231214220210.GA988134-robh@kernel.org/
> 
> Reading what you said, I'm not entirely sure what you were looking for,
> my guess is that you were wanted something controllable from userspace,
> but I'm not sure how you figured that should work where the firmware
> alone is able to control this.

I replied there, but what I want is whatever the solution is to work on 
any laptop, not just this Acer device.

Rob
  

Patch

diff --git a/Documentation/devicetree/bindings/power/supply/acer,aspire1-ec.yaml b/Documentation/devicetree/bindings/power/supply/acer,aspire1-ec.yaml
new file mode 100644
index 000000000000..984cf19cf806
--- /dev/null
+++ b/Documentation/devicetree/bindings/power/supply/acer,aspire1-ec.yaml
@@ -0,0 +1,69 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/power/supply/acer,aspire1-ec.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Acer Aspire 1 Embedded Controller
+
+maintainers:
+  - Nikita Travkin <nikita@trvn.ru>
+
+description:
+  The Acer Aspire 1 laptop uses an embedded controller to control battery
+  and charging as well as to provide a set of misc features such as the
+  laptop lid status and HPD events for the USB Type-C DP alt mode.
+
+properties:
+  compatible:
+    const: acer,aspire1-ec
+
+  reg:
+    const: 0x76
+
+  interrupts:
+    maxItems: 1
+
+  acer,fn-selects-media-keys:
+    description: Configure the keyboard layout to invert the Fn key.
+      By default the function row of the keyboard inputs media keys
+      (i.e Vol-Up) when Fn is not pressed. With this option set, pressing
+      the key without Fn would input function keys (i.e. F11). The
+      firmware may choose to add this property when user selects the fn
+      mode in the firmware setup utility.
+    type: boolean
+
+  connector:
+    $ref: /schemas/connector/usb-connector.yaml#
+
+required:
+  - compatible
+  - reg
+  - interrupts
+
+additionalProperties: false
+
+examples:
+  - |+
+    #include <dt-bindings/interrupt-controller/irq.h>
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+
+        embedded-controller@76 {
+            compatible = "acer,aspire1-ec";
+            reg = <0x76>;
+
+            interrupts-extended = <&tlmm 30 IRQ_TYPE_LEVEL_LOW>;
+
+            connector {
+                compatible = "usb-c-connector";
+
+                port {
+                    ec_dp_in: endpoint {
+                        remote-endpoint = <&mdss_dp_out>;
+                    };
+                };
+            };
+        };
+    };