77 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/input/touchscreen/ti,am3359-tsc.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: TI AM3359 Touchscreen controller8 9maintainers:10 - Miquel Raynal <miquel.raynal@bootlin.com>11 12properties:13 compatible:14 const: ti,am3359-tsc15 16 ti,wires:17 description: Wires refer to application modes i.e. 4/5/8 wire touchscreen18 support on the platform.19 $ref: /schemas/types.yaml#/definitions/uint3220 enum: [4, 5, 8]21 22 ti,x-plate-resistance:23 description: X plate resistance24 $ref: /schemas/types.yaml#/definitions/uint3225 26 ti,coordinate-readouts:27 description: The sequencer supports a total of 16 programmable steps. Each28 step is used to read a single coordinate. A single readout is enough but29 multiple reads can increase the quality. A value of 5 means, 5 reads for30 X, 5 for Y and 2 for Z (always). This utilises 12 of the 16 software steps31 available. The remaining 4 can be used by the ADC.32 $ref: /schemas/types.yaml#/definitions/uint3233 minimum: 134 maximum: 635 36 ti,wire-config:37 description: Different boards could have a different order for connecting38 wires on touchscreen. We need to provide an 8-bit number where the39 first four bits represent the analog lines and the next 4 bits represent40 positive/negative terminal on that input line. Notations to represent the41 input lines and terminals respectively are as follows, AIN0 = 0, AIN1 = 142 and so on until AIN7 = 7. XP = 0, XN = 1, YP = 2, YN = 3.43 $ref: /schemas/types.yaml#/definitions/uint32-array44 minItems: 445 maxItems: 846 47 ti,charge-delay:48 description: Length of touch screen charge delay step in terms of ADC clock49 cycles. Charge delay value should be large in order to avoid false pen-up50 events. This value effects the overall sampling speed, hence need to be51 kept as low as possible, while avoiding false pen-up event. Start from a52 lower value, say 0x400, and increase value until false pen-up events are53 avoided. The pen-up detection happens immediately after the charge step,54 so this does in fact function as a hardware knob for adjusting the amount55 of "settling time".56 $ref: /schemas/types.yaml#/definitions/uint3257 58required:59 - compatible60 - ti,wires61 - ti,x-plate-resistance62 - ti,coordinate-readouts63 - ti,wire-config64 65additionalProperties: false66 67examples:68 - |69 tsc {70 compatible = "ti,am3359-tsc";71 ti,wires = <4>;72 ti,x-plate-resistance = <200>;73 ti,coordinate-readouts = <5>;74 ti,wire-config = <0x00 0x11 0x22 0x33>;75 ti,charge-delay = <0x400>;76 };77