linux/drivers/input/tablet/wacom_wac.h
<<
>>
Prefs
   1/*
   2 * drivers/input/tablet/wacom_wac.h
   3 *
   4 * This program is free software; you can redistribute it and/or modify
   5 * it under the terms of the GNU General Public License as published by
   6 * the Free Software Foundation; either version 2 of the License, or
   7 * (at your option) any later version.
   8 */
   9#ifndef WACOM_WAC_H
  10#define WACOM_WAC_H
  11
  12#include <linux/types.h>
  13
  14/* maximum packet length for USB devices */
  15#define WACOM_PKGLEN_MAX        32
  16
  17/* packet length for individual models */
  18#define WACOM_PKGLEN_PENPRTN     7
  19#define WACOM_PKGLEN_GRAPHIRE    8
  20#define WACOM_PKGLEN_BBFUN       9
  21#define WACOM_PKGLEN_INTUOS     10
  22#define WACOM_PKGLEN_TPC1FG      5
  23#define WACOM_PKGLEN_TPC2FG     14
  24
  25/* device IDs */
  26#define STYLUS_DEVICE_ID        0x02
  27#define TOUCH_DEVICE_ID         0x03
  28#define CURSOR_DEVICE_ID        0x06
  29#define ERASER_DEVICE_ID        0x0A
  30#define PAD_DEVICE_ID           0x0F
  31
  32/* wacom data packet report IDs */
  33#define WACOM_REPORT_PENABLED           2
  34#define WACOM_REPORT_INTUOSREAD         5
  35#define WACOM_REPORT_INTUOSWRITE        6
  36#define WACOM_REPORT_INTUOSPAD          12
  37#define WACOM_REPORT_TPC1FG             6
  38#define WACOM_REPORT_TPC2FG             13
  39
  40enum {
  41        PENPARTNER = 0,
  42        GRAPHIRE,
  43        WACOM_G4,
  44        PTU,
  45        PL,
  46        INTUOS,
  47        INTUOS3S,
  48        INTUOS3,
  49        INTUOS3L,
  50        INTUOS4S,
  51        INTUOS4,
  52        INTUOS4L,
  53        WACOM_21UX2,
  54        CINTIQ,
  55        WACOM_BEE,
  56        WACOM_MO,
  57        TABLETPC,
  58        TABLETPC2FG,
  59        MAX_TYPE
  60};
  61
  62struct wacom_features {
  63        const char *name;
  64        int pktlen;
  65        int x_max;
  66        int y_max;
  67        int pressure_max;
  68        int distance_max;
  69        int type;
  70        int device_type;
  71        int x_phy;
  72        int y_phy;
  73        unsigned char unit;
  74        unsigned char unitExpo;
  75};
  76
  77struct wacom_shared {
  78        bool stylus_in_proximity;
  79};
  80
  81struct wacom_wac {
  82        char name[64];
  83        unsigned char *data;
  84        int tool[3];
  85        int id[3];
  86        __u32 serial[2];
  87        int last_finger;
  88        struct wacom_features features;
  89        struct wacom_shared *shared;
  90        struct input_dev *input;
  91};
  92
  93#endif
  94
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.