How do I configure my SoundBlaster card?

How do I configure my SoundBlaster card?



If you have a SoundBlaster 16 PCI or SoundBlaster PCI128 card, download
and install Philip Brown's Solaris sbpci driver available at

http://www.bolthole.com/solaris/sbpci/



If the above doesn't apply (which is the case for older ISA cards),
try the following procedure for Solaris 2.6 and higher.
Become root and type: "touch /reconfigure; /usr/sbin/reboot".
If this works, you should see two links under /dev/sound and
be able to play .au files with audiotool
(2.5.1 instructions follow):



  1. Run "prtconf -pv" to print the current system configuration:



    Node 0xf5a33500
    compatible: 'pnpCTL,00E4,0' + 'sbpro'
    dma-channels: 00000001.00000005
    interrupts: 00000005
    model: 'Audio'
    name: 'pnpCTL,0045'
    pnp-csn: 00000001
    reg: 8e8c00e4.19f815e8.00000000.00000001.00000220.00000010
    .00000001.00000330.00000002.00000001.00000388.00000004
    unit-address: 'pnpCTL,00E4,19f815e8'


    The device ID I want is CTL0045. This comes from the name line "pnpCTL,0045".
    There were a couple of other 'pnpXXX,DDDD' devices. This was the only one
    with the model "Audio".


  2. According to InfoDoc 15830, I used "CTL,0045" from above and updated
    /platform/i86pc/boot/solaris/devicedb/master as follows (no comma):



    < CSC0000|PNPB002|PNPB003|CTL0031|ESS1681 sbpro oth all sbpro.bef
    "Sound Blaster"
    - ---
    > CTL0045|CSC0000|PNPB002|PNPB003|CTL0031|ESS1681 sbpro oth all sbpro.bef
    "Sound Blaster"


  3. Rebooted and rebuilt my devices:

    # /touch /reconfigure; /usr/sbin/reboot



  4. I also ran the Device Configuration Assistant (DCA) -- press Escape as
    soon as the machine boots, it will prompt you -- just to verify that the
    Sound Blaster showed up in the device list. It did as "Sound Blaster."
    Since I ran the DCA boot will get the -r arg anyways.


  5. When I boot /dev/audio was present. Yeah! I am currently listening to the
    Sunday Blues on real audio at

    http://www.sunday-blues.com/listen.html
    .


If the above procedure fails for Solaris 2.6 or 7 (as it did for me),
continue with the procedure below for Solaris 2.5.1.



For Solaris 2.5.1:


Edit file /platform/i86pc/kernel/drv/sbpro.conf
as instructed in the file
(note that the instructions were removed for Solaris 2.6 and above!).
Usually, it's just adding "dma-channels-1,5" to the appropriate
name="sbpro" line.
Then "/touch /reconfigure; /usr/sbin/reboot"


For example, given a SoundBlaster 16 or AWE32, the following specifies
IRQ 5, Audio I/O Address 0x220, and 8 & 16 bit DMA channels 1 & 5:



name="sbpro" class="sysbus"
interrupts=5,2 reg=-1,9,0,1,0x220,0x14 type="SB16" dma-channels=1,5;


For a SoundBlaster PRO, the entry looks like this (one DMA channel: 1):



name="sbpro" class="sysbus"
interrupts=5,2 dma-channels=1 reg=-1,1,0,1,0x220,0x14 type="SBPRO";


Leave the other numbers alone. Make sure these resources are configured
for the card and are not used by other devices. For example, NICs and
Parallel Ports often use IRQ 5, and token ring cards often use IOA 0x220.
If you get an invalid interrupt message, try using "interrupts=5"
in lieu of "interrupts=5,2", where "5" is your IRQ.


For more information, type "man sbpro."


A commercial alternative to the above is to use 4Front Technologies'
Open Sound System (OSS). It's available for a free trial for about 10
days. After that, it's $30, but well-worth the savings in time. For cards
newer than SoundBlaster 16/32/Pro, it's the only choice.
To use, download the tar.Z file from
http://www.opensound.com/, extract,
and run the install menu ./oss-install and let it auto-detect the sound
card. Reboot (or at least sync), then run "soundon" to enable the
driver manually (see file oss/Readme for how to enable automatically).


[Thanks to Park Byoung-Gi, Steve Krapp, Chris, Dave, Norma, Juergen Keil,
& Philip Brown]





Home
FAQ