From alsa-devel-owner@alsa.jcu.cz  Wed Jan 20 10:40:09 1999
Received: from entry.jcu.cz (IDENT:perex@entry.jcu.cz [160.217.1.111])
	by marvin.jcu.cz (8.9.1a/8.9.1) with SMTP id KAA03501;
	Wed, 20 Jan 1999 10:36:38 +0100
Date: Wed, 20 Jan 1999 10:36:38 +0100 (CET)
From: Jaroslav Kysela <perex@jcu.cz>
To: Arvind Sankar <arvinds@mit.edu>
cc: alsa-devel@alsa.jcu.cz
Subject: Re: Some points about the driver
In-Reply-To: <19990119173708.A602@anjala.mit.edu>
Message-ID: <Pine.LNX.3.96.990120095940.26780C-100000@entry.jcu.cz>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Reply-To: alsa-devel@alsa.jcu.cz
Sender: alsa-devel-owner@alsa.jcu.cz
Precedence: list

On Tue, 19 Jan 1999, Arvind Sankar wrote:

> Hi. I have a Creative Ensoniq AudioPCI. It has a ES1371 chip. According to
> Creative, the thing has 3d surround support, so I was looking through
> the driver to see why it isn't detected.
> 
> I discovered that ac97_codec.c:snd_ac97_mixer calls snd_ac97_try_volume_mix to
> try the 3D features before reading hardware capabilites from the card.  But the
> latter function, in certain cases, viz AC97_MASTER_TONE, AC97_HEADPHONE, and
> AC97_3D_CONTROL depends on what the ac97->caps value is. This value would be
> zero on all calls.

Oops. I fixed it (hopefully).

> So I moved the initialization of caps up, before the calls to
> snd_ac97_try_volume_mix, but the hardware returns 0. Now, either Creative
> has a different way of implementing 3D surround, which doesn't show up in
> the capabilities reg, or something else is the matter. I tried setting
> the AC97_3D_CONTROL register, and values get written and can be read back.
> Does that indicate anything useful?

Maybe there is needed change detection method for a 3D Enhancement.
You can also get the AC'97 specification (from Intel or ALSA FTP site),
for more details.

See to: Reset register 0x00 (which returns capabilities) - if SE4-SE0 is
        zero -> there is no 3D Stereo Enhancement
See to: General Purpose Register 0x20 - bit 3D (0x2000), must be set for
        3D Sound. This bit should be controlled over switch interface
        from alsactl or xamixer.
See to: 3D Control Register 0x22

							Jaroslav

-----
Jaroslav Kysela <perex@jcu.cz>
Academic Computer Centre, University of South Bohemia
Branisovska 31, C. Budejovice, CZ-370 05 Czech Republic


