kern/109132: DELL E521 snd_hda: output OK, input broken

Federico GD federicogalvezdurand at yahoo.com
Tue Feb 13 12:50:25 UTC 2007


>Number:         109132
>Category:       kern
>Synopsis:       DELL E521 snd_hda: output OK, input broken
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Feb 13 12:50:23 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     Federico GD
>Release:        6.2-stable
>Organization:
none
>Environment:
FreeBSD trinity.local 6.2-STABLE FreeBSD 6.2-STABLE #0: Tue Feb 13 10:09:32 UTC 2007     root at trinity.local:/usr/obj/usr/src/sys/TRINITY  amd64

>Description:
snd_hda outputs quite  well with a simple pair of speakers. I don't have a 5.1  speaker  set right now.
Input with Mic is not working. The signal captured is reproduced with slow, distorted speech; no recognisable sounds.

The snd_hda driver has been added patching the kernel with:
http://people.freebsd.org/~ariff/snd_RELENG_6_20070212_142_lowlatency.diff.gz
(thanks Ariff).

1) uname -a
FreeBSD trinity.local 6.2-STABLE FreeBSD 6.2-STABLE #0: Tue Feb 13 10:09:32 UTC 2007     root at trinity.local:/usr/obj/usr/src/sys/TRINITY  amd64
2) pciconf -lv | grep -B 4 audio
3) grep ^pcm /var/run/dmesg.boot
pcm0: <NVidia MCP51 High Definition Audio Controller> mem 0xfe024000-0xfe027fff irq 21 at device 16.1 on pci0
pcm0: <HDA Codec: Sigmatel STAC9227>
pcm0: <HDA Driver Revision: 20070128_0039>
pcm0: <NVidia MCP51 High Definition Audio Controller> mem 0xfe024000-0xfe027fff irq 21 at device 16.1 on pci0
pcm0: <HDA Codec: Sigmatel STAC9227>
pcm0: <HDA Driver Revision: 20070128_0039>
4) sysctl hw.snd.verbose=2 ; cat /dev/sndstat
hw.snd.verbose: 2 -> 2
FreeBSD Audio Driver (newpcm: 64bit)
Installed devices:
pcm0: <NVidia MCP51 High Definition Audio Controller> at memory 0xfe024000 irq 21 kld snd_hda [20070128_0039] (1p/1r/2v channels duplex default)
	[pcm0:play:0:dsp0.p0]: spd 48000, fmt 0x10000010, flags 0x00101020, 0x00000020
	interrupts 28048, underruns 0, feed 28048, ready 0 [b:4096/2048/2|bs:4096/2048/2]
	{userland} -> feeder_vchan(0x10000010) -> feeder_volume(0x10000010) -> {hardware}
	[pcm0:record:0:dsp0.r0]: spd 8000/44100, fmt 0x00000008/0x10000010, flags 0x00000000, 0x00000008
	interrupts 0, overruns 0, feed 0, hfree 4096, sfree 4096 [b:4096/2048/2|bs:4096/128/32]
	{hardware} -> feeder_root(0x10000010) -> feeder_stereotomono16(0x10000010 -> 0x00000010) -> feeder_sign16(0x00000010 -> 0x00000080) -> feeder_rate(44100 -> 8000) -> feeder_16to8(0x00000080 -> 0x00000008) -> {userland}
	pcm0:play:0:dsp0.p0[pcm0:virtual:0:dsp0.v0]: spd 44100/48000, fmt 0x10000010, flags 0x10003030, 0x00000008, pid 4363
	interrupts 0, underruns 0, feed 28048, ready 128936 [b:0/0/0|bs:131072/4096/32]
	{userland} -> feeder_root(0x10000010) -> feeder_rate(44100 -> 48000) -> {hardware}
	pcm0:play:0:dsp0.p0[pcm0:virtual:1:dsp0.v1]: spd 8000/48000, fmt 0x00000008/0x10000010, flags 0x10000000, 0x00000008
	interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:4096/128/32]
	{userland} -> feeder_root(0x00000008) -> feeder_8to16(0x00000008 -> 0x00000080) -> feeder_rate(8000 -> 48000) -> feeder_monotostereo16(0x00000080 -> 0x10000080) -> feeder_sign16(0x10000080 -> 0x10000010) -> {hardware}
5) sysctl hw.snd
hw.snd.report_soft_formats: 1
hw.snd.latency: 5
hw.snd.latency_profile: 1
hw.snd.feeder_buffersize: 16384
hw.snd.feeder_rate_min: 1
hw.snd.feeder_rate_max: 2016000
hw.snd.feeder_rate_round: 25
hw.snd.verbose: 2
hw.snd.default_unit: 0
hw.snd.maxautovchans: 4
6) output of /usr/sbin/mixer
Mixer vol      is currently set to  75:75
Mixer pcm      is currently set to  50:50
Mixer speaker  is currently set to  75:75
Mixer mic      is currently set to  50:50
Mixer rec      is currently set to  75:75
Recording source: mic

>How-To-Repeat:
It happens in a DELL E521, Bios 1.1.4.
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list