openvortex-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Openvortex-dev] Re: Re: [ALSA - driver 0001138]: errors when inst


From: Raymond
Subject: Re: [Openvortex-dev] Re: Re: [ALSA - driver 0001138]: errors when installing au8820 modules
Date: Thu, 09 Jun 2005 16:54:00 +0800
User-agent: Mozilla/5.0 (X11; U; Linux i686; zh-CN; rv:1.4.3) Gecko/20041005



Igor Kovalenko wrote:
Raymond wrote:


Well, I've not stated the problem clearly enough.
Once set, volume stays as it should. The problem is that
PCM volume is:
1% - at lowest audible level
25% - at about 50% audible level
49% - at about max audible level
51% - at lowest audible level
75% - at about 50% audible level
99% - at about max audible level
- that is what I described as low-high-low-high.
On the other hand, Master volume behaves as expected.



What is the value of comment.range of 'PCM Playback Volume' in
/etc/asound.state for your STAC9704 (au8820) ?


According to 9704SPEC.pdf, it should be '0-31' ( 5 bits ) for STAC9704
PCM Out volume.



        control.21 {
                comment.access 'read write'
                comment.type INTEGER
                comment.count 2
                comment.range '0 - 63'
                iface MIXER
                name 'PCM Playback Volume'
                value.0 21
                value.1 21
        }

Do you mean AC97 is incorrectly reporting 0...63 range?


Refer to notes in page 25 of 9704SPEC.pdf

1) All registers not shown and bits contain an X are resserved.
2) Any reserved bits, marked X, can be written to but are don't care
upon read back.

Bits 14,13,7,6,5 of PCM Out Volume of STAC9704 are marked X.


$ cat /proc/asound/au8820/codec97#0/ac97#0-0+regs
0:00 = 6940
0:02 = 1414
0:04 = 8000
0:06 = 801f
0:08 = ffff
0:0a = 9f1f
0:0c = 801f
0:0e = 841f
0:10 = 9f1f
0:12 = 1414
0:14 = 9f1f
0:16 = 9f1f
0:18 = 0f0f
0:1a = 1010
0:1c = 0000
0:1e = 0000
0:20 = 0200
0:22 = 0402
0:24 = 0000
0:26 = 800f
0:28 = ffff                <---- ext_id
0:2a = ffff
0:2c = ffff
0:2e = ffff
0:30 = ffff
0:32 = ffff
0:34 = ffff
0:36 = ffff
0:38 = ffff
0:3a = ffff
0:3c = 0000
0:3e = 0000
0:40 = 0000
0:42 = 0000
0:44 = 0000
0:46 = 0000
0:48 = 0000
0:4a = 0000
0:4c = 0000
0:4e = 0000
0:50 = 0000
0:52 = 0000
0:54 = 0000
0:56 = 0000
0:58 = 0000
0:5a = 0000
0:5c = 0000
0:5e = 0000
0:60 = 0000
0:62 = 0000
0:64 = 0000
0:66 = 0000
0:68 = 0000
0:6a = 0000
0:6c = 0000
0:6e = 0000
0:70 = 0000
0:72 = 0000
0:74 = 0000
0:76 = 0000
0:78 = 0000
0:7a = 0000
0:7c = 8384
0:7e = 7605

Result is:
vortex codec=ffff8100286df600 ext_id=00000000 isquad=00000000

I conquer isquad is false.


It is quite strange that vortex->isquad is false

Does it mean that ac97 registers are cached ?


or check the values *low_max and *high_max return by
check_volume_resolution()

http://cvs.sourceforge.net/viewcvs.py/alsa/alsa-kernel/pci/ac97/ac97_codec.c?r1=1.163&r2=1.164




Do this problem also exist in ALSA 1.0.8 ?









reply via email to

[Prev in Thread] Current Thread [Next in Thread]