tsc2xxx.h (1200B)
1/* 2 * TI touchscreen controller 3 * 4 * Copyright (c) 2006 Andrzej Zaborowski 5 * Copyright (C) 2008 Nokia Corporation 6 * 7 * This work is licensed under the terms of the GNU GPL, version 2 or later. 8 * See the COPYING file in the top-level directory. 9 */ 10 11#ifndef HW_INPUT_TSC2XXX_H 12#define HW_INPUT_TSC2XXX_H 13 14typedef struct MouseTransformInfo { 15 /* Touchscreen resolution */ 16 int x; 17 int y; 18 /* Calibration values as used/generated by tslib */ 19 int a[7]; 20} MouseTransformInfo; 21 22typedef struct uWireSlave { 23 uint16_t (*receive)(void *opaque); 24 void (*send)(void *opaque, uint16_t data); 25 void *opaque; 26} uWireSlave; 27 28/* tsc210x.c */ 29uWireSlave *tsc2102_init(qemu_irq pint); 30uWireSlave *tsc2301_init(qemu_irq penirq, qemu_irq kbirq, qemu_irq dav); 31I2SCodec *tsc210x_codec(uWireSlave *chip); 32uint32_t tsc210x_txrx(void *opaque, uint32_t value, int len); 33void tsc210x_set_transform(uWireSlave *chip, MouseTransformInfo *info); 34void tsc210x_key_event(uWireSlave *chip, int key, int down); 35 36/* tsc2005.c */ 37void *tsc2005_init(qemu_irq pintdav); 38uint32_t tsc2005_txrx(void *opaque, uint32_t value, int len); 39void tsc2005_set_transform(void *opaque, MouseTransformInfo *info); 40 41#endif