Input: atmel_mxt_ts: Atmel customizations to touch.
[linux-2.6.git] / include / linux / i2c / atmel_mxt_ts.h
1 /*
2  * Atmel maXTouch Touchscreen driver
3  *
4  * Copyright (C) 2010 Samsung Electronics Co.Ltd
5  * Copyright (C) 2011 Atmel Corporation
6  * Author: Joonyoung Shim <jy0922.shim@samsung.com>
7  *
8  * This program is free software; you can redistribute  it and/or modify it
9  * under  the terms of  the GNU General  Public License as published by the
10  * Free Software Foundation;  either version 2 of the  License, or (at your
11  * option) any later version.
12  */
13
14 #ifndef __LINUX_ATMEL_MXT_TS_H
15 #define __LINUX_ATMEL_MXT_TS_H
16
17 #include <linux/types.h>
18
19 /* Orient */
20 #define MXT_NORMAL              0x0
21 #define MXT_DIAGONAL            0x1
22 #define MXT_HORIZONTAL_FLIP     0x2
23 #define MXT_ROTATED_90_COUNTER  0x3
24 #define MXT_VERTICAL_FLIP       0x4
25 #define MXT_ROTATED_90          0x5
26 #define MXT_ROTATED_180         0x6
27 #define MXT_DIAGONAL_COUNTER    0x7
28
29 /* The platform data for the Atmel maXTouch touchscreen driver */
30 struct mxt_platform_data {
31         const u8 *config;
32         size_t config_length;
33
34         unsigned int x_line;
35         unsigned int y_line;
36         unsigned int x_size;
37         unsigned int y_size;
38         unsigned int blen;
39         unsigned int threshold;
40         unsigned int voltage;
41         unsigned char orient;
42         unsigned long irqflags;
43         u8(*read_chg) (void);
44         unsigned long config_crc;
45 };
46
47 #endif /* __LINUX_ATMEL_MXT_TS_H */