LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software
User Name
Password
Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.

Notices


Reply
  Search this Thread
Old 09-09-2009, 08:40 AM   #1
fnadeau
LQ Newbie
 
Registered: Aug 2009
Posts: 6

Rep: Reputation: Disabled
ALSA, AC97 and CS5535


Hi there,

I'm looking at the following patch commited a while ago:
http://git.kernel.org/?p=linux/kerne...ec6d72cad56bcc

We have the following board: PPM_GX:
http://www.pc104plus.com/products/PPM-GX500.cfm

With kernel 2.6.13.27(prior to the patch), we had no problem adjusting line out volume via /dev/mixer and playing via /dev/dsp.

With kernel 2.6.29.6/30.5/31-rc9(therefore with the patch) we are unable to adjust volume via /dev/dsp. Playing via /dev/dsp is possible but require some trick. Here is what we have found:

Before, we were able to set output level via SOUND_MIXER_VOLUME and SOUND_MIXER_PCM of the /dev/mixer. Any modification to these level where seen on the AC97 chip via /proc/asound/card0/codec97\#0/ac97\#0-0\+regs on register 02 and 18 respectively.

On the newest kernel, modification to:
SOUND_MIXER_VOLUME does not seem to be reflected on AC97
SOUND_MIXER_PCM seems to affect reg 18(OK)
SOUND_MIXER_ALTPCM seems to affect reg 04

Trying as many as I can SOUND_MIXER combination, I can never affect regs 02 of the AC97(main out). Compiling kernel with debug for the /proc/asound/card0/codec97\#0/ac97\#0-0\+regs, I can set he regs 02 using:
Echo 02 0303 > /proc/asound/card0/codec97\#0/ac97\#0-0\+regs
But that is not very convenient.

Reverting the patch to against 2.6.29.6 solve our issue.

What would be require so that our board works with a vanilla kernel?
Whom should I contact to work on the problem with? How to get in touch with kernel driver's developer?

Thanks

Here are some dump from my /proc

[admin@ccu /home]$ cat /proc/asound/card0/codec97\#0/ac97\#0-0
0-0/0: ICEnsemble VT1616i

PCI Subsys Vendor: 0x100b
PCI Subsys Device: 0x002e

Capabilities : -headphone out-
DAC resolution : 18-bit
ADC resolution : 18-bit
3D enhancement : IC Ensemble/KS Waves

Current setup
Mic gain : +0dB [+0dB]
POP path : pre 3D
Sim. stereo : off
3D enhancement : off
Loudness : off
Mono output : MIX
Mic select : Mic1
ADC/DAC loopback : off
Extended ID : codec=0 rev=0 LDAC SDAC CDAC DSA=0 VRA
Extended status : LDAC SDAC CDAC VRA
PCM front DAC : 32000Hz
PCM Surr DAC : 32000Hz
PCM LFE DAC : 32000Hz
PCM ADC : 48000Hz

[admin@ccu /home]$ cat /proc/asound/pcm
00-00: CS5535 Audio : CS5535 Audio : playback 1 : capture 1

[admin@ccu admin]$ cat /proc/asound/cards
0 [Audio ]: cs5535audio - CS5535 Audio
CS5535 Audio cs5535audio at 0xef00, irq 11


[admin@ccu admin]$ lspci -vvv
00:01.0 Class 0600: Unknown device 100b:0028 (rev 21)
Subsystem: Unknown device 100b:0028
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap- 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 248, Cache Line Size: 32 bytes
Region 0: I/O ports at ac1c [size=4]

00:01.1 Class 0300: Unknown device 100b:0030
Subsystem: Unknown device 100b:0030
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap- 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Region 0: Memory at 41000000 (32-bit, non-prefetchable) [size=16M]
Region 1: Memory at 40ffc000 (32-bit, non-prefetchable) [size=16K]
Region 2: Memory at 40ff8000 (32-bit, non-prefetchable) [size=16K]
Region 3: Memory at 40ff4000 (32-bit, non-prefetchable) [size=16K]
Expansion ROM at <unassigned> [disabled]

00:0d.0 Class 0200: Unknown device 8086:1209 (rev 10)
Subsystem: Unknown device 8086:000c
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 64 (2000ns min, 14000ns max), Cache Line Size: 32 bytes
Interrupt: pin A routed to IRQ 11
Region 0: Memory at efffd000 (32-bit, non-prefetchable) [size=4K]
Region 1: I/O ports at ef80 [size=64]
Region 2: Memory at effc0000 (32-bit, non-prefetchable) [size=128K]
Expansion ROM at effb0000 [disabled] [size=64K]
Capabilities: [dc] Power Management version 2
Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
Status: D0 PME-Enable- DSel=0 DScale=2 PME-

00:0f.0 Class 0601: Unknown device 100b:002b (rev 13)
Subsystem: Unknown device 100b:002b
Control: I/O+ Mem- BusMaster- SpecCycle+ MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Region 0: I/O ports at 6000 [size=8]
Region 1: I/O ports at 6100 [size=256]
Region 2: I/O ports at 6200 [size=64]
Region 3: I/O ports at 1000 [size=32]
Region 4: I/O ports at 9d00 [size=128]
Region 5: I/O ports at 9c00 [size=64]

00:0f.2 Class 0101: Unknown device 100b:002d (prog-if 80 [Master])
Subsystem: Unknown device 100b:002d
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 32 bytes
Region 0: [virtual] Memory at 000001f0 (32-bit, non-prefetchable) [disabled] [size=8]
Region 1: [virtual] Memory at 000003f0 (type 3, non-prefetchable) [disabled]
Region 2: [virtual] Memory at 00000170 (32-bit, non-prefetchable) [disabled] [size=8]
Region 3: [virtual] Memory at 00000370 (type 3, non-prefetchable) [disabled]
Region 4: I/O ports at eff0 [size=16]

00:0f.3 Class 0401: Unknown device 100b:002e
Subsystem: Unknown device 100b:002e
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 32 bytes
Interrupt: pin B routed to IRQ 11
Region 0: I/O ports at ef00 [size=128]

00:0f.4 Class 0c03: Unknown device 100b:002f (rev 06) (prog-if 10)
Subsystem: Unknown device 100b:002f
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0 (20000ns max), Cache Line Size: 32 bytes
Interrupt: pin C routed to IRQ 11
Region 0: Memory at effff000 (32-bit, non-prefetchable) [size=4K]

00:0f.5 Class 0c03: Unknown device 100b:002f (rev 06) (prog-if 10)
Subsystem: Unknown device 100b:002f
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0 (20000ns max), Cache Line Size: 32 bytes
Interrupt: pin D routed to IRQ 11
Region 0: Memory at efffe000 (32-bit, non-prefetchable) [size=4K]

Last edited by fnadeau; 09-09-2009 at 01:41 PM. Reason: More specific question
 
  


Reply

Tags
alsa



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
AC97 and alsa mattydee Slackware 22 11-14-2007 12:52 PM
Alsa and AC97 chastulsa Debian 15 07-30-2007 09:19 AM
AC97 with ALSA 10.1 Bobymc Linux - Hardware 2 04-23-2006 11:51 AM
Alsa problems AC97 etc...help!!! GoinEasy9 Linux - General 10 03-23-2004 01:52 PM
ac97+alsa problems JoNaX Linux - Hardware 0 04-05-2003 07:45 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Software

All times are GMT -5. The time now is 02:09 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration