cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

cyttsp4.h (1627B)


      1/* SPDX-License-Identifier: GPL-2.0-only */
      2/*
      3 * Header file for:
      4 * Cypress TrueTouch(TM) Standard Product (TTSP) touchscreen drivers.
      5 * For use with Cypress Txx3xx parts.
      6 * Supported parts include:
      7 * CY8CTST341
      8 * CY8CTMA340
      9 *
     10 * Copyright (C) 2009, 2010, 2011 Cypress Semiconductor, Inc.
     11 * Copyright (C) 2012 Javier Martinez Canillas <javier@dowhile0.org>
     12 *
     13 * Contact Cypress Semiconductor at www.cypress.com (kev@cypress.com)
     14 */
     15#ifndef _CYTTSP4_H_
     16#define _CYTTSP4_H_
     17
     18#define CYTTSP4_MT_NAME "cyttsp4_mt"
     19#define CYTTSP4_I2C_NAME "cyttsp4_i2c_adapter"
     20#define CYTTSP4_SPI_NAME "cyttsp4_spi_adapter"
     21
     22#define CY_TOUCH_SETTINGS_MAX 32
     23
     24struct touch_framework {
     25	const uint16_t  *abs;
     26	uint8_t         size;
     27	uint8_t         enable_vkeys;
     28} __packed;
     29
     30struct cyttsp4_mt_platform_data {
     31	struct touch_framework *frmwrk;
     32	unsigned short flags;
     33	char const *inp_dev_name;
     34};
     35
     36struct touch_settings {
     37	const uint8_t *data;
     38	uint32_t size;
     39	uint8_t tag;
     40} __packed;
     41
     42struct cyttsp4_core_platform_data {
     43	int irq_gpio;
     44	int rst_gpio;
     45	int level_irq_udelay;
     46	int (*xres)(struct cyttsp4_core_platform_data *pdata,
     47		struct device *dev);
     48	int (*init)(struct cyttsp4_core_platform_data *pdata,
     49		int on, struct device *dev);
     50	int (*power)(struct cyttsp4_core_platform_data *pdata,
     51		int on, struct device *dev, atomic_t *ignore_irq);
     52	int (*irq_stat)(struct cyttsp4_core_platform_data *pdata,
     53		struct device *dev);
     54	struct touch_settings *sett[CY_TOUCH_SETTINGS_MAX];
     55};
     56
     57struct cyttsp4_platform_data {
     58	struct cyttsp4_core_platform_data *core_pdata;
     59	struct cyttsp4_mt_platform_data *mt_pdata;
     60};
     61
     62#endif /* _CYTTSP4_H_ */