Linux-2.6.12-rc2
[linux-2.6] / Documentation / sound / oss / CMI8330
1 Documentation for CMI 8330 (SoundPRO) 
2 -------------------------------------
3 Alessandro Zummo <azummo@ita.flashnet.it>
4
5 ( Be sure to read Documentation/sound/oss/SoundPro too )
6
7
8 This adapter is now directly supported by the sb driver.
9
10  The only thing you have to do is to compile the kernel sound
11 support as a module and to enable kernel ISAPnP support,
12 as shown below.
13
14
15 CONFIG_SOUND=m
16 CONFIG_SOUND_SB=m
17
18 CONFIG_PNP=y
19 CONFIG_ISAPNP=y
20
21
22 and optionally:
23
24
25 CONFIG_SOUND_MPU401=m
26
27  for MPU401 support.
28
29
30 (I suggest you to use "make menuconfig" or "make xconfig" 
31  for a more comfortable configuration editing)
32
33
34
35 Then you can do
36
37  modprobe sb
38
39 and everything will be (hopefully) configured.
40
41 You should get something similar in syslog:
42
43 sb: CMI8330 detected.
44 sb: CMI8330 sb base located at 0x220
45 sb: CMI8330 mpu base located at 0x330
46 sb: CMI8330 mail reports to Alessandro Zummo <azummo@ita.flashnet.it>
47 sb: ISAPnP reports CMI 8330 SoundPRO at i/o 0x220, irq 7, dma 1,5
48
49
50
51
52 The old documentation file follows for reference
53 purposes.
54
55
56 How to enable CMI 8330 (SOUNDPRO) soundchip on Linux
57 ------------------------------------------
58 Stefan Laudat <Stefan.Laudat@asit.ro>
59
60 [Note: The CMI 8338 is unrelated and is supported by cmpci.o]
61
62         
63         In order to use CMI8330 under Linux  you just have to use a proper isapnp.conf, a good isapnp and a little bit of patience.  I use isapnp 1.17, but
64 you may get a better one I guess at http://www.roestock.demon.co.uk/isapnptools/.
65
66         Of course you will have to compile kernel sound support as module, as shown below:
67
68 CONFIG_SOUND=m
69 CONFIG_SOUND_OSS=m
70 CONFIG_SOUND_SB=m
71 CONFIG_SOUND_ADLIB=m
72 CONFIG_SOUND_MPU401=m
73 # Mikro$chaft sound system (kinda useful here ;))       
74 CONFIG_SOUND_MSS=m
75
76         The /etc/isapnp.conf file will be:
77
78 <snip below>
79
80
81 (READPORT 0x0203)
82 (ISOLATE PRESERVE)
83 (IDENTIFY *)
84 (VERBOSITY 2)
85 (CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING
86 (VERIFYLD N)
87
88
89 # WSS 
90
91 (CONFIGURE CMI0001/16777472 (LD 0
92 (IO 0 (SIZE 8) (BASE 0x0530))
93 (IO 1 (SIZE 8) (BASE 0x0388))
94 (INT 0 (IRQ 7 (MODE +E)))
95 (DMA 0 (CHANNEL 0))
96 (NAME "CMI0001/16777472[0]{CMI8330/C3D Audio Adapter}")
97 (ACT Y)
98 ))
99
100 # MPU
101
102 (CONFIGURE CMI0001/16777472 (LD 1
103 (IO 0 (SIZE 2) (BASE 0x0330))
104 (INT 0 (IRQ 11 (MODE +E)))
105 (NAME "CMI0001/16777472[1]{CMI8330/C3D Audio Adapter}")
106 (ACT Y)
107 ))
108
109 # Joystick
110
111 (CONFIGURE CMI0001/16777472 (LD 2
112 (IO 0 (SIZE 8) (BASE 0x0200))
113 (NAME "CMI0001/16777472[2]{CMI8330/C3D Audio Adapter}")
114 (ACT Y)
115 ))
116
117 # SoundBlaster 
118  
119 (CONFIGURE CMI0001/16777472 (LD 3
120 (IO 0 (SIZE 16) (BASE 0x0220))
121 (INT 0 (IRQ 5 (MODE +E)))
122 (DMA 0 (CHANNEL 1))
123 (DMA 1 (CHANNEL 5))
124 (NAME "CMI0001/16777472[3]{CMI8330/C3D Audio Adapter}")
125 (ACT Y)
126 ))
127
128
129 (WAITFORKEY)
130
131 <end of snip>
132
133         The module sequence is trivial:
134
135 /sbin/insmod soundcore
136 /sbin/insmod sound
137 /sbin/insmod uart401
138 # insert this first
139 /sbin/insmod ad1848 io=0x530 irq=7 dma=0 soundpro=1
140 # The sb module is an alternative to the ad1848 (Microsoft Sound System)
141 # Anyhow, this is full duplex and has MIDI
142 /sbin/insmod sb io=0x220 dma=1 dma16=5 irq=5 mpu_io=0x330
143
144
145
146 Alma Chao <elysian@ethereal.torsion.org> suggests the following /etc/modprobe.conf:
147
148 alias sound ad1848
149 alias synth0 opl3
150 options ad1848 io=0x530 irq=7 dma=0 soundpro=1
151 options opl3 io=0x388
152
153