提交 ddbb299d 编写于 作者: D Dudley Du 提交者: Dmitry Torokhov

Input: cyapa - introduce device tree binding

Add device tree support for  Cypress trackpad devices.
Signed-off-by: NDudley Du <dudl@cypress.com>
Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
上级 36e9615b
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. ...@@ -54,6 +54,7 @@ cortina Cortina Systems, Inc.
cosmic Cosmic Circuits cosmic Cosmic Circuits
crystalfontz Crystalfontz America, Inc. crystalfontz Crystalfontz America, Inc.
cubietech Cubietech, Ltd. cubietech Cubietech, Ltd.
cypress Cypress Semiconductor Corporation
dallas Maxim Integrated Products (formerly Dallas Semiconductor) dallas Maxim Integrated Products (formerly Dallas Semiconductor)
davicom DAVICOM Semiconductor, Inc. davicom DAVICOM Semiconductor, Inc.
delta Delta Electronics, Inc. delta Delta Electronics, Inc.
......
...@@ -26,6 +26,7 @@ ...@@ -26,6 +26,7 @@
#include <linux/uaccess.h> #include <linux/uaccess.h>
#include <linux/pm_runtime.h> #include <linux/pm_runtime.h>
#include <linux/acpi.h> #include <linux/acpi.h>
#include <linux/of.h>
#include "cyapa.h" #include "cyapa.h"
...@@ -1487,11 +1488,20 @@ static const struct acpi_device_id cyapa_acpi_id[] = { ...@@ -1487,11 +1488,20 @@ static const struct acpi_device_id cyapa_acpi_id[] = {
MODULE_DEVICE_TABLE(acpi, cyapa_acpi_id); MODULE_DEVICE_TABLE(acpi, cyapa_acpi_id);
#endif #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 = { static struct i2c_driver cyapa_driver = {
.driver = { .driver = {
.name = "cyapa", .name = "cyapa",
.pm = &cyapa_pm_ops, .pm = &cyapa_pm_ops,
.acpi_match_table = ACPI_PTR(cyapa_acpi_id), .acpi_match_table = ACPI_PTR(cyapa_acpi_id),
.of_match_table = of_match_ptr(cyapa_of_match),
}, },
.probe = cyapa_probe, .probe = cyapa_probe,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册