| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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 | 	 |