blob: fe66e2b58f62d8881777df0b02f84e8a42e183b0 [file] [log] [blame]
David Brazdil0f672f62019-12-10 10:32:29 +00001/* SPDX-License-Identifier: GPL-2.0-only */
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00002/*
3 * Copyright (c) 2014 Sebastian Reichel <sre@kernel.org>
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00004 */
5
6#ifndef _TOUCHSCREEN_H
7#define _TOUCHSCREEN_H
8
9struct input_dev;
10struct input_mt_pos;
11
12struct touchscreen_properties {
13 unsigned int max_x;
14 unsigned int max_y;
15 bool invert_x;
16 bool invert_y;
17 bool swap_x_y;
18};
19
20void touchscreen_parse_properties(struct input_dev *input, bool multitouch,
21 struct touchscreen_properties *prop);
22
23void touchscreen_set_mt_pos(struct input_mt_pos *pos,
24 const struct touchscreen_properties *prop,
25 unsigned int x, unsigned int y);
26
27void touchscreen_report_pos(struct input_dev *input,
28 const struct touchscreen_properties *prop,
29 unsigned int x, unsigned int y,
30 bool multitouch);
31
32#endif