Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * Goodix Touchscreen Driver
4 * Copyright (C) 2020 - 2021 Goodix, Inc.
5 * Copyright (C) 2023 Linaro Ltd.
6 *
7 * Based on goodix_berlin_berlin driver.
8 */
9
10#ifndef __GOODIX_BERLIN_H_
11#define __GOODIX_BERLIN_H_
12
13#include <linux/pm.h>
14
15#define GOODIX_BERLIN_FW_VERSION_INFO_ADDR_A 0x1000C
16#define GOODIX_BERLIN_FW_VERSION_INFO_ADDR_D 0x10014
17
18#define GOODIX_BERLIN_IC_INFO_ADDR_A 0x10068
19#define GOODIX_BERLIN_IC_INFO_ADDR_D 0x10070
20
21struct goodix_berlin_ic_data {
22 int fw_version_info_addr;
23 int ic_info_addr;
24 ssize_t read_dummy_len;
25 ssize_t read_prefix_len;
26};
27
28struct device;
29struct input_id;
30struct regmap;
31
32int goodix_berlin_probe(struct device *dev, int irq, const struct input_id *id,
33 struct regmap *regmap,
34 const struct goodix_berlin_ic_data *ic_data);
35
36extern const struct dev_pm_ops goodix_berlin_pm_ops;
37extern const struct attribute_group *goodix_berlin_groups[];
38
39#endif