summaryrefslogtreecommitdiff
path: root/drivers/input/touchscreen/ist30xxb/ist30xxb_tracking.h
diff options
context:
space:
mode:
authorYuval Adam <_@yuv.al>2017-08-30 08:25:59 +0000
committerYuval Adam <_@yuv.al>2017-08-30 08:25:59 +0000
commit8e4bff4cab0ddac6060645b0715210484d02ff40 (patch)
tree3a5c3024371a04692a3a6d9974d001cdff8ebf84 /drivers/input/touchscreen/ist30xxb/ist30xxb_tracking.h
Initial file dump from open source releaseHEADmaster
Diffstat (limited to 'drivers/input/touchscreen/ist30xxb/ist30xxb_tracking.h')
-rwxr-xr-xdrivers/input/touchscreen/ist30xxb/ist30xxb_tracking.h51
1 files changed, 51 insertions, 0 deletions
diff --git a/drivers/input/touchscreen/ist30xxb/ist30xxb_tracking.h b/drivers/input/touchscreen/ist30xxb/ist30xxb_tracking.h
new file mode 100755
index 00000000..7cfbecfc
--- /dev/null
+++ b/drivers/input/touchscreen/ist30xxb/ist30xxb_tracking.h
@@ -0,0 +1,51 @@
+#ifndef __IST30XX_TRACKING_H__
+#define __IST30XX_TRACKING_H__
+
+
+#define IST30XX_RINGBUF_NO_ERR (0)
+#define IST30XX_RINGBUF_NOT_ENOUGH (1)
+#define IST30XX_RINGBUF_EMPTY (2)
+#define IST30XX_RINGBUF_FULL (3)
+#define IST30XX_RINGBUF_TIMEOUT (4)
+#define IST30XX_RINGBUF_SIZE (1024)
+
+#define TRACK_PWR_OFF (0x0)
+#define TRACK_PWR_ON (0x1)
+#define TRACK_PWR_RESET (0x3)
+#define TRACK_INTR_ENABLE (0x4)
+#define TRACK_INTR_DISABLE (0x5)
+#define TRACK_CMD_SCAN (0x11)
+#define TRACK_CMD_TACON (0x12)
+#define TRACK_CMD_TADISCON (0x13)
+#define TRACK_CMD_FWUPDATE (0x14)
+#define TRACK_CMD_PRUPDATE (0x15)
+#define TRACK_CMD_CALIB (0x16)
+#define TRACK_CMD_CHKSUM (0x17)
+#define TRACK_CMD_CHKSUM_ALL (0x18)
+#define TRACK_POS_FINGER (0x20)
+#define TRACK_POS_KEY (0x30)
+#define TRACK_POS_UNKNOWN (0x3F)
+
+
+typedef struct _IST30XX_RINGBUF {
+ u16 RingBufCtr; // Number of characters in the ring buffer
+ u16 RingBufInIdx;
+ u16 RingBufOutIdx;
+ u32 TimeBuf[IST30XX_RINGBUF_SIZE]; // Ring buffer for time
+ u32 StatusBuf[IST30XX_RINGBUF_SIZE]; // Ring buffer for status
+} IST30XX_RING_BUF;
+
+
+void ist30xx_tracking_init(void);
+void ist30xx_tracking_deinit(void);
+
+int ist30xx_put_track(u32 ms, u32 status);
+int ist30xx_get_track(u32 *ms, u32 *status);
+
+int ist30xx_get_track_cnt(void);
+
+int ist30xx_tracking(u32 status);
+
+int ist30xx_init_tracking_sysfs(void);
+
+#endif // __IST30XX_TRACKING_H__