snd_hda peculiarities [SOLVED]

Richard L. Mace macerl at telkomsa.net
Wed Dec 30 20:52:41 UTC 2009


On Wednesday 30 December 2009 18:36:30 Mark Moellering wrote:
> Pieter de Goeje wrote:
> > On Wednesday 30 December 2009 15:45:50 Richard L. Mace wrote:
> >> I recently installed FreeBSD 8.0 (amd64) on my laptop (HP 8510w) and
> >> most things are working. However, a minor annoyance is that I only get
> >> sound if I manually load snd_hda via:
> >>
> >> # kldload snd_hda
> >>
> >> i.e., after booting. If I place the following in /boot/loader.conf
> >>
> >> snd_hda_load="YES"
> >>
> >> I get no sound, even though the driver seems to load and cat
> >> /dev/sndstat gives
> >
> > Try setting hw.snd.default_unit=1 in sysctl.conf. Most likely the order
> > of the devices has changed.
> >
> >> ------------------------------------------------------------------------
> >>--- ------------------------------------------- FreeBSD Audio Driver
> >> (newpcm: 64bit 2009061500/amd64)
> >> Installed devices:
> >> pcm0: <HDA Analog Devices AD1981HD PCM #0 Analog> at cad 0 nid 1 on
> >> hdac0 kld snd_hda [MPSAFE] (1p:1v/1r:1v channels duplex default)
> >> pcm1: <HDA Analog Devices AD1981HD PCM #1 Digital> at cad 0 nid 1 on
> >> hdac0 kld snd_hda [MPSAFE] (1p:1v/0r:0v channels simplex)
> >> ------------------------------------------------------------------------
> >>--- ---------------------------------------------
> >
> > This looks like the output from the working configuration. Note that the
> > first device is the analog output, the second is a digital output. When
> > you load snd_hda using loader.conf, the order is likely different on your
> > machine and the digital output is listed first. hw.snd.default_unit=1
> > would then direct the sound to the proper (analog) output.
> >
> > - Pieter
> > _______________________________________________
> > freebsd-questions at freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> > To unsubscribe, send any mail to
> > "freebsd-questions-unsubscribe at freebsd.org"
> 
> Richard,
>        I am sure that this is what I did to my machine to get snd_hda to
> work.
> .
> Mark
> 

Thanks to all for your valuable suggestions. It turns out that the problem was 
much simpler than I thought.

When I kldload snd_hda I get two panes in Kmix, each called "OSS Audio Mixer". 
One contains a whole bunch of channels, the other only two: Front and PCM.
It turns out that the simpler pane (front and pcm) controls the volume when 
you issue a:

# kldload snd_hda

 and this was naturally the pane that I was paying attention to, even when 
loading via /boot/loader.conf. When all suggestions failed, I turned my 
attention to the other pane and noticed that OGain was muted. I unmuted the 
OGain channel and now I have sound even when I load snd_hda via 
/boot/loader.conf (with hw.snd.default_unit=0, i.e. its default setting). 
However, in contrast to what happens when I do a kldload, when loading via 
/boot/loader.conf the other more detailed pane (containing the OGain control) 
now controls the volume.

Thanks again to all and my apologies for not looking for the simplest solution 
first.

-Richard 



More information about the freebsd-questions mailing list