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