Date: Tue, 6 Jun 2006 23:15:55 -0400 (EDT) From: Wesley Morgan <morganw@chemikals.org> To: Andrea Bittau <a.bittau@cs.ucl.ac.uk> Cc: freebsd-mobile@freebsd.org Subject: Re: HDA sound driver mod for thinkpad x60s Message-ID: <20060606231025.R50560@volatile.chemikals.org> In-Reply-To: <20060606205918.GA6765@shorty.sorbonet.org> References: <20060606124030.GA32057@shorty.sorbonet.org> <4485CEF8.10201@centtech.com> <20060606192229.GA4465@shorty.sorbonet.org> <4485DA6D.9020304@centtech.com> <4485E199.7000604@centtech.com> <20060606205918.GA6765@shorty.sorbonet.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 6 Jun 2006, Andrea Bittau wrote: > On Tue, Jun 06, 2006 at 03:12:09PM -0500, Eric Anderson wrote: >> How can I figure out the node id? > >> Jun 6 14:43:51 neutrino kernel: pcm0: node 2 type 0 cap d0401 >> Jun 6 14:43:51 neutrino kernel: pcm0: node 5 type 0 cap 40211 > >> Jun 6 14:43:51 neutrino kernel: pcm0: node 8 type 4 cap 430681 >> Jun 6 14:43:51 neutrino kernel: pcm0: node 9 type 4 cap 400301 >> Jun 6 14:43:51 neutrino kernel: pcm0: node 13 type 4 cap 400181 >> Jun 6 14:43:51 neutrino kernel: pcm0: node 14 type 4 cap 400181 >> Jun 6 14:43:51 neutrino kernel: pcm0: node 15 type 4 cap 400181 >> Jun 6 14:43:51 neutrino kernel: pcm0: node 16 type 4 cap 400181 >> Jun 6 14:43:51 neutrino kernel: pcm0: node 17 type 4 cap 400104 >> Jun 6 14:43:51 neutrino kernel: pcm0: node 18 type 4 cap 400001 > > OK so type 0 is audio output, so node id 2 and 5 are audio output. Therefore, > in the driver, the: > sorbo_conf_output(sc, 0, 3); > should be replaced with 0, 2 or 0, 5. > > The "pins", are type 4 and you need to amplify them. So you need to modify: > sorbo_set_amp(sc, 0, 5, 40); > with: > sorbo_set_amp(sc, 0, 8, 40); // set node id 8 gain 40 > sorbo_set_amp(sc, 0, 9, 40); // set node id 9 gain 40 > ... > sorbo_set_amp(sc, 0, 18, 40); // node id 18. > > There is one aditional piece of debug info which might be handy. You need to > make sure that the "pins" are connected to the audio output device. Make enum() > get called as described in the previous mails, then in sorbo_print_widget(), get > rid of 0 && in the type == HDA_PARAM_AUDIO_WIDGET_CAP_TYPE_PIN_COMPLEX. That > is, sorbo_conf_pin() should be called for each pin. This will cause an > additional printf which will tell you which audio output each pin is connected > to [list %x cur %d]. Ideally you want pins to be connected either to 2 or 5 in > your case. > > Also, make sure the hardware volume is up, if there are any buttons on the > laptop. =D Following all of these instructions on my system results nearly identical output, with no working sound. The chipset is an i945, which the folks at 4-front also seem to have problems supporting. pcm0: <Intel 82801G High Definition Audio Controller> mem 0xffdfc000-0xffdfffff irq 22 at device 27.0 on pci0 init 0xc5901700 pcm0: Output Streams: 4, Input Streams: 4, Bidirectional Streams: 0 pcm0: CORB Size: 256, RIRB Size: 256 seq_eventthread started pcm0: <audio> at device 0:1 (no driver attached) pcm0: <modem> at device 1:1 (no driver attached) pcm0: node 2 type 0 cap d0401 pcm0: Cap d0401 sf 0 st 0 pcm0: Set 0:2 10 pcm0: node 3 type 1 cap 1d0541 pcm0: node 4 type 1 cap 140311 pcm0: node 5 type 0 cap 40211 pcm0: Cap 40211 sf e01e0 st 5 pcm0: Set 0:5 10 pcm0: node 6 type f cap f30201 pcm0: node 7 type 3 cap 300901 pcm0: node 8 type 4 cap 430681 pcm0: nid 8 entries 0 list 0 cur 0 ctr 0 cap 10024 s 0 pcm0: AMP ni 8 rc 0 pcm0: node 9 type 4 cap 400301 pcm0: nid 9 entries 2 list a05 cur 0 ctr 0 cap 10 s 0 pcm0: AMP ni 9 rc 0 pcm0: node 10 type 3 cap 30090d pcm0: node 11 type 3 cap 300105 pcm0: node 12 type 3 cap 30010d pcm0: node 13 type 4 cap 400181 pcm0: nid 13 entries 1 list b cur 0 ctr 0 cap 3f s 7fffffff pcm0: AMP ni 13 rc 0 pcm0: node 14 type 4 cap 400181 pcm0: nid 14 entries 1 list b cur 0 ctr 0 cap 3f s 7fffffff pcm0: AMP ni 14 rc 0 pcm0: node 15 type 4 cap 400181 pcm0: nid 15 entries 1 list b cur 0 ctr 0 cap 37 s 7fffffff pcm0: AMP ni 15 rc 0 pcm0: node 16 type 4 cap 400181 pcm0: nid 16 entries 1 list b cur 0 ctr 0 cap 1737 s 7fffffff pcm0: AMP ni 16 rc 0 pcm0: node 17 type 4 cap 400104 pcm0: nid 17 entries 1 list 13 cur 0 ctr 0 cap 10 s 0 pcm0: AMP ni 17 rc 8 pcm0: node 18 type 4 cap 400001 pcm0: nid 18 entries 0 list 0 cur 0 ctr 0 cap 20 s 0 pcm0: AMP ni 18 rc 0 pcm0: node 19 type 2 cap 200100 pcm0: node 20 type 7 cap 70000c pcm0: Cap d0401 sf 0 st 0 pcm0: Set 0:2 10 mount option <export> is unknown -- This .signature sanitized for your protection
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060606231025.R50560>