OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [linux/] [linux-2.4/] [Documentation/] [wolfson-touchscreen.txt] - Blame information for rev 1765

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1275 phoenix
 
2
Wolfson Microelectronics WM9705 and WM9712 Touchscreen Controllers
3
===================================================================
4
 
5
The WM9705 and WM9712 are high performance AC97 audio codecs with built
6
in touchscreen controllers that are mainly found in portable devices.
7
i.e. Dell Axim and Toshiba e740.
8
 
9
This driver uses the AC97 link controller for all communication with the
10
codec and can be either built into the kernel or built as a module.
11
 
12
Build Instructions
13
==================
14
 
15
The driver will be built into the kernel if "sound card support" = y and
16
"wolfson AC97 touchscreen support" = y in the kernel sound configuration.
17
 
18
To build as a module, "wolfson AC97 touchscreen support" = m
19
in the kernel sound configuration.
20
 
21
 
22
Driver Features
23
===============
24
 
25
 * supports WM9705, WM9712
26
 * polling mode
27
 * coordinate polling
28
 * adjustable rpu/dpp settings
29
 * adjustable pressure current
30
 * adjustable sample settle delay
31
 * 4 and 5 wire touchscreens (5 wire is WM9712 only)
32
 * pen down detection
33
 * power management
34
 * AUX ADC sampling
35
 
36
 
37
Driver Usage
38
============
39
 
40
In order to use this driver, a char device called wm97xx with a major
41
number of 10 and minor number 16 will have to be created under
42
/dev/touchscreen.
43
 
44
e.g.
45
mknod /dev/touchscreen/wm97xx c 10 16
46
 
47
 
48
Driver Parameters
49
=================
50
The driver can accept several parameters for fine tuning the touchscreen.
51
However, the syntax is different between module options and passing the
52
options in the kernel command line.
53
 
54
e.g.
55
 
56
rpu=1   (module)
57
rpu:1   (kernel command line)
58
 
59
 
60
1. Codec sample mode. (mode)
61
 
62
   The WM9712 can sample touchscreen data in 3 different operating
63
   modes. i.e. polling, coordinate and continous.
64
 
65
   Polling:-     The driver polls the codec and issues 3 seperate commands
66
                 over the AC97 link to read X,Y and pressure.
67
 
68
   Coordinate: - The driver polls the codec and only issues 1 command over
69
                 the AC97 link to read X,Y and pressure. This mode has
70
                 strict timing requirements and may drop samples if
71
                 interrupted. However, it is less demanding on the AC97
72
                 link. Note: this mode requires a larger delay than polling
73
                 mode.
74
 
75
   Continuous:-  The codec automatically samples X,Y and pressure and then
76
                 sends the data over the AC97 link in slots. This is then
77
                 same method used by the codec when recording audio.
78
 
79
   Set mode = 0 for polling, 1 for coordinate and 2 for continuous.
80
 
81
   Default mode = 0
82
 
83
 
84
 
85
2. WM9712 Internal pull up for pen detect. (rpu)
86
 
87
   Pull up is in the range 1.02k (least sensitive) to 64k (most sensitive)
88
   i.e. pull up resistance = 64k Ohms / rpu.
89
 
90
   Adjust this value if you are having problems with pen detect not
91
   detecting any down events.
92
 
93
   Set rpu = value
94
 
95
   Default rpu = 1
96
 
97
 
98
 
99
3. WM9705 Pen detect comparator threshold. (pdd)
100
 
101
 
102
   i.e. 1 =  Vmid/15 threshold
103
        15 =  Vmid/1 threshold
104
 
105
   Adjust this value if you are having problems with pen detect not
106
   detecting any down events.
107
 
108
   Set pdd = value
109
 
110
   Default pdd = 0
111
 
112
 
113
 
114
4. Set current used for pressure measurement. (pil)
115
 
116
   Set pil = 2 to use 400uA
117
       pil = 1 to use 200uA and
118
       pil = 0 to disable pressure measurement.
119
 
120
   This is used to increase the range of values returned by the adc
121
   when measureing touchpanel pressure.
122
 
123
   Default pil = 0
124
 
125
 
126
 
127
5. WM9712 Set 5 wire touchscreen mode. (five_wire)
128
 
129
   Set five_wire = 1 to enable 5 wire mode on the WM9712.
130
 
131
   Default five_wire = 0
132
 
133
   NOTE: Five wire mode does not allow for readback of pressure.
134
 
135
 
136
 
137
6. ADC sample delay. (delay)
138
 
139
   For accurate touchpanel measurements, some settling time may be
140
   required between the switch matrix applying a voltage across the
141
   touchpanel plate and the ADC sampling the signal.
142
 
143
   This delay can be set by setting delay = n, where n is the array
144
   position of the delay in the array delay_table below.
145
   Long delays > 1ms are supported for completeness, but are not
146
   recommended.
147
 
148
   Default delay = 4
149
 
150
    wm_delay     uS     AC97 link frames
151
    ====================================
152
 
153
       1              42          2
154
       2          84          4
155
       3         167          8
156
       4         333         16
157
       5         667         32
158
       6        1000         48
159
       7        1333         64
160
       8        2000         96
161
       9        2667        128
162
      10        3333        160
163
      11        4000        192
164
      12        4667        224
165
      13        5333        256
166
      14        6000        288
167
      15           0          0 (No delay, switch matrix always on)
168
 
169
 
170
 
171
Contact
172
=======
173
 
174
Further information about the WM9705 and WM9712 can be found on the
175
Wolfson Website. http://www.wolfsonmicro.com
176
 
177
Please report bugs to liam.girdwood@wolfsonmicro.com or
178
                      linux@wolfsonmicro.com

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.