xref: /OK3568_Linux_fs/kernel/drivers/input/touchscreen/cyttsp5/cyttsp5_platform.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 /*
2  * cyttsp5_platform.h
3  * Parade TrueTouch(TM) Standard Product V5 Platform Module.
4  * For use with Parade touchscreen controllers.
5  * Supported parts include:
6  * CYTMA5XX
7  * CYTMA448
8  * CYTMA445A
9  * CYTT21XXX
10  * CYTT31XXX
11  *
12  * Copyright (C) 2015 Parade Semiconductor
13  * Copyright (C) 2013-2015 Cypress Semiconductor
14  *
15  * This program is free software; you can redistribute it and/or
16  * modify it under the terms of the GNU General Public License
17  * version 2, and only version 2, as published by the
18  * Free Software Foundation.
19  *
20  * This program is distributed in the hope that it will be useful,
21  * but WITHOUT ANY WARRANTY; without even the implied warranty of
22  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
23  * GNU General Public License for more details.
24  *
25  * Contact Parade Semiconductor at www.parade.com <ttdrivers@paradetech.com>
26  *
27  */
28 
29 #ifndef _LINUX_CYTTSP5_PLATFORM_H
30 #define _LINUX_CYTTSP5_PLATFORM_H
31 
32 #include "cyttsp5_core.h"
33 
34 #if defined(CONFIG_TOUCHSCREEN_CYPRESS_CYTTSP5) \
35 	|| defined(CONFIG_TOUCHSCREEN_CYPRESS_CYTTSP5_MODULE)
36 extern struct cyttsp5_loader_platform_data _cyttsp5_loader_platform_data;
37 
38 int cyttsp5_xres(struct cyttsp5_core_platform_data *pdata, struct device *dev);
39 int cyttsp5_init(struct cyttsp5_core_platform_data *pdata, int on,
40 		struct device *dev);
41 int cyttsp5_power(struct cyttsp5_core_platform_data *pdata, int on,
42 		struct device *dev, atomic_t *ignore_irq);
43 #ifdef CYTTSP5_DETECT_HW
44 int cyttsp5_detect(struct cyttsp5_core_platform_data *pdata,
45 		struct device *dev, cyttsp5_platform_read read);
46 #else
47 #define cyttsp5_detect		NULL
48 #endif
49 int cyttsp5_irq_stat(struct cyttsp5_core_platform_data *pdata,
50 		struct device *dev);
51 #else /* !CONFIG_TOUCHSCREEN_CYPRESS_CYTTSP5 */
52 static struct cyttsp5_loader_platform_data _cyttsp5_loader_platform_data;
53 #define cyttsp5_xres		NULL
54 #define cyttsp5_init		NULL
55 #define cyttsp5_power		NULL
56 #define cyttsp5_irq_stat	NULL
57 #define cyttsp5_detect		NULL
58 #endif /* CONFIG_TOUCHSCREEN_CYPRESS_CYTTSP5 */
59 
60 #endif /* _LINUX_CYTTSP5_PLATFORM_H */
61