Input: cyapa - introduce device tree binding
Add device tree support for Cypress trackpad devices. Signed-off-by: Dudley Du <dudl@cypress.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
parent
36e9615bd7
commit
ddbb299db0
44
Documentation/devicetree/bindings/input/cypress,cyapa.txt
Normal file
44
Documentation/devicetree/bindings/input/cypress,cyapa.txt
Normal file
@ -0,0 +1,44 @@
|
||||
Cypress I2C Touchpad
|
||||
|
||||
Required properties:
|
||||
- compatible: must be "cypress,cyapa".
|
||||
- reg: I2C address of the chip.
|
||||
- interrupt-parent: a phandle for the interrupt controller (see interrupt
|
||||
binding[0]).
|
||||
- interrupts: interrupt to which the chip is connected (see interrupt
|
||||
binding[0]).
|
||||
|
||||
Optional properties:
|
||||
- wakeup-source: touchpad can be used as a wakeup source.
|
||||
- pinctrl-names: should be "default" (see pinctrl binding [1]).
|
||||
- pinctrl-0: a phandle pointing to the pin settings for the device (see
|
||||
pinctrl binding [1]).
|
||||
- vcc-supply: a phandle for the regulator supplying 3.3V power.
|
||||
|
||||
[0]: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
|
||||
[1]: Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt
|
||||
|
||||
Example:
|
||||
&i2c0 {
|
||||
/* ... */
|
||||
|
||||
/* Cypress Gen3 touchpad */
|
||||
touchpad@67 {
|
||||
compatible = "cypress,cyapa";
|
||||
reg = <0x24>;
|
||||
interrupt-parent = <&gpio>;
|
||||
interrupts = <2 IRQ_TYPE_EDGE_FALLING>; /* GPIO 2 */
|
||||
wakeup-source;
|
||||
};
|
||||
|
||||
/* Cypress Gen5 and later touchpad */
|
||||
touchpad@24 {
|
||||
compatible = "cypress,cyapa";
|
||||
reg = <0x24>;
|
||||
interrupt-parent = <&gpio>;
|
||||
interrupts = <2 IRQ_TYPE_EDGE_FALLING>; /* GPIO 2 */
|
||||
wakeup-source;
|
||||
};
|
||||
|
||||
/* ... */
|
||||
};
|
@ -54,6 +54,7 @@ cortina Cortina Systems, Inc.
|
||||
cosmic Cosmic Circuits
|
||||
crystalfontz Crystalfontz America, Inc.
|
||||
cubietech Cubietech, Ltd.
|
||||
cypress Cypress Semiconductor Corporation
|
||||
dallas Maxim Integrated Products (formerly Dallas Semiconductor)
|
||||
davicom DAVICOM Semiconductor, Inc.
|
||||
delta Delta Electronics, Inc.
|
||||
|
@ -26,6 +26,7 @@
|
||||
#include <linux/uaccess.h>
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/acpi.h>
|
||||
#include <linux/of.h>
|
||||
#include "cyapa.h"
|
||||
|
||||
|
||||
@ -1487,11 +1488,20 @@ static const struct acpi_device_id cyapa_acpi_id[] = {
|
||||
MODULE_DEVICE_TABLE(acpi, cyapa_acpi_id);
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_OF
|
||||
static const struct of_device_id cyapa_of_match[] = {
|
||||
{ .compatible = "cypress,cyapa" },
|
||||
{ /* sentinel */ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, cyapa_of_match);
|
||||
#endif
|
||||
|
||||
static struct i2c_driver cyapa_driver = {
|
||||
.driver = {
|
||||
.name = "cyapa",
|
||||
.pm = &cyapa_pm_ops,
|
||||
.acpi_match_table = ACPI_PTR(cyapa_acpi_id),
|
||||
.of_match_table = of_match_ptr(cyapa_of_match),
|
||||
},
|
||||
|
||||
.probe = cyapa_probe,
|
||||
|
Loading…
Reference in New Issue
Block a user