121 lines
3.3 KiB
YAML
121 lines
3.3 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/input/atmel,maxtouch.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Atmel maXTouch touchscreen/touchpad
|
|
|
|
maintainers:
|
|
- Nick Dyer <nick@shmanahar.org>
|
|
- Linus Walleij <linus.walleij@linaro.org>
|
|
|
|
description: |
|
|
Atmel maXTouch touchscreen or touchpads such as the mXT244
|
|
and similar devices.
|
|
|
|
allOf:
|
|
- $ref: input.yaml#
|
|
|
|
properties:
|
|
compatible:
|
|
const: atmel,maxtouch
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
vdda-supply:
|
|
description:
|
|
Optional regulator for the AVDD analog voltage.
|
|
|
|
vdd-supply:
|
|
description:
|
|
Optional regulator for the VDD digital voltage.
|
|
|
|
reset-gpios:
|
|
maxItems: 1
|
|
description:
|
|
Optional GPIO specifier for the touchscreen's reset pin
|
|
(active low). The line must be flagged with
|
|
GPIO_ACTIVE_LOW.
|
|
|
|
wake-gpios:
|
|
maxItems: 1
|
|
description:
|
|
Optional GPIO specifier for the touchscreen's wake pin
|
|
(active low). The line must be flagged with
|
|
GPIO_ACTIVE_LOW.
|
|
|
|
linux,gpio-keymap:
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
description: |
|
|
When enabled, the SPT_GPIOPWN_T19 object sends messages
|
|
on GPIO bit changes. An array of up to 8 entries can be provided
|
|
indicating the Linux keycode mapped to each bit of the status byte,
|
|
starting at the LSB. Linux keycodes are defined in
|
|
<dt-bindings/input/input.h>.
|
|
|
|
Note: the numbering of the GPIOs and the bit they start at varies
|
|
between maXTouch devices. You must either refer to the documentation,
|
|
or experiment to determine which bit corresponds to which input. Use
|
|
KEY_RESERVED for unused padding values.
|
|
|
|
linux,keycodes:
|
|
minItems: 1
|
|
maxItems: 8
|
|
|
|
atmel,wakeup-method:
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
description: |
|
|
The WAKE line is an active-low input that is used to wake up the touch
|
|
controller from deep-sleep mode before communication with the controller
|
|
could be started. This optional feature used to minimize current
|
|
consumption when the controller is in deep sleep mode. This feature is
|
|
relevant only to some controller families, like mXT1386 controller for
|
|
example.
|
|
|
|
The WAKE pin can be connected in one of the following ways:
|
|
1) left permanently low
|
|
2) connected to the I2C-compatible SCL pin
|
|
3) connected to a GPIO pin on the host
|
|
enum:
|
|
- 0 # ATMEL_MXT_WAKEUP_NONE
|
|
- 1 # ATMEL_MXT_WAKEUP_I2C_SCL
|
|
- 2 # ATMEL_MXT_WAKEUP_GPIO
|
|
default: 0
|
|
|
|
wakeup-source:
|
|
type: boolean
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- interrupts
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/interrupt-controller/irq.h>
|
|
#include <dt-bindings/input/atmel-maxtouch.h>
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
i2c {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
touchscreen@4a {
|
|
compatible = "atmel,maxtouch";
|
|
reg = <0x4a>;
|
|
interrupt-parent = <&gpio>;
|
|
interrupts = <26 IRQ_TYPE_EDGE_FALLING>;
|
|
reset-gpios = <&gpio 27 GPIO_ACTIVE_LOW>;
|
|
vdda-supply = <&ab8500_ldo_aux2_reg>;
|
|
vdd-supply = <&ab8500_ldo_aux5_reg>;
|
|
atmel,wakeup-method = <ATMEL_MXT_WAKEUP_I2C_SCL>;
|
|
};
|
|
};
|
|
|
|
...
|