[PATCH] wm8962: add a simple DMIC enable control

Martin Kepplinger martin.kepplinger at puri.sm
Fri Feb 4 10:43:53 CET 2022


Am Donnerstag, dem 03.02.2022 um 11:05 +0000 schrieb Charles Keepax:
> On Thu, Feb 03, 2022 at 10:57:44AM +0100, Martin Kepplinger wrote:
> > Am Mittwoch, dem 02.02.2022 um 13:35 +0000 schrieb Charles Keepax:
> > > On Wed, Feb 02, 2022 at 12:55:04PM +0100, Martin Kepplinger
> > > wrote:
> > > > Am Mittwoch, dem 02.02.2022 um 10:46 +0000 schrieb Charles
> > > > Keepax:
> > > > > On Wed, Feb 02, 2022 at 11:17:34AM +0100, Martin Kepplinger
> > > > > wrote:
> > > > > > Am Mittwoch, dem 02.02.2022 um 09:53 +0000 schrieb Charles
> > > > > > Keepax:
> > > > > > > On Tue, Feb 01, 2022 at 04:01:13PM +0100, Martin
> > > > > > > Kepplinger
> > > > > > > wrote:
> > > > Volume / sensitivity of Analog input is too low, I saw that
> > > > before.
> > > > What would you try to change that?
> > > > 
> > > 
> > > Hmm... you say you saw this before? I assume the input volume
> > > is always low, not just low sometimes? I would probably start by
> > > checking the voltage you have on the micbias, make sure that is
> > > as expected. Does the signal coming into the IN3R pin look low on
> > > a scope or is it just the level after it has been through the ADC
> > > on the chip that seems low?
> > 
> > Literally *no* effort went into this yet :) All I see is when I set
> > the
> > "headset mic" volume to max in gnome settings, the recorded volume
> > is
> > something like "almost usable", so that's off a bit.
> > 
> > I can't easily measure, but different headset mics produce similar
> > volume.
> > 
> 
> No problem keep me posted any additional tests/info you guys get
> might help out here. Looking through your routing I think you are
> sending the mic directly to the speaker, I would definitely test
> capturing the signal over the I2S as well to confirm it is
> consistently a low volume on both paths.
> 
> > :) thank you very much so far. You already really helped. We can
> > even
> > make the mic available now (to enable manually by the user) while
> > we
> > look into the volume and detection.
> > 
> 
> Happy to help, please feel free to keep the questions/debug info
> coming.

yes my bad :) If I may, just let me describe my situation again and see
whether anything else comes to your mind.

It's weird but I when I set "Capture Volume" to 60 instead of 29, I
didn't hear a difference.

So far I don't hear a difference when setting "INPGAR IN1R Switch" on.

Does "Value" in this ucm description make any sense to you?

EnableSequence [                                                      
                cset "name='Digital Capture Volume' 127,127"          
                cset "name='Capture Volume' 63,63"                    
                cset "name='MIXINR IN3R Switch' on"                   
                cset "name='MIXINR IN3R Volume' 7"                    
                cset "name='INPGAR IN1R Switch' on"                   
                cset "name='Input Mode' Analog"                       
        ]                                                             
                                                                      
DisableSequence [                                                     
                cset "name='INPGAR IN1R Switch' off"                  
                cset "name='MIXINR IN3R Switch' off"                  
                cset "name='MIXINR IN3R Volume' 0"                    
                cset "name='Input Mode' Digital"                      
        ]                                                             
                                                                      
Value {                                                               
                CapturePriority "100"                                 
                CaptureChannels "2"                                   
                CaptureSwitch "name='MIXINR IN3R Volume'"             
                CaptureSwitch "name='MIXINR IN3R Switch'"             
                CapturePCM "hw:${CardId},0"                           
                JackControl "Headphones Jack"                         
        }


Let me just append the correct amixer contents where I hear my usual
"quiet and bad signal" recording:


-------------- next part --------------
numid=1,iface=CARD,name='Headphones Jack'
  ; type=BOOLEAN,access=r-------,values=1
  : values=on
numid=30,iface=MIXER,name='Headphone Aux Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=7,step=0
  : values=0,0
  | dBscale-min=-7.00dB,step=1.00dB,mute=0
numid=31,iface=MIXER,name='Headphone Mixer Switch'
  ; type=BOOLEAN,access=rw------,values=2
  : values=off,off
numid=29,iface=MIXER,name='Headphone ZC Switch'
  ; type=BOOLEAN,access=rw------,values=2
  : values=off,off
numid=28,iface=MIXER,name='Headphone Switch'
  ; type=BOOLEAN,access=rw------,values=2
  : values=on,on
numid=27,iface=MIXER,name='Headphone Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=127,step=0
  : values=121,121
  | dBscale-min=-121.00dB,step=1.00dB,mute=1
numid=25,iface=MIXER,name='ADC High Performance Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=on
numid=22,iface=MIXER,name='ADC L/R Swap Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=24,iface=MIXER,name='ADC Monomix Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=15,iface=MIXER,name='Capture HPF Cutoff'
  ; type=INTEGER,access=rw------,values=1,min=0,max=7,step=0
  : values=0
numid=14,iface=MIXER,name='Capture HPF Mode'
  ; type=ENUMERATED,access=rw------,values=1,items=2
  ; Item #0 'Hi-fi'
  ; Item #1 'Application'
  : values=0
numid=13,iface=MIXER,name='Capture HPF Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=on
numid=17,iface=MIXER,name='Capture LHPF Mode'
  ; type=ENUMERATED,access=rw------,values=1,items=2
  ; Item #0 'LPF'
  ; Item #1 'HPF'
  : values=0
numid=16,iface=MIXER,name='Capture LHPF Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=12,iface=MIXER,name='Capture ZC Switch'
  ; type=BOOLEAN,access=rw------,values=2
  : values=on,on
numid=11,iface=MIXER,name='Capture Switch'
  ; type=BOOLEAN,access=rw------,values=2
  : values=off,off
numid=10,iface=MIXER,name='Capture Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=63,step=0
  : values=63,63
  | dBscale-min=-23.25dB,step=0.75dB,mute=0
numid=50,iface=MIXER,name='3D Coefficients'
  ; type=BYTES,access=rw------,values=8
  : values=0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
numid=49,iface=MIXER,name='3D Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=63,iface=MIXER,name='ALC Coefficients'
  ; type=BYTES,access=rw------,values=8
  : values=0x00,0x7b,0x00,0x00,0x1c,0x32,0x32,0x00
numid=62,iface=MIXER,name='ALC Switch'
  ; type=BOOLEAN,access=rw------,values=2
  : values=off,off
numid=26,iface=MIXER,name='Beep Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=15,step=0
  : values=0
  | dBscale-min=-96.00dB,step=6.00dB,mute=1
numid=20,iface=MIXER,name='DAC High Performance Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=21,iface=MIXER,name='DAC L/R Swap Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=23,iface=MIXER,name='DAC Monomix Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=52,iface=MIXER,name='DF1 Coefficients'
  ; type=BYTES,access=rw------,values=14
  : values=0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
numid=51,iface=MIXER,name='DF1 Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=54,iface=MIXER,name='DRC Coefficients'
  ; type=BYTES,access=rw------,values=10
  : values=0x00,0x0c,0x09,0x25,0x00,0x00,0x00,0x00,0x00,0x00
numid=53,iface=MIXER,name='DRC Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=9,iface=MIXER,name='Digital Capture Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=127,step=0
  : values=127,127
  | dBscale-min=-72.00dB,step=0.75dB,mute=1
numid=19,iface=MIXER,name='Digital Playback Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=127,step=0
  : values=100,100
  | dBscale-min=-72.00dB,step=0.75dB,mute=1
numid=41,iface=MIXER,name='EQ Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=42,iface=MIXER,name='EQ1 Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=31,step=0
  : values=12,12
  | dBscale-min=-12.00dB,step=1.00dB,mute=0
numid=43,iface=MIXER,name='EQ2 Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=31,step=0
  : values=12,12
  | dBscale-min=-12.00dB,step=1.00dB,mute=0
numid=44,iface=MIXER,name='EQ3 Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=31,step=0
  : values=12,12
  | dBscale-min=-12.00dB,step=1.00dB,mute=0
numid=45,iface=MIXER,name='EQ4 Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=31,step=0
  : values=12,12
  | dBscale-min=-12.00dB,step=1.00dB,mute=0
numid=46,iface=MIXER,name='EQ5 Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=31,step=0
  : values=13,13
  | dBscale-min=-12.00dB,step=1.00dB,mute=0
numid=47,iface=MIXER,name='EQL Coefficients'
  ; type=BYTES,access=rw------,values=36
  : values=0x0f,0xca,0x04,0x00,0x00,0xd8,0x1e,0xb5,0xf1,0x45,0x0b,0x75,0x01,0xc5,0x1c,0x58,0xf3,0x73,0x0a,0x54,0x05,0x58,0x16,0x8e,0xf8,0x29,0x07,0xad,0x11,0x03,0x05,0x64,0x05,0x59,0x40,0x00
numid=48,iface=MIXER,name='EQR Coefficients'
  ; type=BYTES,access=rw------,values=36
  : values=0x0f,0xca,0x04,0x00,0x00,0xd8,0x1e,0xb5,0xf1,0x45,0x0b,0x75,0x01,0xc5,0x1c,0x58,0xf3,0x73,0x0a,0x54,0x05,0x58,0x16,0x8e,0xf8,0x29,0x07,0xad,0x11,0x03,0x05,0x64,0x05,0x59,0x40,0x00
numid=61,iface=MIXER,name='HD Bass Coefficients'
  ; type=BYTES,access=rw------,values=60
  : values=0x00,0x02,0xbd,0x12,0x00,0x7c,0x58,0x6c,0x00,0x53,0x81,0x21,0x00,0x3f,0x8b,0xd8,0x00,0x32,0xf5,0x2d,0x00,0x65,0xac,0x8c,0x00,0x6b,0xe0,0x87,0x00,0x72,0x14,0x83,0x00,0x72,0x14,0x83,0x00,0x43,0x35,0x25,0x00,0x06,0x6a,0x4a,0x00,0x43,0x60,0x79,0x00,0x08,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x59,0x99,0x9a
numid=60,iface=MIXER,name='HD Bass Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=59,iface=MIXER,name='HPF Coefficients'
  ; type=BYTES,access=rw------,values=2
  : values=0x00,0x00
numid=57,iface=MIXER,name='HPF1 Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=58,iface=MIXER,name='HPF2 Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=97,iface=MIXER,name='HPMIXL DACL Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=98,iface=MIXER,name='HPMIXL DACR Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=101,iface=MIXER,name='HPMIXL IN4L Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=32,iface=MIXER,name='HPMIXL IN4L Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=7,step=0
  : values=7
  | dBscale-min=-15.00dB,step=3.00dB,mute=0
numid=102,iface=MIXER,name='HPMIXL IN4R Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=33,iface=MIXER,name='HPMIXL IN4R Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=7,step=0
  : values=7
  | dBscale-min=-15.00dB,step=3.00dB,mute=0
numid=99,iface=MIXER,name='HPMIXL MIXINL Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=34,iface=MIXER,name='HPMIXL MIXINL Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=1,step=0
  : values=1
  | dBscale-min=-6.00dB,step=6.00dB,mute=0
numid=100,iface=MIXER,name='HPMIXL MIXINR Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=35,iface=MIXER,name='HPMIXL MIXINR Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=1,step=0
  : values=1
  | dBscale-min=-6.00dB,step=6.00dB,mute=0
numid=103,iface=MIXER,name='HPMIXR DACL Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=104,iface=MIXER,name='HPMIXR DACR Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=107,iface=MIXER,name='HPMIXR IN4L Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=36,iface=MIXER,name='HPMIXR IN4L Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=7,step=0
  : values=7
  | dBscale-min=-15.00dB,step=3.00dB,mute=0
numid=108,iface=MIXER,name='HPMIXR IN4R Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=37,iface=MIXER,name='HPMIXR IN4R Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=7,step=0
  : values=7
  | dBscale-min=-15.00dB,step=3.00dB,mute=0
numid=105,iface=MIXER,name='HPMIXR MIXINL Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=38,iface=MIXER,name='HPMIXR MIXINL Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=1,step=0
  : values=1
  | dBscale-min=-6.00dB,step=6.00dB,mute=0
numid=106,iface=MIXER,name='HPMIXR MIXINR Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=39,iface=MIXER,name='HPMIXR MIXINR Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=1,step=0
  : values=1
  | dBscale-min=-6.00dB,step=6.00dB,mute=0
numid=109,iface=MIXER,name='HPOUTL PGA'
  ; type=ENUMERATED,access=rw------,values=1,items=2
  ; Item #0 'DAC'
  ; Item #1 'Mixer'
  : values=0
numid=110,iface=MIXER,name='HPOUTR PGA'
  ; type=ENUMERATED,access=rw------,values=1,items=2
  ; Item #0 'DAC'
  ; Item #1 'Mixer'
  : values=0
numid=80,iface=MIXER,name='INPGAL IN1L Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=81,iface=MIXER,name='INPGAL IN2L Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=82,iface=MIXER,name='INPGAL IN3L Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=83,iface=MIXER,name='INPGAL IN4L Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=84,iface=MIXER,name='INPGAR IN1R Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=on
numid=85,iface=MIXER,name='INPGAR IN2R Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=86,iface=MIXER,name='INPGAR IN3R Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=on
numid=87,iface=MIXER,name='INPGAR IN4R Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=2,iface=MIXER,name='Input Mixer Switch'
  ; type=BOOLEAN,access=rw------,values=2
  : values=off,on
numid=94,iface=MIXER,name='Input Mode'
  ; type=ENUMERATED,access=rw------,values=1,items=2
  ; Item #0 'Analog'
  ; Item #1 'Digital'
  : values=0
numid=88,iface=MIXER,name='MIXINL IN2L Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=3,iface=MIXER,name='MIXINL IN2L Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=7,step=0
  : values=7
  | dBscale-min=-15.00dB,step=3.00dB,mute=0
numid=89,iface=MIXER,name='MIXINL IN3L Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=5,iface=MIXER,name='MIXINL IN3L Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=7,step=0
  : values=7
  | dBscale-min=-15.00dB,step=3.00dB,mute=0
numid=90,iface=MIXER,name='MIXINL PGA Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=on
numid=4,iface=MIXER,name='MIXINL PGA Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=7,step=0
  : values=7
  | dBrange-
    rangemin=0,,rangemax=1
      | dBscale-min=0.00dB,step=6.00dB,mute=0
    rangemin=2,,rangemax=2
      | dBscale-min=13.00dB,step=13.00dB,mute=0
    rangemin=3,,rangemax=4
      | dBscale-min=18.00dB,step=2.00dB,mute=0
    rangemin=5,,rangemax=5
      | dBscale-min=24.00dB,step=0.00dB,mute=0
    rangemin=6,,rangemax=7
      | dBscale-min=27.00dB,step=3.00dB,mute=0

numid=91,iface=MIXER,name='MIXINR IN2R Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=6,iface=MIXER,name='MIXINR IN2R Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=7,step=0
  : values=7
  | dBscale-min=-15.00dB,step=3.00dB,mute=0
numid=92,iface=MIXER,name='MIXINR IN3R Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=on
numid=8,iface=MIXER,name='MIXINR IN3R Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=7,step=0
  : values=7
  | dBscale-min=-15.00dB,step=3.00dB,mute=0
numid=93,iface=MIXER,name='MIXINR PGA Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=on
numid=7,iface=MIXER,name='MIXINR PGA Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=7,step=0
  : values=7
  | dBrange-
    rangemin=0,,rangemax=1
      | dBscale-min=0.00dB,step=6.00dB,mute=0
    rangemin=2,,rangemax=2
      | dBscale-min=13.00dB,step=13.00dB,mute=0
    rangemin=3,,rangemax=4
      | dBscale-min=18.00dB,step=2.00dB,mute=0
    rangemin=5,,rangemax=5
      | dBscale-min=24.00dB,step=0.00dB,mute=0
    rangemin=6,,rangemax=7
      | dBscale-min=27.00dB,step=3.00dB,mute=0

numid=111,iface=MIXER,name='SPKOUTL Mixer DACL Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=72,iface=MIXER,name='SPKOUTL Mixer DACL Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=1,step=0
  : values=0
  | dBscale-min=-6.00dB,step=6.00dB,mute=0
numid=112,iface=MIXER,name='SPKOUTL Mixer DACR Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=73,iface=MIXER,name='SPKOUTL Mixer DACR Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=1,step=0
  : values=0
  | dBscale-min=-6.00dB,step=6.00dB,mute=0
numid=115,iface=MIXER,name='SPKOUTL Mixer IN4L Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=68,iface=MIXER,name='SPKOUTL Mixer IN4L Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=7,step=0
  : values=7
  | dBscale-min=-15.00dB,step=3.00dB,mute=0
numid=116,iface=MIXER,name='SPKOUTL Mixer IN4R Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=69,iface=MIXER,name='SPKOUTL Mixer IN4R Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=7,step=0
  : values=7
  | dBscale-min=-15.00dB,step=3.00dB,mute=0
numid=113,iface=MIXER,name='SPKOUTL Mixer MIXINL Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=70,iface=MIXER,name='SPKOUTL Mixer MIXINL Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=1,step=0
  : values=1
  | dBscale-min=-6.00dB,step=6.00dB,mute=0
numid=114,iface=MIXER,name='SPKOUTL Mixer MIXINR Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=71,iface=MIXER,name='SPKOUTL Mixer MIXINR Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=1,step=0
  : values=1
  | dBscale-min=-6.00dB,step=6.00dB,mute=0
numid=123,iface=MIXER,name='SPKOUTL PGA'
  ; type=ENUMERATED,access=rw------,values=1,items=2
  ; Item #0 'DAC'
  ; Item #1 'Mixer'
  : values=1
numid=117,iface=MIXER,name='SPKOUTR Mixer DACL Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=78,iface=MIXER,name='SPKOUTR Mixer DACL Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=1,step=0
  : values=0
  | dBscale-min=-6.00dB,step=6.00dB,mute=0
numid=118,iface=MIXER,name='SPKOUTR Mixer DACR Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=79,iface=MIXER,name='SPKOUTR Mixer DACR Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=1,step=0
  : values=0
  | dBscale-min=-6.00dB,step=6.00dB,mute=0
numid=121,iface=MIXER,name='SPKOUTR Mixer IN4L Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=74,iface=MIXER,name='SPKOUTR Mixer IN4L Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=7,step=0
  : values=7
  | dBscale-min=-15.00dB,step=3.00dB,mute=0
numid=122,iface=MIXER,name='SPKOUTR Mixer IN4R Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=75,iface=MIXER,name='SPKOUTR Mixer IN4R Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=7,step=0
  : values=7
  | dBscale-min=-15.00dB,step=3.00dB,mute=0
numid=119,iface=MIXER,name='SPKOUTR Mixer MIXINL Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=76,iface=MIXER,name='SPKOUTR Mixer MIXINL Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=1,step=0
  : values=1
  | dBscale-min=-6.00dB,step=6.00dB,mute=0
numid=120,iface=MIXER,name='SPKOUTR Mixer MIXINR Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=77,iface=MIXER,name='SPKOUTR Mixer MIXINR Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=1,step=0
  : values=1
  | dBscale-min=-6.00dB,step=6.00dB,mute=0
numid=124,iface=MIXER,name='SPKOUTR PGA'
  ; type=ENUMERATED,access=rw------,values=1,items=2
  ; Item #0 'DAC'
  ; Item #1 'Mixer'
  : values=1
numid=95,iface=MIXER,name='STL'
  ; type=ENUMERATED,access=rw------,values=1,items=3
  ; Item #0 'None'
  ; Item #1 'Left'
  ; Item #2 'Right'
  : values=0
numid=96,iface=MIXER,name='STR'
  ; type=ENUMERATED,access=rw------,values=1,items=3
  ; Item #0 'None'
  ; Item #1 'Left'
  ; Item #2 'Right'
  : values=0
numid=18,iface=MIXER,name='Sidetone Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=12,step=0
  : values=0,0
  | dBscale-min=-36.00dB,step=3.00dB,mute=0
numid=40,iface=MIXER,name='Speaker Boost Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=7,step=0
  : values=6
  | dBrange-
    rangemin=0,,rangemax=6
      | dBscale-min=0.00dB,step=1.50dB,mute=0
    rangemin=7,,rangemax=7
      | dBscale-min=12.00dB,step=0.00dB,mute=0

numid=67,iface=MIXER,name='Speaker Mixer Switch'
  ; type=BOOLEAN,access=rw------,values=2
  : values=off,off
numid=65,iface=MIXER,name='Speaker Switch'
  ; type=BOOLEAN,access=rw------,values=2
  : values=off,off
numid=64,iface=MIXER,name='Speaker Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=127,step=0
  : values=121,121
  | dBscale-min=-121.00dB,step=1.00dB,mute=1
numid=66,iface=MIXER,name='Speaker ZC Switch'
  ; type=BOOLEAN,access=rw------,values=2
  : values=off,off
numid=56,iface=MIXER,name='VSS Coefficients'
  ; type=BYTES,access=rw------,values=296
  : values=0x00,0x8c,0x02,0x00,0x00,0x35,0x07,0x00,0x00,0x3a,0x41,0x00,0x00,0x8b,0x7d,0x00,0x00,0x3a,0x41,0x00,0x00,0x8c,0xfe,0xe8,0x00,0x78,0x00,0x00,0x00,0x3f,0xb2,0x60,0x00,0x2d,0x18,0x18,0x00,0x20,0x00,0x00,0x00,0xf1,0x83,0x40,0x00,0xfb,0x83,0x00,0x00,0xee,0xae,0xc0,0x00,0xfb,0xac,0x40,0x00,0xf1,0x7f,0x80,0x00,0xf4,0x3b,0x40,0x00,0xf5,0xfb,0x00,0x00,0xea,0x10,0xc0,0x00,0xfc,0xc5,0x80,0x00,0xe2,0x75,0xc0,0x00,0x04,0xb4,0x80,0x00,0xd4,0xf9,0x80,0x00,0x04,0x91,0x40,0x00,0xd8,0xa4,0x80,0x00,0x02,0x3d,0xc0,0x00,0xcf,0x7a,0x80,0x00,0xdc,0x06,0x00,0x00,0xf2,0xda,0xc0,0x00,0xba,0xf3,0x40,0x00,0x0a,0x79,0x40,0x00,0x1c,0x06,0x80,0x00,0xfd,0x2d,0x00,0x00,0x1c,0xe8,0x40,0x00,0x0d,0xdc,0x40,0x00,0xfc,0x9d,0x00,0x00,0x09,0x55,0x80,0x00,0xfe,0x7e,0x80,0x00,0x0e,0xab,0x40,0x00,0xf9,0x98,0x80,0x00,0x09,0x87,0xc0,0x00,0xfd,0x2c,0x40,0x00,0x09,0x48,0x00,0x00,0x03,0x5f,0x40,0x00,0x00,0x87,0x00,0x00,0xfa,0xe4,0xc0,0x00,0x00,0x0b,0x40,0x00,0x04,0xe1,0x80,0x00,0x01,0x1f,0x40,0x00,0xf8,0xb0,0x00,0x00,0xfb,0xcb,0xc0,0x00,0x04,0xf3,0x80,0x00,0x07,0xdf,0x40,0x00,0xff,0x07,0x00,0x00,0xef,0xd7,0x00,0x00,0xfb,0xaf,0x40,0x00,0x10,0x8a,0x80,0x00,0x11,0x07,0xc0,0x00,0xe0,0x08,0x00,0x00,0xd2,0x76,0x00,0x00,0x20,0xcf,0x40,0x00,0x30,0x23,0x40,0x00,0xfd,0x69,0xc0,0x00,0x28,0x35,0x00,0x00,0x06,0x33,0x00,0x00,0xd9,0xf6,0xc0,0x00,0xf3,0x33,0x40,0x00,0x0f,0x42,0x00,0x00,0x04,0x0c,0x80,0x00,0xfb,0x3f,0x80,0x00,0xf7,0x57,0xc0,0x00,0x03,0x54,0x00,0x00,0x00,0xc6,0xc0,0x00,0x03,0x12,0xc0,0x00,0xfd,0x85,0x80
numid=55,iface=MIXER,name='VSS Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off


More information about the Alsa-devel mailing list