Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
aiptek.c File Reference
#include <linux/jiffies.h>
#include <linux/kernel.h>
#include <linux/slab.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/usb/input.h>
#include <asm/uaccess.h>
#include <asm/unaligned.h>

Go to the source code of this file.

Data Structures

struct  aiptek_features
 
struct  aiptek_settings
 
struct  aiptek
 
struct  aiptek_map
 

Macros

#define DRIVER_VERSION   "v2.3 (May 2, 2007)"
 
#define DRIVER_AUTHOR   "Bryan W. Headley/Chris Atenasio/Cedric Brun/Rene van Paassen"
 
#define DRIVER_DESC   "Aiptek HyperPen USB Tablet Driver (Linux 2.6.x)"
 
#define USB_VENDOR_ID_AIPTEK   0x08ca
 
#define USB_VENDOR_ID_KYE   0x0458
 
#define USB_REQ_GET_REPORT   0x01
 
#define USB_REQ_SET_REPORT   0x09
 
#define AIPTEK_POINTER_ONLY_MOUSE_MODE   0
 
#define AIPTEK_POINTER_ONLY_STYLUS_MODE   1
 
#define AIPTEK_POINTER_EITHER_MODE   2
 
#define AIPTEK_POINTER_ALLOW_MOUSE_MODE(a)
 
#define AIPTEK_POINTER_ALLOW_STYLUS_MODE(a)
 
#define AIPTEK_COORDINATE_RELATIVE_MODE   0
 
#define AIPTEK_COORDINATE_ABSOLUTE_MODE   1
 
#define AIPTEK_TILT_MIN   (-128)
 
#define AIPTEK_TILT_MAX   127
 
#define AIPTEK_TILT_DISABLE   (-10101)
 
#define AIPTEK_WHEEL_MIN   0
 
#define AIPTEK_WHEEL_MAX   1024
 
#define AIPTEK_WHEEL_DISABLE   (-10101)
 
#define AIPTEK_TOOL_BUTTON_PEN_MODE   BTN_TOOL_PEN
 
#define AIPTEK_TOOL_BUTTON_PENCIL_MODE   BTN_TOOL_PENCIL
 
#define AIPTEK_TOOL_BUTTON_BRUSH_MODE   BTN_TOOL_BRUSH
 
#define AIPTEK_TOOL_BUTTON_AIRBRUSH_MODE   BTN_TOOL_AIRBRUSH
 
#define AIPTEK_TOOL_BUTTON_ERASER_MODE   BTN_TOOL_RUBBER
 
#define AIPTEK_TOOL_BUTTON_MOUSE_MODE   BTN_TOOL_MOUSE
 
#define AIPTEK_TOOL_BUTTON_LENS_MODE   BTN_TOOL_LENS
 
#define AIPTEK_DIAGNOSTIC_NA   0
 
#define AIPTEK_DIAGNOSTIC_SENDING_RELATIVE_IN_ABSOLUTE   1
 
#define AIPTEK_DIAGNOSTIC_SENDING_ABSOLUTE_IN_RELATIVE   2
 
#define AIPTEK_DIAGNOSTIC_TOOL_DISALLOWED   3
 
#define AIPTEK_JITTER_DELAY_DEFAULT   50
 
#define AIPTEK_PROGRAMMABLE_DELAY_25   25
 
#define AIPTEK_PROGRAMMABLE_DELAY_50   50
 
#define AIPTEK_PROGRAMMABLE_DELAY_100   100
 
#define AIPTEK_PROGRAMMABLE_DELAY_200   200
 
#define AIPTEK_PROGRAMMABLE_DELAY_300   300
 
#define AIPTEK_PROGRAMMABLE_DELAY_400   400
 
#define AIPTEK_PROGRAMMABLE_DELAY_DEFAULT   AIPTEK_PROGRAMMABLE_DELAY_400
 
#define AIPTEK_MOUSE_LEFT_BUTTON   0x04
 
#define AIPTEK_MOUSE_RIGHT_BUTTON   0x08
 
#define AIPTEK_MOUSE_MIDDLE_BUTTON   0x10
 
#define AIPTEK_STYLUS_LOWER_BUTTON   0x08
 
#define AIPTEK_STYLUS_UPPER_BUTTON   0x10
 
#define AIPTEK_PACKET_LENGTH   8
 
#define AIPTEK_REPORT_TOOL_UNKNOWN   0x10
 
#define AIPTEK_REPORT_TOOL_STYLUS   0x20
 
#define AIPTEK_REPORT_TOOL_MOUSE   0x40
 
#define AIPTEK_INVALID_VALUE   -1
 

Functions

 MODULE_DEVICE_TABLE (usb, aiptek_ids)
 
 module_usb_driver (aiptek_driver)
 
 MODULE_AUTHOR (DRIVER_AUTHOR)
 
 MODULE_DESCRIPTION (DRIVER_DESC)
 
 MODULE_LICENSE ("GPL")
 
 module_param (programmableDelay, int, 0)
 
 MODULE_PARM_DESC (programmableDelay,"delay used during tablet programming")
 
 module_param (jitterDelay, int, 0)
 
 MODULE_PARM_DESC (jitterDelay,"stylus/mouse settlement delay")
 

Macro Definition Documentation

#define AIPTEK_COORDINATE_ABSOLUTE_MODE   1

Definition at line 207 of file aiptek.c.

#define AIPTEK_COORDINATE_RELATIVE_MODE   0

Definition at line 206 of file aiptek.c.

#define AIPTEK_DIAGNOSTIC_NA   0

Definition at line 237 of file aiptek.c.

#define AIPTEK_DIAGNOSTIC_SENDING_ABSOLUTE_IN_RELATIVE   2

Definition at line 239 of file aiptek.c.

#define AIPTEK_DIAGNOSTIC_SENDING_RELATIVE_IN_ABSOLUTE   1

Definition at line 238 of file aiptek.c.

#define AIPTEK_DIAGNOSTIC_TOOL_DISALLOWED   3

Definition at line 240 of file aiptek.c.

#define AIPTEK_INVALID_VALUE   -1

Definition at line 368 of file aiptek.c.

#define AIPTEK_JITTER_DELAY_DEFAULT   50

Definition at line 245 of file aiptek.c.

#define AIPTEK_MOUSE_LEFT_BUTTON   0x04

Definition at line 261 of file aiptek.c.

#define AIPTEK_MOUSE_MIDDLE_BUTTON   0x10

Definition at line 263 of file aiptek.c.

#define AIPTEK_MOUSE_RIGHT_BUTTON   0x08

Definition at line 262 of file aiptek.c.

#define AIPTEK_PACKET_LENGTH   8

Definition at line 272 of file aiptek.c.

#define AIPTEK_POINTER_ALLOW_MOUSE_MODE (   a)
Value:

Definition at line 197 of file aiptek.c.

#define AIPTEK_POINTER_ALLOW_STYLUS_MODE (   a)
Value:

Definition at line 200 of file aiptek.c.

#define AIPTEK_POINTER_EITHER_MODE   2

Definition at line 195 of file aiptek.c.

#define AIPTEK_POINTER_ONLY_MOUSE_MODE   0

Definition at line 193 of file aiptek.c.

#define AIPTEK_POINTER_ONLY_STYLUS_MODE   1

Definition at line 194 of file aiptek.c.

#define AIPTEK_PROGRAMMABLE_DELAY_100   100

Definition at line 253 of file aiptek.c.

#define AIPTEK_PROGRAMMABLE_DELAY_200   200

Definition at line 254 of file aiptek.c.

#define AIPTEK_PROGRAMMABLE_DELAY_25   25

Definition at line 251 of file aiptek.c.

#define AIPTEK_PROGRAMMABLE_DELAY_300   300

Definition at line 255 of file aiptek.c.

#define AIPTEK_PROGRAMMABLE_DELAY_400   400

Definition at line 256 of file aiptek.c.

#define AIPTEK_PROGRAMMABLE_DELAY_50   50

Definition at line 252 of file aiptek.c.

#define AIPTEK_PROGRAMMABLE_DELAY_DEFAULT   AIPTEK_PROGRAMMABLE_DELAY_400

Definition at line 257 of file aiptek.c.

#define AIPTEK_REPORT_TOOL_MOUSE   0x40

Definition at line 281 of file aiptek.c.

#define AIPTEK_REPORT_TOOL_STYLUS   0x20

Definition at line 280 of file aiptek.c.

#define AIPTEK_REPORT_TOOL_UNKNOWN   0x10

Definition at line 279 of file aiptek.c.

#define AIPTEK_STYLUS_LOWER_BUTTON   0x08

Definition at line 267 of file aiptek.c.

#define AIPTEK_STYLUS_UPPER_BUTTON   0x10

Definition at line 268 of file aiptek.c.

#define AIPTEK_TILT_DISABLE   (-10101)

Definition at line 213 of file aiptek.c.

#define AIPTEK_TILT_MAX   127

Definition at line 212 of file aiptek.c.

#define AIPTEK_TILT_MIN   (-128)

Definition at line 211 of file aiptek.c.

#define AIPTEK_TOOL_BUTTON_AIRBRUSH_MODE   BTN_TOOL_AIRBRUSH

Definition at line 230 of file aiptek.c.

#define AIPTEK_TOOL_BUTTON_BRUSH_MODE   BTN_TOOL_BRUSH

Definition at line 229 of file aiptek.c.

#define AIPTEK_TOOL_BUTTON_ERASER_MODE   BTN_TOOL_RUBBER

Definition at line 231 of file aiptek.c.

#define AIPTEK_TOOL_BUTTON_LENS_MODE   BTN_TOOL_LENS

Definition at line 233 of file aiptek.c.

#define AIPTEK_TOOL_BUTTON_MOUSE_MODE   BTN_TOOL_MOUSE

Definition at line 232 of file aiptek.c.

#define AIPTEK_TOOL_BUTTON_PEN_MODE   BTN_TOOL_PEN

Definition at line 227 of file aiptek.c.

#define AIPTEK_TOOL_BUTTON_PENCIL_MODE   BTN_TOOL_PENCIL

Definition at line 228 of file aiptek.c.

#define AIPTEK_WHEEL_DISABLE   (-10101)

Definition at line 219 of file aiptek.c.

#define AIPTEK_WHEEL_MAX   1024

Definition at line 218 of file aiptek.c.

#define AIPTEK_WHEEL_MIN   0

Definition at line 217 of file aiptek.c.

#define DRIVER_AUTHOR   "Bryan W. Headley/Chris Atenasio/Cedric Brun/Rene van Paassen"

Definition at line 86 of file aiptek.c.

#define DRIVER_DESC   "Aiptek HyperPen USB Tablet Driver (Linux 2.6.x)"

Definition at line 87 of file aiptek.c.

#define DRIVER_VERSION   "v2.3 (May 2, 2007)"

Definition at line 85 of file aiptek.c.

#define USB_REQ_GET_REPORT   0x01

Definition at line 188 of file aiptek.c.

#define USB_REQ_SET_REPORT   0x09

Definition at line 189 of file aiptek.c.

#define USB_VENDOR_ID_AIPTEK   0x08ca

Definition at line 186 of file aiptek.c.

#define USB_VENDOR_ID_KYE   0x0458

Definition at line 187 of file aiptek.c.

Function Documentation

MODULE_AUTHOR ( DRIVER_AUTHOR  )
MODULE_DESCRIPTION ( DRIVER_DESC  )
MODULE_DEVICE_TABLE ( usb  ,
aiptek_ids   
)
MODULE_LICENSE ( "GPL"  )
module_param ( programmableDelay  ,
int  ,
 
)
module_param ( jitterDelay  ,
int  ,
 
)
MODULE_PARM_DESC ( programmableDelay  ,
"delay used during tablet programming"   
)
MODULE_PARM_DESC ( jitterDelay  ,
"stylus/mouse settlement delay  
)
module_usb_driver ( aiptek_driver  )