Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Jan 2012 11:52:20 +0100
From:      Gary Jennejohn <gljennjohn@googlemail.com>
To:        Alexander Motin <mav@FreeBSD.org>
Cc:        freebsd-multimedia@FreeBSD.org, FreeBSD current <freebsd-current@freebsd.org>
Subject:   Re: [RFT] Major snd_hda rewrite
Message-ID:  <20120112115220.1c32b3e2@ernst.jennejohn.org>
In-Reply-To: <4F0DE3FD.2020203@FreeBSD.org>
References:  <4F0DE3FD.2020203@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 11 Jan 2012 21:33:17 +0200
Alexander Motin <mav@FreeBSD.org> wrote:

> I would like request for testing of my work on further HDA sound driver 
> improvement.
> 

[big snip]

> That is how it may look now in dmesg:
> 
> hdac0: <Intel 5 Series/3400 Series HDA Controller> mem 
> 0xf7ef4000-0xf7ef7fff irq 22 at device 27.0 on pci0
> hdacc0: <VIA VT1708S_0 HDA CODEC> at cad 0 on hdac0
> hdaa0: <VIA VT1708S_0 HDA CODEC Audio Function Group> at nid 1 on hdacc0
> hdacc1: <Intel Ibex Peak HDA CODEC> at cad 3 on hdac0
> hdaa1: <Intel Ibex Peak HDA CODEC Audio Function Group> at nid 1 on hdacc1
> pcm0: <VIA VT1708S_0 HDA CODEC PCM (Analog)> at nid 28,29 and 26,30,27 
> on hdaa0
> pcm1: <VIA VT1708S_0 HDA CODEC PCM (Digital)> at nid 32 on hdaa0
> pcm2: <Intel Ibex Peak HDA CODEC PCM (DisplayPort 8ch)> at nid 6 on hdaa1
> 
> Patch can be found here:
> http://people.freebsd.org/~mav/hda.rewrite.patch
> 
> Patch was generated for 10-CURRENT, but should apply to fresh 9-STABLE 
> and 8-STABLE branches also.
> 

The patch doesn't apply cleanly to r230008; hdac.c.rej is 15661 bytes
in size (mostly the section which deletes all the manufacturer-specific
defines at the top of the file).

After fixing that per hand I was able to make a kernel with which sound
still works.  Here the relevant bits from dmesg:

hdac0: <NVidia (Unknown) HDA Controller> mem 0xfcffc000-0xfcffffff irq 18 at device 0.1 on pci1
hdac1: <ATI SB600 HDA Controller> mem 0xfe024000-0xfe027fff irq 16 at device 20.2 on pci0
hdacc0: <NVidia GT21x HDA CODEC> at cad 0 on hdac0
hdaa0: <NVidia GT21x HDA CODEC Audio Function Group> at nid 1 on hdacc0
pcm0: <NVidia GT21x HDA CODEC PCM (DisplayPort 8ch)> at nid 5 on hdaa0
hdacc1: <NVidia GT21x HDA CODEC> at cad 1 on hdac0
hdaa1: <NVidia GT21x HDA CODEC Audio Function Group> at nid 1 on hdacc1
pcm1: <NVidia GT21x HDA CODEC PCM (DisplayPort 8ch)> at nid 5 on hdaa1
hdacc2: <NVidia GT21x HDA CODEC> at cad 2 on hdac0
hdaa2: <NVidia GT21x HDA CODEC Audio Function Group> at nid 1 on hdacc2
pcm2: <NVidia GT21x HDA CODEC PCM (DisplayPort 8ch)> at nid 5 on hdaa2
hdacc3: <NVidia GT21x HDA CODEC> at cad 3 on hdac0
hdaa3: <NVidia GT21x HDA CODEC Audio Function Group> at nid 1 on hdacc3
pcm3: <NVidia GT21x HDA CODEC PCM (DisplayPort 8ch)> at nid 5 on hdaa3
hdacc4: <Realtek ALC889A HDA CODEC> at cad 0 on hdac1
hdaa4: <Realtek ALC889A HDA CODEC Audio Function Group> at nid 1 on hdacc4
pcm4: <Realtek ALC889A HDA CODEC PCM (Rear Analog 7.1/2.0)> at nid 20,22,21,23 and 24,26 on hdaa4
pcm5: <Realtek ALC889A HDA CODEC PCM (Front Analog)> at nid 27 and 25 on hdaa4
pcm6: <Realtek ALC889A HDA CODEC PCM (Rear Digital)> at nid 30 and 31 on hdaa4

I particularly like that the messages now show which jack corresponds to
which pcm - makes deciding which jack to use much simpler.

I'm using pcm4.

-- 
Gary Jennejohn (gj@)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120112115220.1c32b3e2>