Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 16 Sep 2000 12:48:43 -0700 (PDT)
From:      Doug Ambrisko <ambrisko@whistle.com>
To:        Taku YAMAMOTO <taku@cent.saitama-u.ac.jp>
Cc:        Doug Ambrisko <ambrisko@whistle.com>, Cameron Grant <gandalf@vilnya.demon.co.uk>, multimedia@FreeBSD.ORG
Subject:   Re: AC97_MIXER_MONO (was Re: Anyone with i810 hardware?)
Message-ID:  <200009161948.MAA43474@whistle.com>
In-Reply-To: <rtglmwtufia.wl@dhcp-1.cent.saitama-u.ac.jp> from Taku YAMAMOTO at "Sep 16, 2000 01:28:45 pm"

next in thread | previous in thread | raw e-mail | index | archive | help
Taku YAMAMOTO writes:
| At Fri, 15 Sep 2000 20:46:07 -0700 (PDT),
| Doug Ambrisko <ambrisko@whistle.com> wrote:
| > BTW I have a question on in the ac97.c.  In ac97.c their is the
| > ac97mixtable_entry.  This maps various things to the real parts.
| > Now I have a reason to want to change SOUND_MIXER_VOLUME from
| > using AC97_MIX_MASTER to AC97_MIX_MONO.  I can do this and it basically
| 
| Why do you want to?

We have this motherboard that needs to be embedded in a product.  We would 
like to have sound builtin and the only internal header that is connected 
to the codec is the modem connector which has Mono out (or Phone out).
To connect to the standard audio out we would have to connect to the ATX
back connectors on the outside of the chasis.  Also since we only have
one speaker we don't need the stereo output.

| > works except in ac97.c it uses AC97_MIX_MASTER explicitly.  Now I changed
| > that to use the structure and that works fine so now changing
| > the mixer SOUND_MIXER_VOLUME changes the Mono output.  However, during
| > intialization in ich.c it uses AC97_MIX_MASTER directly I would prefer
| > it use ac97mixtable_entry structure.  This currently isn't possible
| > since the ac97mixtable_entry structure is static.
| (snip)
| > Any ideas on this.
| 
| How about mapping SOUND_MIXER_PHONEOUT to AC97_MIX_MONO?
| With having SOUND_MIXER_PHONEOUT initial value in
| snd_mixerdefaults[] (/sys/dev/sound/pcm/mixer.c) will work.

Actually I have done that, and should work however it would require
application level support, for example "mixer" doesn't support
modifying that parameter:
  770z% mixer
  Mixer synth    is currently set to  75:75
  Mixer pcm      is currently set to  75:75
  Mixer speaker  is currently set to  75:75
  Mixer line     is currently set to  75:75
  Mixer mic      is currently set to   0:0
  Mixer cd       is currently set to  75:75
  Mixer mix      is currently set to   0:0
  Mixer igain    is currently set to   0:0
  770z% 

It is something that I considered and may do however it requires application
changes.  Just mapping AC97_MIX_MONO to SOUND_MIXER_VOLUME then lets
me adjust things via "mixer vol" and requires no application changes
(but does require a small kernel change).

Also the reason that I like the idea of using ac97mixtable_entry for
everything is that it gives a clean consistant point of reference.
I found in ac97.c that uses both the AC97_MIX_MASTER and 
ac97mixtable_entry[SOUND_MIXER_VOLUME].  It was a trivial change
to switch AC97_MIX_MASTER to be ac97mixtable_entry[SOUND_MIXER_VOLUME].reg
and then get rid of AC97_MIX_MASTER in the code.

Doug A.


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-multimedia" in the body of the message




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