It was hard time for me to get my audio driver working in solaris. To remind you again, I did this in 32 bit mode.
I referred to this link : http://opensolaris.org/os/project/opensound/
First I downloaded the source code of OSS from here : http://www.4front-tech.com/developer/sources/stable/cddl/
You also need to GAWK installed, so executed this command :
# pkg-get -i gawk
Also download the 'Read me' file from the above link as it will contain the instructions. I downloaded OSS v4.0
Extracted it in a folder on desktop (/Desktop/oss). Now :
# cd /usr/ccs/bin
# mkdir build
# cd build
# /Desktop/oss/configure
# make build
# make install
# make package
# pkgadd -d <name of .pkg file> (there will be only one .pkg file)
# ossdetect
Now check if you can play any sound file, if not then reboot the system.
# reboot
Now after rebooting the sound should come. If not then try
# ossdetect
# osstest
This will check for sound & if you can hear music then it means you are on the verge of getting sound configured in your system.Actually this happened in my system. I could hear sound play when I do 'osstest', but still not able to open volume control. So after a long battle :D, I won it all. When I executed the osstest command this came :
=========================================================
*bash-3.2#* osstest
Sound subsystem and version: OSS 4.0 (b1013/200802181324) (0x00040003)
Platform: SunOS/i86pc 5.11 snv_79a
*** Scanning sound adapter #-1 ***
/dev/oss/hdaudio0/pcm0 (audio engine 0): High Definition Audio play
- Performing audio playback test...
<left> OK <right> OK <stereo> OK <measured srate 47958.00 Hz (-0.09%)>
/dev/oss/hdaudio0/pcm1 (audio engine 1): High Definition Audio <null string>
- Performing audio playback test...
<left> Device returned error: I/O error
*** Some errors were detected during the tests ***
*bash-3.2# *
==========================================================
So in my case /dev/oss/hdaudio0/pcm0 (audio engine 0) was working. So all I did is put a link in /dev/dsp.
# ln -s /dev/oss/hdaudio0/pcm0 /dev/dsp
And thats it Now I could play songs.