snd_hda UAA patch second preview
Vladimir Grebenschikov
vova at fbsd.ru
Tue Aug 26 09:14:22 UTC 2008
On Mon, 2008-08-25 at 19:27 +0300, Alexander Motin wrote:
> Hi.
I've tried this patch on 8-CURRENT.
first, it almost freezes system with:
hdac0: <Intel 82801G High Definition Audio Controller> mem 0xee400000-0xee403fff irq 17 at device 27.0 on pci0
hdac0: <HDA Driver Revision: 20080825_0100>
hdac0: [ITHREAD]
hdac0: hdac_command_send_internal: TIMEOUT numcmd=1, sent=1, received=0
hdac0: hdac_command_send_internal: TIMEOUT numcmd=1, sent=1, received=0
hdac0: hdac_command_send_internal: TIMEOUT numcmd=1, sent=1, received=0
hdac0: hdac_command_send_internal: TIMEOUT numcmd=1, sent=1, received=0
... cut ...
hdac0: hdac_command_send_internal: TIMEOUT numcmd=1, sent=1, received=0
hdac0: hdac_command_send_internal: TIMEOUT numcmd=1, sent=1, received=0
hdac0: <HDA Codec #0: Analog Devices AD1981HD>
hdac0: <HDA Codec #1: Unknown Codec>
pcm0: <HDA codec Analog Devices AD1981HD PCM #0> on hdac0
pcm1: <HDA codec Analog Devices AD1981HD PCM #1> on hdac0
# dmesg | fgrep hdac_command_send_internal | wc -l
258
#
While these timeout messages system was unresponsive, but after (in
several seconds) it looks ok.
# cat /dev/sndstat
FreeBSD Audio Driver (newpcm: 32bit 2007061600/i386)
Installed devices:
pcm0: <HDA codec Analog Devices AD1981HD PCM #0> at hdac0 cad 0 kld snd_hda [20080825_0100] [GIANT] (1p:1v/1r:1v channels duplex default)
pcm1: <HDA codec Analog Devices AD1981HD PCM #1> at hdac0 cad 0 kld snd_hda [20080825_0100] [MPSAFE] (1p:1v/0r:0v channels)
Music is plays on both /dev/dsp0 and /dev/dsp1 but goes to output only on dsp0.
# mixer
Mixer vol is currently set to 100:100
Mixer pcm is currently set to 75:75
Mixer cd is currently set to 62:62
Mixer rec is currently set to 70:70
Mixer ogain is currently set to 100:100
Mixer monitor is currently set to 45:45
Recording source:
# mixer -f /dev/mixer1
Mixer vol is currently set to 75:75
Mixer pcm is currently set to 75:75
#
Changing of mixer volumes for both mixer does not affects anything.
any hints will be appreciated.
> Here is second preview of my HDA sound driver update. As with the first
> one I would be grateful for any feedback positive or negative.
>
> Patch for 8-CURRENT:
> http://people.freebsd.org/~mav/hda.20080825.patch
> Patch for 7-STABLE (mostly the same):
> http://people.freebsd.org/~mav/hda.7.20080825.patch
> Full driver directory archive:
> http://people.freebsd.org/~mav/hda.20080825.tgz
>
> Main changes since first version:
> - Record source selector completely rewritten. Now mixed recording and
> multilevel mixed/multiplexed recording found on some codecs should work
> fine. I have no possibility to test all of these on my hardware, so
> feedbacks are wanted.
> - Rewritten device hints parser. Now it is possible to specify names
> instead of numeric codes for device type, connectivity and color. For
> example:
> hint.hdac.0.cad0.nid28.config="device=CD conn=Fixed color=Red"
> - Sysctl that dumps current pin configuration (dev.hdac.0.pindump)
> fixed. Setting it to nonzero value dumps current pin configuration and
> jack detection/sensing status. It should be useful for debugging and
> hints writing purposes.
> - SPDIF output (may be input too, but I can't test it) implemented.
> I'm not sure that it is done perfectly, completely or even correctly,
> but I am able to playback both PCM and AC3 streams from mplayer on my
> AD1988 codec and external audio receiver. If you will try AC3, make sure
> you have disabled vchans for that dspX device with 'sysctl
> dev.pcm.X.play.vchans=0'.
> - Kernel verbose output improved to be more informative.
> - Module unloading fixed.
> - Asus MB quirk updated to work properly. Actually this quirk is not
> really required as it only reconfigures codec from 5.1 output scheme to
> 2.0 output + 2 input.
> - Numerous other fixes...
>
> If you will have any questions/problems boot your system with verbose
> logging. Driver prints a lot of usable information there.
>
> While sending me reports please attach your kernel verbose boot output,
> pin dump produced by `sysctl dev.hdac.0.pindump=1` and `cat
> /dev/sndstat` output to your message.
>
> Thanks.
>
--
Vladimir B. Grebenschikov
vova at fbsd.ru
More information about the freebsd-multimedia
mailing list