summaryrefslogtreecommitdiffstats
path: root/kernel/Documentation/sound/oss/WaveArtist
blob: f4f3407cd818ebbd72a8df277b2fcfe6351473e9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
 (the following is from the armlinux CVS)

 WaveArtist mixer and volume levels can be accessed via these commands:

  nn30	read registers nn, where nn = 00 - 09 for mixer settings
		                              0a - 13 for channel volumes
  mm31	write the volume setting in pairs, where mm = (nn - 10) / 2
  rr32	write the mixer settings in pairs, where rr = nn/2
  xx33	reset all settings to default
  0y34	select mono source, y=0 = left, y=1 = right

                                           bits
 nn  15  14 13 12 11   10    9     8     7    6     5     4     3     2     1     0
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 00 | 0 | 0  0  1  1 | left line mixer gain       | left aux1 mixer gain        |lmute|
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 01 | 0 | 0  1  0  1 | left aux2 mixer gain       | right 2 left mic gain       |mmute|
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 02 | 0 | 0  1  1  1 | left mic mixer gain        | left mic  | left mixer gain |dith |
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 03 | 0 | 1  0  0  1 | left mixer input select                |lrfg | left ADC gain   |
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 04 | 0 | 1  0  1  1 | right line mixer gain      | right aux1 mixer gain       |rmute|
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 05 | 0 | 1  1  0  1 | right aux2 mixer gain      | left 2 right mic gain       |test |
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 06 | 0 | 1  1  1  1 | right mic mixer gain       | right mic |right mixer gain |rbyps|
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 07 | 1 | 0  0  0  1 | right mixer select                     |rrfg | right ADC gain  |
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 08 | 1 | 0  0  1  1 | mono mixer gain            |right ADC mux sel|left ADC mux sel |
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 09 | 1 | 0  1  0  1 |loopb|left linout|loop|ADCch|TxFch|OffCD|test |loopb|loopb|osamp|
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 0a | 0 | left PCM channel volume                                                     |
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 0b | 0 | right PCM channel volume                                                    |
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 0c | 0 | left FM channel volume                                                      |
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 0d | 0 | right FM channel volume                                                     |
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 0e | 0 | left wavetable channel volume                                               |
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 0f | 0 | right wavetable channel volume                                              |
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 10 | 0 | left PCM expansion channel volume                                           |
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 11 | 0 | right PCM expansion channel volume                                          |
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 12 | 0 | left FM expansion channel volume                                            |
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+
 13 | 0 | right FM expansion channel volume                                           |
----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+

 lmute: left mute
 mmute: mono mute
 dith: dithds
 lrfg:
 rmute: right mute
 rbyps: right bypass
 rrfg:
 ADCch:
 TxFch:
 OffCD:
 osamp:

 And the following diagram is derived from the description in the CVS archive:

 MIC L (mouthpiece)
   +------+
 -->PreAmp>-\
   +--^---+ |
      |     |
    r2b4-5  |                                +--------+
       /----*-------------------------------->5       |
       |                                     |        |
       | /----------------------------------->4       |
       | |                                   |        |
       | | /--------------------------------->3 1of5  |  +---+
       | | |                                 |  mux   >-->AMP>--> ADC L
       | | | /------------------------------->2       |  +-^-+
       | | | |                               |        |    |
 Line  | | | | +----+  +------+  +---+  /---->1       |  r3b3-0
 ------------*->mute>--> Gain >-->   |  |    |        |
  L    | | |   +----+  +------+  |   |  |  *->0       |
       | | |                     |   |  |    +---^----+
 Aux2  | | |   +----+  +------+  |   |  |        |
 ----------*--->mute>--> Gain >--> M |  |     r8b0-2
  L    | |     +----+  +------+  |   |  |
       | |                       |   |  \------\
 Aux1  | |     +----+  +------+  |   |         |
 --------*----->mute>--> Gain >--> I |         |
  L    |       +----+  +------+  |   |         |
       |                         |   |         |
       |       +----+  +------+  |   |  +---+  |
       *------->mute>--> Gain >--> X >-->AMP>--*
       |       +----+  +------+  |   |  +-^-+  |
       |                         |   |    |    |
       |       +----+  +------+  |   |  r2b1-3 |  
       | /----->mute>--> Gain >--> E |         |
       | |     +----+  +------+  |   |         |
       | |                       |   |         |
       | |     +----+  +------+  |   |         |
       | | /--->mute>--> Gain >--> R |         |
       | | |   +----+  +------+  |   |         |
       | | |                     |   |         |   r9b8-9
       | | |   +----+  +------+  |   |         |     |
       | | | /->mute>--> Gain >-->   |         | +---v---+
       | | | | +----+  +------+  +---+       /-*->0      |
 DAC   | | | |                               |   |       |
 ------------*----------------------------------->?      |  +----+
  L    | | |                                 |   |  Mux  >-->mute>--> L output
       | | |                                 | /->?      |  +--^-+
       | | |                                 | | |       |     |
       | | |                           /--------->?      |   r0b0
       | | |                           |     | | +-------+
       | | |                           |     | |
 Mono  | | |                           |     | | +-------+
 ----------*                           |     \--->       |  +----+
       | | |                           |       | |  Mix  >-->mute>--> Mono output
       | | |                           |       *->       |  +--^-+
       | | |                           |       | +-------+     |
       | | |                           |       |             r1b0
 DAC   | | |                           |       | +-------+
 ------------*-------------------------*--------->1      |  +----+
  R    | | | |                                 | |  Mux  >-->mute>--> R output
       | | | | +----+  +------+  +---+         *->0      |  +--^-+
       | | | \->mute>--> Gain >-->   |         | +---^---+     |
       | | |   +----+  +------+  |   |         |     |       r5b0
       | | |                     |   |         |   r6b0
       | | |   +----+  +------+  |   |         |
       | | \--->mute>--> Gain >--> M |         |
       | |     +----+  +------+  |   |         |
       | |                       |   |         |
       | |     +----+  +------+  |   |         |
       | *----->mute>--> Gain >--> I |         |
       | |     +----+  +------+  |   |         |
       | |                       |   |         |
       | |     +----+  +------+  |   |  +---+  |
       \------->mute>--> Gain >--> X >-->AMP>--*
         |     +----+  +------+  |   |  +-^-+  |
      /--/                       |   |    |    |
 Aux1 |        +----+  +------+  |   |  r6b1-3 |
 -------*------>mute>--> Gain >--> E |         |
  R   | |      +----+  +------+  |   |         |
      | |                        |   |         |
 Aux2 | |      +----+  +------+  |   |  /------/
 ---------*---->mute>--> Gain >--> R |  |
  R   | | |    +----+  +------+  |   |  |
      | | |                      |   |  |    +--------+
 Line | | |    +----+  +------+  |   |  |  *->0       |
 -----------*-->mute>--> Gain >-->   |  |    |        |
  R   | | | |  +----+  +------+  +---+  \---->1       |
      | | | |                                |        |
      | | | \-------------------------------->2       |  +---+
      | | |                                  |  Mux   >-->AMP>--> ADC R
      | | \---------------------------------->3       |  +-^-+
      | |                                    |        |    |
      | \------------------------------------>4       |  r7b3-0
      |                                      |        |
      \-----*-------------------------------->5       |
            |                                +---^----+
    r6b4-5  |                                    |
      |     |                                  r8b3-5
   +--v---+ |
 -->PreAmp>-/
   +------+
 MIC R (electret mic)