diff mbox series

[v6,1/2] dt-bindings: touchscreen: Add HY46XX bindings

Message ID 20210412152400.1587623-2-giulio.benetti@benettiengineering.com (mailing list archive)
State Superseded
Headers show
Series Input: add Hycon HY46XX Touchscreen controller | expand

Commit Message

Giulio Benetti April 12, 2021, 3:23 p.m. UTC
This adds device tree bindings for the Hycon HY46XX touchscreen series.

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
---
V1->V2:
As suggested by Rob Herring:
* fixed $id: address
* added "hycon," in front of every custom property
* changed all possible property to boolean type
* removed proximity-sensor-switch property since it's not handled in driver
V2->V3:
As suggested by Jonathan Neuschäfer:
* fixed some typo
* fixed description indentation
* improved boolean properties descriptions
* improved hycon,report-speed description
V3->V4:
* fixed binding compatible string in example as suggested by Jonathan Neuschäfer
V4->V5:
As suggested by Rob Herring:
* drop hycon- prefix from compatible
* use Hertz unit suffix for hycon,report-speed instead of u32
* set hycon,report-speed minimum to 1Hz, 0Hz make controller to do nothing
* change hycon,power-noise-enable property name to hycon,noise-filter-enable
* improve hycon,filter-data property description
* use generic touchscreen node name in example
V5->V6:
* changed report-speed property name into report-speed-hz according to
Rob Herring's suggestion
---
 .../input/touchscreen/hycon,hy46xx.yaml       | 119 ++++++++++++++++++
 MAINTAINERS                                   |   6 +
 2 files changed, 125 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/input/touchscreen/hycon,hy46xx.yaml

Comments

Rob Herring April 13, 2021, 3:07 p.m. UTC | #1
On Mon, 12 Apr 2021 17:23:59 +0200, Giulio Benetti wrote:
> This adds device tree bindings for the Hycon HY46XX touchscreen series.
> 
> Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
> ---
> V1->V2:
> As suggested by Rob Herring:
> * fixed $id: address
> * added "hycon," in front of every custom property
> * changed all possible property to boolean type
> * removed proximity-sensor-switch property since it's not handled in driver
> V2->V3:
> As suggested by Jonathan Neuschäfer:
> * fixed some typo
> * fixed description indentation
> * improved boolean properties descriptions
> * improved hycon,report-speed description
> V3->V4:
> * fixed binding compatible string in example as suggested by Jonathan Neuschäfer
> V4->V5:
> As suggested by Rob Herring:
> * drop hycon- prefix from compatible
> * use Hertz unit suffix for hycon,report-speed instead of u32
> * set hycon,report-speed minimum to 1Hz, 0Hz make controller to do nothing
> * change hycon,power-noise-enable property name to hycon,noise-filter-enable
> * improve hycon,filter-data property description
> * use generic touchscreen node name in example
> V5->V6:
> * changed report-speed property name into report-speed-hz according to
> Rob Herring's suggestion
> ---
>  .../input/touchscreen/hycon,hy46xx.yaml       | 119 ++++++++++++++++++
>  MAINTAINERS                                   |   6 +
>  2 files changed, 125 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/input/touchscreen/hycon,hy46xx.yaml
> 

Reviewed-by: Rob Herring <robh@kernel.org>
Giulio Benetti April 13, 2021, 3:27 p.m. UTC | #2
On 4/13/21 5:07 PM, Rob Herring wrote:
> On Mon, 12 Apr 2021 17:23:59 +0200, Giulio Benetti wrote:
>> This adds device tree bindings for the Hycon HY46XX touchscreen series.
>>
>> Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
>> ---
>> V1->V2:
>> As suggested by Rob Herring:
>> * fixed $id: address
>> * added "hycon," in front of every custom property
>> * changed all possible property to boolean type
>> * removed proximity-sensor-switch property since it's not handled in driver
>> V2->V3:
>> As suggested by Jonathan Neuschäfer:
>> * fixed some typo
>> * fixed description indentation
>> * improved boolean properties descriptions
>> * improved hycon,report-speed description
>> V3->V4:
>> * fixed binding compatible string in example as suggested by Jonathan Neuschäfer
>> V4->V5:
>> As suggested by Rob Herring:
>> * drop hycon- prefix from compatible
>> * use Hertz unit suffix for hycon,report-speed instead of u32
>> * set hycon,report-speed minimum to 1Hz, 0Hz make controller to do nothing
>> * change hycon,power-noise-enable property name to hycon,noise-filter-enable
>> * improve hycon,filter-data property description
>> * use generic touchscreen node name in example
>> V5->V6:
>> * changed report-speed property name into report-speed-hz according to
>> Rob Herring's suggestion
>> ---
>>   .../input/touchscreen/hycon,hy46xx.yaml       | 119 ++++++++++++++++++
>>   MAINTAINERS                                   |   6 +
>>   2 files changed, 125 insertions(+)
>>   create mode 100644 Documentation/devicetree/bindings/input/touchscreen/hycon,hy46xx.yaml
>>
> 
> Reviewed-by: Rob Herring <robh@kernel.org>

I've sent v7[1] before receiving your Reviewed-by.
Do I have to re-submit it once and if I receive a Reviewed-by from you 
as a v8 with all your Reviewed-by's?

Sorry for the noise.

[1]: https://patchwork.kernel.org/project/linux-input/list/?series=466405
Rob Herring April 13, 2021, 5:58 p.m. UTC | #3
On Tue, Apr 13, 2021 at 10:27 AM Giulio Benetti
<giulio.benetti@benettiengineering.com> wrote:
>
> On 4/13/21 5:07 PM, Rob Herring wrote:
> > On Mon, 12 Apr 2021 17:23:59 +0200, Giulio Benetti wrote:
> >> This adds device tree bindings for the Hycon HY46XX touchscreen series.
> >>
> >> Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
> >> ---
> >> V1->V2:
> >> As suggested by Rob Herring:
> >> * fixed $id: address
> >> * added "hycon," in front of every custom property
> >> * changed all possible property to boolean type
> >> * removed proximity-sensor-switch property since it's not handled in driver
> >> V2->V3:
> >> As suggested by Jonathan Neuschäfer:
> >> * fixed some typo
> >> * fixed description indentation
> >> * improved boolean properties descriptions
> >> * improved hycon,report-speed description
> >> V3->V4:
> >> * fixed binding compatible string in example as suggested by Jonathan Neuschäfer
> >> V4->V5:
> >> As suggested by Rob Herring:
> >> * drop hycon- prefix from compatible
> >> * use Hertz unit suffix for hycon,report-speed instead of u32
> >> * set hycon,report-speed minimum to 1Hz, 0Hz make controller to do nothing
> >> * change hycon,power-noise-enable property name to hycon,noise-filter-enable
> >> * improve hycon,filter-data property description
> >> * use generic touchscreen node name in example
> >> V5->V6:
> >> * changed report-speed property name into report-speed-hz according to
> >> Rob Herring's suggestion
> >> ---
> >>   .../input/touchscreen/hycon,hy46xx.yaml       | 119 ++++++++++++++++++
> >>   MAINTAINERS                                   |   6 +
> >>   2 files changed, 125 insertions(+)
> >>   create mode 100644 Documentation/devicetree/bindings/input/touchscreen/hycon,hy46xx.yaml
> >>
> >
> > Reviewed-by: Rob Herring <robh@kernel.org>
>
> I've sent v7[1] before receiving your Reviewed-by.
> Do I have to re-submit it once and if I receive a Reviewed-by from you
> as a v8 with all your Reviewed-by's?

I gave it on v7 too, so only if there are other changes on any of the
patches. The tools will generally pick up any tags on the version
applied. You just can't expect maintainers to go rummage thru old
versions to find any tags.

Rob
Giulio Benetti April 13, 2021, 6:34 p.m. UTC | #4
> Il giorno 13 apr 2021, alle ore 19:58, Rob Herring <robh@kernel.org> ha scritto:
> 
> On Tue, Apr 13, 2021 at 10:27 AM Giulio Benetti
> <giulio.benetti@benettiengineering.com> wrote:
>> 
>>> On 4/13/21 5:07 PM, Rob Herring wrote:
>>> On Mon, 12 Apr 2021 17:23:59 +0200, Giulio Benetti wrote:
>>>> This adds device tree bindings for the Hycon HY46XX touchscreen series.
>>>> 
>>>> Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
>>>> ---
>>>> V1->V2:
>>>> As suggested by Rob Herring:
>>>> * fixed $id: address
>>>> * added "hycon," in front of every custom property
>>>> * changed all possible property to boolean type
>>>> * removed proximity-sensor-switch property since it's not handled in driver
>>>> V2->V3:
>>>> As suggested by Jonathan Neuschäfer:
>>>> * fixed some typo
>>>> * fixed description indentation
>>>> * improved boolean properties descriptions
>>>> * improved hycon,report-speed description
>>>> V3->V4:
>>>> * fixed binding compatible string in example as suggested by Jonathan Neuschäfer
>>>> V4->V5:
>>>> As suggested by Rob Herring:
>>>> * drop hycon- prefix from compatible
>>>> * use Hertz unit suffix for hycon,report-speed instead of u32
>>>> * set hycon,report-speed minimum to 1Hz, 0Hz make controller to do nothing
>>>> * change hycon,power-noise-enable property name to hycon,noise-filter-enable
>>>> * improve hycon,filter-data property description
>>>> * use generic touchscreen node name in example
>>>> V5->V6:
>>>> * changed report-speed property name into report-speed-hz according to
>>>> Rob Herring's suggestion
>>>> ---
>>>>  .../input/touchscreen/hycon,hy46xx.yaml       | 119 ++++++++++++++++++
>>>>  MAINTAINERS                                   |   6 +
>>>>  2 files changed, 125 insertions(+)
>>>>  create mode 100644 Documentation/devicetree/bindings/input/touchscreen/hycon,hy46xx.yaml
>>>> 
>>> 
>>> Reviewed-by: Rob Herring <robh@kernel.org>
>> 
>> I've sent v7[1] before receiving your Reviewed-by.
>> Do I have to re-submit it once and if I receive a Reviewed-by from you
>> as a v8 with all your Reviewed-by's?
> 
> I gave it on v7 too, so only if there are other changes on any of the
> patches.

Ah ok, thank you.

> The tools will generally pick up any tags on the version
> applied. You just can't expect maintainers to go rummage thru old
> versions to find any tags.

Sure not, this is the reason why I’ve asked, I’ve forgotten to add some tag to my commits that I usually do, that’s why I’ve messed things up.

Thank you again for reviewing and explaining me.
Best regards
Giulio Benetti

> 
> Rob
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/input/touchscreen/hycon,hy46xx.yaml b/Documentation/devicetree/bindings/input/touchscreen/hycon,hy46xx.yaml
new file mode 100644
index 000000000000..942562f1e45b
--- /dev/null
+++ b/Documentation/devicetree/bindings/input/touchscreen/hycon,hy46xx.yaml
@@ -0,0 +1,119 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/input/touchscreen/hycon,hy46xx.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Hycon HY46XX series touchscreen controller bindings
+
+description: |
+  There are 6 variants of the chip for various touch panel sizes and cover lens material
+   Glass: 0.3mm--4.0mm
+    PET/PMMA: 0.2mm--2.0mm
+    HY4613(B)-N048  < 6"
+    HY4614(B)-N068  7" .. 10.1"
+    HY4621-NS32  < 5"
+    HY4623-NS48  5.1" .. 7"
+   Glass: 0.3mm--8.0mm
+    PET/PMMA: 0.2mm--4.0mm
+    HY4633(B)-N048  < 6"
+    HY4635(B)-N048  < 7" .. 10.1"
+
+maintainers:
+  - Giulio Benetti <giulio.benetti@benettiengineering.com>
+
+allOf:
+  - $ref: touchscreen.yaml#
+
+properties:
+  compatible:
+    enum:
+      - hycon,hy4613
+      - hycon,hy4614
+      - hycon,hy4621
+      - hycon,hy4623
+      - hycon,hy4633
+      - hycon,hy4635
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+  reset-gpios:
+    maxItems: 1
+
+  vcc-supply: true
+
+  hycon,threshold:
+    description: Allows setting the sensitivity in the range from 0 to 255.
+    $ref: /schemas/types.yaml#/definitions/uint32
+    minimum: 0
+    maximum: 255
+
+  hycon,glove-enable:
+    type: boolean
+    description: Allows enabling glove setting.
+
+  hycon,report-speed-hz:
+    description: Allows setting the report speed in Hertz.
+    minimum: 1
+    maximum: 255
+
+  hycon,noise-filter-enable:
+    type: boolean
+    description: Allows enabling power noise filter.
+
+  hycon,filter-data:
+    description: Allows setting how many samples throw before reporting touch
+                 in the range from 0 to 5.
+    $ref: /schemas/types.yaml#/definitions/uint32
+    minimum: 0
+    maximum: 5
+
+  hycon,gain:
+    description: Allows setting the sensitivity distance in the range from 0 to 5.
+    $ref: /schemas/types.yaml#/definitions/uint32
+    minimum: 0
+    maximum: 5
+
+  hycon,edge-offset:
+    description: Allows setting the edge compensation in the range from 0 to 16.
+    $ref: /schemas/types.yaml#/definitions/uint32
+    minimum: 0
+    maximum: 16
+
+  touchscreen-size-x: true
+  touchscreen-size-y: true
+  touchscreen-fuzz-x: true
+  touchscreen-fuzz-y: true
+  touchscreen-inverted-x: true
+  touchscreen-inverted-y: true
+  touchscreen-swapped-x-y: true
+  interrupt-controller: true
+
+additionalProperties: false
+
+required:
+  - compatible
+  - reg
+  - interrupts
+
+examples:
+  - |
+    #include <dt-bindings/gpio/gpio.h>
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+    i2c {
+      #address-cells = <1>;
+      #size-cells = <0>;
+      touchscreen@1c {
+        compatible = "hycon,hy4633";
+        reg = <0x1c>;
+        interrupt-parent = <&gpio2>;
+        interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
+        reset-gpios = <&gpio2 6 GPIO_ACTIVE_LOW>;
+      };
+    };
+
+...
diff --git a/MAINTAINERS b/MAINTAINERS
index 7fdc513392f4..18a50942c019 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -8250,6 +8250,12 @@  S:	Maintained
 F:	mm/hwpoison-inject.c
 F:	mm/memory-failure.c
 
+HYCON HY46XX TOUCHSCREEN SUPPORT
+M:	Giulio Benetti <giulio.benetti@benettiengineering.com>
+L:	linux-input@vger.kernel.org
+S:	Maintained
+F:	Documentation/devicetree/bindings/input/touchscreen/hycon,hy46xx.yaml
+
 HYGON PROCESSOR SUPPORT
 M:	Pu Wen <puwen@hygon.cn>
 L:	linux-kernel@vger.kernel.org