xref: /freebsd/sys/contrib/device-tree/Bindings/input/touchscreen/cypress,tt21000.yaml (revision 84943d6f38e936ac3b7a3947ca26eeb27a39f938)
18bab661aSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
28bab661aSEmmanuel Vadot%YAML 1.2
38bab661aSEmmanuel Vadot---
48bab661aSEmmanuel Vadot$id: http://devicetree.org/schemas/input/touchscreen/cypress,tt21000.yaml#
58bab661aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
68bab661aSEmmanuel Vadot
78bab661aSEmmanuel Vadottitle: Cypress TT21000 touchscreen controller
88bab661aSEmmanuel Vadot
98bab661aSEmmanuel Vadotdescription: The Cypress TT21000 series (also known as "CYTTSP5" after
108bab661aSEmmanuel Vadot  the marketing name Cypress TrueTouch Standard Product series 5).
118bab661aSEmmanuel Vadot
128bab661aSEmmanuel Vadotmaintainers:
138bab661aSEmmanuel Vadot  - Alistair Francis <alistair@alistair23.me>
148bab661aSEmmanuel Vadot
158bab661aSEmmanuel VadotallOf:
168bab661aSEmmanuel Vadot  - $ref: touchscreen.yaml#
178bab661aSEmmanuel Vadot
188bab661aSEmmanuel Vadotproperties:
198bab661aSEmmanuel Vadot  compatible:
208bab661aSEmmanuel Vadot    const: cypress,tt21000
218bab661aSEmmanuel Vadot
228bab661aSEmmanuel Vadot  reg:
238bab661aSEmmanuel Vadot    maxItems: 1
248bab661aSEmmanuel Vadot
258bab661aSEmmanuel Vadot  '#address-cells':
268bab661aSEmmanuel Vadot    const: 1
278bab661aSEmmanuel Vadot
288bab661aSEmmanuel Vadot  '#size-cells':
298bab661aSEmmanuel Vadot    const: 0
308bab661aSEmmanuel Vadot
318bab661aSEmmanuel Vadot  interrupts:
328bab661aSEmmanuel Vadot    maxItems: 1
338bab661aSEmmanuel Vadot
348bab661aSEmmanuel Vadot  vdd-supply:
358bab661aSEmmanuel Vadot    description: Regulator for voltage.
368bab661aSEmmanuel Vadot
37*84943d6fSEmmanuel Vadot  vddio-supply:
38*84943d6fSEmmanuel Vadot    description: Optional Regulator for I/O voltage.
39*84943d6fSEmmanuel Vadot
408bab661aSEmmanuel Vadot  reset-gpios:
418bab661aSEmmanuel Vadot    maxItems: 1
428bab661aSEmmanuel Vadot
438bab661aSEmmanuel Vadot  linux,keycodes:
448bab661aSEmmanuel Vadot    description: EV_ABS specific event code generated by the axis.
458bab661aSEmmanuel Vadot
46f126890aSEmmanuel Vadot  wakeup-source: true
47f126890aSEmmanuel Vadot
488bab661aSEmmanuel VadotpatternProperties:
498bab661aSEmmanuel Vadot  "^button@[0-9]+$":
508bab661aSEmmanuel Vadot    type: object
518bab661aSEmmanuel Vadot    $ref: ../input.yaml#
528bab661aSEmmanuel Vadot    properties:
538bab661aSEmmanuel Vadot      reg:
548bab661aSEmmanuel Vadot        maxItems: 1
558bab661aSEmmanuel Vadot      linux,keycodes:
568bab661aSEmmanuel Vadot        description: Keycode to emit
578bab661aSEmmanuel Vadot
588bab661aSEmmanuel Vadot    required:
598bab661aSEmmanuel Vadot      - reg
608bab661aSEmmanuel Vadot      - linux,keycodes
618bab661aSEmmanuel Vadot
628bab661aSEmmanuel Vadot    additionalProperties: false
638bab661aSEmmanuel Vadot
648bab661aSEmmanuel Vadotrequired:
658bab661aSEmmanuel Vadot  - compatible
668bab661aSEmmanuel Vadot  - reg
678bab661aSEmmanuel Vadot  - interrupts
688bab661aSEmmanuel Vadot  - vdd-supply
698bab661aSEmmanuel Vadot
708bab661aSEmmanuel VadotunevaluatedProperties: false
718bab661aSEmmanuel Vadot
728bab661aSEmmanuel Vadotexamples:
738bab661aSEmmanuel Vadot  - |
748bab661aSEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
758bab661aSEmmanuel Vadot    #include <dt-bindings/gpio/gpio.h>
768bab661aSEmmanuel Vadot    #include <dt-bindings/input/linux-event-codes.h>
778bab661aSEmmanuel Vadot
788bab661aSEmmanuel Vadot    i2c {
798bab661aSEmmanuel Vadot        #address-cells = <1>;
808bab661aSEmmanuel Vadot        #size-cells = <0>;
818bab661aSEmmanuel Vadot
828bab661aSEmmanuel Vadot        touchscreen@24 {
838bab661aSEmmanuel Vadot            #address-cells = <1>;
848bab661aSEmmanuel Vadot            #size-cells = <0>;
858bab661aSEmmanuel Vadot
868bab661aSEmmanuel Vadot            compatible = "cypress,tt21000";
878bab661aSEmmanuel Vadot            reg = <0x24>;
888bab661aSEmmanuel Vadot            pinctrl-names = "default";
898bab661aSEmmanuel Vadot            pinctrl-0 = <&tp_reset_ds203>;
908bab661aSEmmanuel Vadot            interrupt-parent = <&pio>;
918bab661aSEmmanuel Vadot            interrupts = <1 5 IRQ_TYPE_LEVEL_LOW>;
928bab661aSEmmanuel Vadot            reset-gpios = <&pio 7 1 GPIO_ACTIVE_LOW>;
938bab661aSEmmanuel Vadot            vdd-supply = <&reg_touch>;
948bab661aSEmmanuel Vadot
958bab661aSEmmanuel Vadot            button@0 {
968bab661aSEmmanuel Vadot                reg = <0>;
978bab661aSEmmanuel Vadot                linux,keycodes = <KEY_HOMEPAGE>;
988bab661aSEmmanuel Vadot            };
998bab661aSEmmanuel Vadot
1008bab661aSEmmanuel Vadot            button@1 {
1018bab661aSEmmanuel Vadot                reg = <1>;
1028bab661aSEmmanuel Vadot                linux,keycodes = <KEY_MENU>;
1038bab661aSEmmanuel Vadot            };
1048bab661aSEmmanuel Vadot
1058bab661aSEmmanuel Vadot            button@2 {
1068bab661aSEmmanuel Vadot                reg = <2>;
1078bab661aSEmmanuel Vadot                linux,keycodes = <KEY_BACK>;
1088bab661aSEmmanuel Vadot            };
1098bab661aSEmmanuel Vadot        };
1108bab661aSEmmanuel Vadot    };
1118bab661aSEmmanuel Vadot...
112