Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
tnetv107x-ts.c File Reference
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/err.h>
#include <linux/errno.h>
#include <linux/input.h>
#include <linux/platform_device.h>
#include <linux/interrupt.h>
#include <linux/slab.h>
#include <linux/delay.h>
#include <linux/ctype.h>
#include <linux/io.h>
#include <linux/clk.h>
#include <mach/tnetv107x.h>

Go to the source code of this file.

Data Structures

struct  tsc_regs
 
struct  sample
 
struct  tsc_data
 

Macros

#define TSC_PENUP_POLL   (HZ / 5)
 
#define IDLE_TIMEOUT   100 /* msec */
 
#define TSC_HEAD_SKIP   1
 
#define TSC_TAIL_SKIP   1
 
#define TSC_SKIP   (TSC_HEAD_SKIP + TSC_TAIL_SKIP + 1)
 
#define TSC_SAMPLES   (TSC_SKIP + 1)
 
#define WMODE   BIT(0)
 
#define TSKIND   BIT(1)
 
#define ZMEASURE_EN   BIT(2)
 
#define IDLE   BIT(3)
 
#define TSC_EN   BIT(4)
 
#define STOP   BIT(5)
 
#define ONE_SHOT   BIT(6)
 
#define SINGLE   BIT(7)
 
#define AVG   BIT(8)
 
#define AVGNUM(x)   (((x) & 0x03) << 9)
 
#define PVSTC(x)   (((x) & 0x07) << 11)
 
#define PON   BIT(14)
 
#define PONBG   BIT(15)
 
#define AFERST   BIT(16)
 
#define DATA_VALID   BIT(16)
 
#define tsc_read(ts, reg)   __raw_readl(&(ts)->regs->reg)
 
#define tsc_write(ts, reg, val)   __raw_writel(val, &(ts)->regs->reg);
 
#define tsc_set_bits(ts, reg, val)   tsc_write(ts, reg, tsc_read(ts, reg) | (val))
 
#define tsc_clr_bits(ts, reg, val)   tsc_write(ts, reg, tsc_read(ts, reg) & ~(val))
 

Functions

 module_platform_driver (tsc_driver)
 
 MODULE_AUTHOR ("Cyril Chemparathy")
 
 MODULE_DESCRIPTION ("TNETV107X Touchscreen Driver")
 
 MODULE_ALIAS ("platform:tnetv107x-ts")
 
 MODULE_LICENSE ("GPL")
 

Macro Definition Documentation

#define AFERST   BIT(16)

Definition at line 69 of file tnetv107x-ts.c.

#define AVG   BIT(8)

Definition at line 64 of file tnetv107x-ts.c.

#define AVGNUM (   x)    (((x) & 0x03) << 9)

Definition at line 65 of file tnetv107x-ts.c.

#define DATA_VALID   BIT(16)

Definition at line 72 of file tnetv107x-ts.c.

#define IDLE   BIT(3)

Definition at line 59 of file tnetv107x-ts.c.

#define IDLE_TIMEOUT   100 /* msec */

Definition at line 32 of file tnetv107x-ts.c.

#define ONE_SHOT   BIT(6)

Definition at line 62 of file tnetv107x-ts.c.

#define PON   BIT(14)

Definition at line 67 of file tnetv107x-ts.c.

#define PONBG   BIT(15)

Definition at line 68 of file tnetv107x-ts.c.

#define PVSTC (   x)    (((x) & 0x07) << 11)

Definition at line 66 of file tnetv107x-ts.c.

#define SINGLE   BIT(7)

Definition at line 63 of file tnetv107x-ts.c.

#define STOP   BIT(5)

Definition at line 61 of file tnetv107x-ts.c.

#define tsc_clr_bits (   ts,
  reg,
  val 
)    tsc_write(ts, reg, tsc_read(ts, reg) & ~(val))

Definition at line 79 of file tnetv107x-ts.c.

#define TSC_EN   BIT(4)

Definition at line 60 of file tnetv107x-ts.c.

#define TSC_HEAD_SKIP   1

Definition at line 39 of file tnetv107x-ts.c.

#define TSC_PENUP_POLL   (HZ / 5)

Definition at line 31 of file tnetv107x-ts.c.

#define tsc_read (   ts,
  reg 
)    __raw_readl(&(ts)->regs->reg)

Definition at line 75 of file tnetv107x-ts.c.

#define TSC_SAMPLES   (TSC_SKIP + 1)

Definition at line 42 of file tnetv107x-ts.c.

#define tsc_set_bits (   ts,
  reg,
  val 
)    tsc_write(ts, reg, tsc_read(ts, reg) | (val))

Definition at line 77 of file tnetv107x-ts.c.

#define TSC_SKIP   (TSC_HEAD_SKIP + TSC_TAIL_SKIP + 1)

Definition at line 41 of file tnetv107x-ts.c.

#define TSC_TAIL_SKIP   1

Definition at line 40 of file tnetv107x-ts.c.

#define tsc_write (   ts,
  reg,
  val 
)    __raw_writel(val, &(ts)->regs->reg);

Definition at line 76 of file tnetv107x-ts.c.

#define TSKIND   BIT(1)

Definition at line 57 of file tnetv107x-ts.c.

#define WMODE   BIT(0)

Definition at line 56 of file tnetv107x-ts.c.

#define ZMEASURE_EN   BIT(2)

Definition at line 58 of file tnetv107x-ts.c.

Function Documentation

MODULE_ALIAS ( "platform:tnetv107x-ts )
MODULE_AUTHOR ( "Cyril Chemparathy"  )
MODULE_DESCRIPTION ( "TNETV107X Touchscreen Driver"  )
MODULE_LICENSE ( "GPL"  )
module_platform_driver ( tsc_driver  )