11553Srgrimes# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
21553Srgrimes%YAML 1.2
31553Srgrimes---
41553Srgrimes$id: http://devicetree.org/schemas/input/touchscreen/hycon,hy46xx.yaml#
51553Srgrimes$schema: http://devicetree.org/meta-schemas/core.yaml#
61553Srgrimes
71553Srgrimestitle: Hycon HY46XX series touchscreen controller
81553Srgrimes
91553Srgrimesdescription: |
101553Srgrimes  There are 6 variants of the chip for various touch panel sizes and cover lens material
111553Srgrimes   Glass: 0.3mm--4.0mm
121553Srgrimes    PET/PMMA: 0.2mm--2.0mm
131553Srgrimes    HY4613(B)-N048  < 6"
141553Srgrimes    HY4614(B)-N068  7" .. 10.1"
151553Srgrimes    HY4621-NS32  < 5"
161553Srgrimes    HY4623-NS48  5.1" .. 7"
171553Srgrimes   Glass: 0.3mm--8.0mm
181553Srgrimes    PET/PMMA: 0.2mm--4.0mm
191553Srgrimes    HY4633(B)-N048  < 6"
201553Srgrimes    HY4635(B)-N048  < 7" .. 10.1"
211553Srgrimes
221553Srgrimesmaintainers:
231553Srgrimes  - Giulio Benetti <giulio.benetti@benettiengineering.com>
241553Srgrimes
251553SrgrimesallOf:
261553Srgrimes  - $ref: touchscreen.yaml#
271553Srgrimes
281553Srgrimesproperties:
291553Srgrimes  compatible:
301553Srgrimes    enum:
311553Srgrimes      - hycon,hy4613
321553Srgrimes      - hycon,hy4614
331553Srgrimes      - hycon,hy4621
341553Srgrimes      - hycon,hy4623
351553Srgrimes      - hycon,hy4633
3631492Swollman      - hycon,hy4635
371553Srgrimes
381553Srgrimes  reg:
391553Srgrimes    maxItems: 1
401553Srgrimes
411553Srgrimes  interrupts:
4231492Swollman    maxItems: 1
4315637Sjoerg
4431492Swollman  reset-gpios:
4531492Swollman    maxItems: 1
4650479Speter
471553Srgrimes  vcc-supply: true
481553Srgrimes
491553Srgrimes  hycon,threshold:
501553Srgrimes    description: Allows setting the sensitivity in the range from 0 to 255.
511553Srgrimes    $ref: /schemas/types.yaml#/definitions/uint32
5215637Sjoerg    minimum: 0
531553Srgrimes    maximum: 255
5415637Sjoerg
551553Srgrimes  hycon,glove-enable:
561553Srgrimes    type: boolean
571553Srgrimes    description: Allows enabling glove setting.
581553Srgrimes
591553Srgrimes  hycon,report-speed-hz:
601553Srgrimes    description: Allows setting the report speed in Hertz.
6131492Swollman    minimum: 1
6231492Swollman    maximum: 255
6331492Swollman
6431492Swollman  hycon,noise-filter-enable:
6531492Swollman    type: boolean
661553Srgrimes    description: Allows enabling power noise filter.
671553Srgrimes
6831492Swollman  hycon,filter-data:
691553Srgrimes    description: Allows setting how many samples throw before reporting touch
701553Srgrimes                 in the range from 0 to 5.
7115637Sjoerg    $ref: /schemas/types.yaml#/definitions/uint32
721553Srgrimes    minimum: 0
731553Srgrimes    maximum: 5
741553Srgrimes
751553Srgrimes  hycon,gain:
761553Srgrimes    description: Allows setting the sensitivity distance in the range from 0 to 5.
771553Srgrimes    $ref: /schemas/types.yaml#/definitions/uint32
7827618Simp    minimum: 0
7927618Simp    maximum: 5
8078146Sgad
8178146Sgad  hycon,edge-offset:
8278146Sgad    description: Allows setting the edge compensation in the range from 0 to 16.
831553Srgrimes    $ref: /schemas/types.yaml#/definitions/uint32
841553Srgrimes    minimum: 0
8578146Sgad    maximum: 16
861553Srgrimes
8731492Swollman  touchscreen-size-x: true
8878146Sgad  touchscreen-size-y: true
8931492Swollman  touchscreen-fuzz-x: true
901553Srgrimes  touchscreen-fuzz-y: true
9131492Swollman  touchscreen-inverted-x: true
9227618Simp  touchscreen-inverted-y: true
9327618Simp  touchscreen-swapped-x-y: true
9427618Simp  interrupt-controller: true
9578280Sgad
9678300SgadadditionalProperties: false
9729780Scharnier
981553Srgrimesrequired:
991553Srgrimes  - compatible
10015637Sjoerg  - reg
10124428Simp  - interrupts
1021553Srgrimes
10315637Sjoergexamples:
10415637Sjoerg  - |
10515637Sjoerg    #include <dt-bindings/gpio/gpio.h>
1061553Srgrimes    #include <dt-bindings/interrupt-controller/arm-gic.h>
1071553Srgrimes    i2c {
1081553Srgrimes      #address-cells = <1>;
1091553Srgrimes      #size-cells = <0>;
1101553Srgrimes      touchscreen@1c {
1111553Srgrimes        compatible = "hycon,hy4633";
1121553Srgrimes        reg = <0x1c>;
1131553Srgrimes        interrupt-parent = <&gpio2>;
1141553Srgrimes        interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
1151553Srgrimes        reset-gpios = <&gpio2 6 GPIO_ACTIVE_LOW>;
1161553Srgrimes      };
11715637Sjoerg    };
1181553Srgrimes
1191553Srgrimes...
1201553Srgrimes