summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTodd Fischer <todd.fischer@ridgerun.com>2010-04-06 03:53:12 +0400
committerSamuel Ortiz <sameo@linux.intel.com>2010-05-28 03:37:38 +0400
commit752599667048898b6969e06e4637f906b04ec752 (patch)
tree91fd727ff21048eac193a84ff26833ff69647d5d /include
parent31dd6a2672e337f5de188df3e5169ee732798236 (diff)
downloadlinux-752599667048898b6969e06e4637f906b04ec752.tar.xz
input: Touchscreen driver for TPS6507x
Add touch screen input driver for TPS6507x family of multi-function chips. Uses the TPS6507x MFD driver. No interrupt support due to testing limitations of current hardware. Signed-off-by: Todd Fischer <todd.fischer@ridgerun.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/input/tps6507x-ts.h24
-rw-r--r--include/linux/mfd/tps6507x.h2
2 files changed, 26 insertions, 0 deletions
diff --git a/include/linux/input/tps6507x-ts.h b/include/linux/input/tps6507x-ts.h
new file mode 100644
index 000000000000..ab1440313924
--- /dev/null
+++ b/include/linux/input/tps6507x-ts.h
@@ -0,0 +1,24 @@
+/* linux/i2c/tps6507x-ts.h
+ *
+ * Functions to access TPS65070 touch screen chip.
+ *
+ * Copyright (c) 2009 RidgeRun (todd.fischer@ridgerun.com)
+ *
+ *
+ * For licencing details see kernel-base/COPYING
+ */
+
+#ifndef __LINUX_I2C_TPS6507X_TS_H
+#define __LINUX_I2C_TPS6507X_TS_H
+
+/* Board specific touch screen initial values */
+struct touchscreen_init_data {
+ int poll_period; /* ms */
+ int vref; /* non-zero to leave vref on */
+ __u16 min_pressure; /* min reading to be treated as a touch */
+ __u16 vendor;
+ __u16 product;
+ __u16 version;
+};
+
+#endif /* __LINUX_I2C_TPS6507X_TS_H */
diff --git a/include/linux/mfd/tps6507x.h b/include/linux/mfd/tps6507x.h
index 9543cb716428..c923e4864f55 100644
--- a/include/linux/mfd/tps6507x.h
+++ b/include/linux/mfd/tps6507x.h
@@ -142,6 +142,7 @@
struct tps6507x_board {
struct regulator_init_data *tps6507x_pmic_init_data;
+ struct touchscreen_init_data *tps6507x_ts_init_data;
};
/**
@@ -162,6 +163,7 @@ struct tps6507x_dev {
/* Client devices */
struct tps6507x_pmic *pmic;
+ struct tps6507x_ts *ts;
};
#endif /* __LINUX_MFD_TPS6507X_H */