| # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | |
| %YAML 1.2 | |
| --- | |
| $id: http://devicetree.org/schemas/input/touchscreen/imagis,ist3038c.yaml# | |
| $schema: http://devicetree.org/meta-schemas/core.yaml# | |
| title: Imagis IST30XXC family touchscreen controller | |
| maintainers: | |
| - Markuss Broks <markuss.broks@gmail.com> | |
| properties: | |
| $nodename: | |
| pattern: "^touchscreen@[0-9a-f]+$" | |
| compatible: | |
| enum: | |
| - imagis,ist3032c | |
| - imagis,ist3038 | |
| - imagis,ist3038b | |
| - imagis,ist3038c | |
| - imagis,ist3038h | |
| reg: | |
| maxItems: 1 | |
| interrupts: | |
| maxItems: 1 | |
| vdd-supply: | |
| description: Power supply regulator for the chip | |
| vddio-supply: | |
| description: Power supply regulator for the I2C bus | |
| linux,keycodes: | |
| description: Keycodes for the touch keys | |
| minItems: 2 | |
| maxItems: 5 | |
| 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 | |
| additionalProperties: false | |
| allOf: | |
| - $ref: touchscreen.yaml# | |
| - if: | |
| not: | |
| properties: | |
| compatible: | |
| contains: | |
| enum: | |
| - imagis,ist3032c | |
| - imagis,ist3038 | |
| then: | |
| properties: | |
| linux,keycodes: false | |
| required: | |
| - compatible | |
| - reg | |
| - interrupts | |
| - touchscreen-size-x | |
| - touchscreen-size-y | |
| examples: | |
| - | | |
| #include <dt-bindings/interrupt-controller/irq.h> | |
| i2c { | |
| #address-cells = <1>; | |
| #size-cells = <0>; | |
| touchscreen@50 { | |
| compatible = "imagis,ist3038c"; | |
| reg = <0x50>; | |
| interrupt-parent = <&gpio>; | |
| interrupts = <13 IRQ_TYPE_EDGE_FALLING>; | |
| vdd-supply = <&ldo1_reg>; | |
| vddio-supply = <&ldo2_reg>; | |
| touchscreen-size-x = <720>; | |
| touchscreen-size-y = <1280>; | |
| touchscreen-fuzz-x = <10>; | |
| touchscreen-fuzz-y = <10>; | |
| touchscreen-inverted-x; | |
| touchscreen-inverted-y; | |
| }; | |
| }; | |
| - | | |
| #include <dt-bindings/input/linux-event-codes.h> | |
| #include <dt-bindings/interrupt-controller/irq.h> | |
| i2c { | |
| #address-cells = <1>; | |
| #size-cells = <0>; | |
| touchscreen@50 { | |
| compatible = "imagis,ist3032c"; | |
| reg = <0x50>; | |
| interrupt-parent = <&gpio>; | |
| interrupts = <72 IRQ_TYPE_EDGE_FALLING>; | |
| vdd-supply = <&ldo2>; | |
| touchscreen-size-x = <480>; | |
| touchscreen-size-y = <800>; | |
| linux,keycodes = <KEY_APPSELECT>, <KEY_BACK>; | |
| }; | |
| }; | |
| ... |