File GOOGLE-Quawks-1.0-Quawks-HiFi.conf of Package alsa.15499

# command-line sequence to switch playback/capture
# alsaucm -c chtmax98090 set _verb HiFi set _enadev Headphone
# alsaucm -c chtmax98090 set _verb HiFi set _enadev Speakers
# alsaucm -c chtmax98090 set _verb HiFi set _enadev HeadsetMic
# alsaucm -c chtmax98090 set _verb HiFi set _enadev InternalMic


SectionVerb {

	EnableSequence [
		cdev "hw:chtmax98090"

		# media mixer settings
		#   compress
		cset "name='media0_in Gain 0 Switch' on"
		cset "name='media0_in Gain 0 Volume' 0"

		#   normal
		cset "name='media1_in Gain 0 Switch' on"
		cset "name='media1_in Gain 0 Volume' 0"

		#   deep buffer
		cset "name='media3_in Gain 0 Switch' on"
		cset "name='media3_in Gain 0 Volume' 0"

		cset "name='media0_out mix 0 media0_in Switch' on"
		cset "name='media0_out mix 0 media1_in Switch' on"
		cset "name='media0_out mix 0 media2_in Switch' off"
		cset "name='media0_out mix 0 media3_in Switch' on"

		cset "name='pcm0_in Gain 0 Switch' on"
		cset "name='pcm0_in Gain 0 Volume' 0"

		cset "name='pcm1_in Gain 0 Switch' off"
		cset "name='pcm1_in Gain 0 Volume' 0%"

		# codec0_out settings (used if ssp2 is connected to aif1)
		cset "name='codec_out0 mix 0 pcm0_in Switch' on"
		cset "name='codec_out0 Gain 0 Switch' on"
		cset "name='codec_out0 Gain 0 Volume' 0"


		# input settings
		# pcm1_out settings

		# input used when SSP2 is connected
		cset "name='codec_in0 Gain 0 Switch' on"
		cset "name='codec_in0 Gain 0 Volume'  0"

		cset "name='pcm1_out mix 0 codec_in0 Switch' on"

		cset "name='pcm1_out Gain 0 Switch' on"
		cset "name='pcm1_out Gain 0 Volume' 0"

		cset "name='Left Speaker Mixer Left DAC Switch' on"
		cset "name='Right Speaker Mixer Right DAC Switch' on"
		cset "name='Digital EQ 3 Band Switch' off"
		cset "name='Digital EQ 5 Band Switch' off"
		cset "name='Digital EQ 7 Band Switch' off"
		cset "name='Biquad Switch' off"
		cset "name='Filter Mode' Music"
		cset "name='ADC Oversampling Rate' 0"

		cset "name='DMIC Mux' DMIC"
		cset "name='MIC2 Mux' IN34"
		cset "name='MIC2 Volume' 10"
		cset "name='MIC2 Boost Volume' 0"

		cset "name='ADCR Boost Volume' 4"
		cset "name='ADCL Boost Volume' 4"
		cset "name='ADCR Volume' 11"
		cset "name='ADCL Volume' 11"

# following 2 lines commented by gabriel_3
#               cset "name='Headphone Volume' 10"
#               cset "name='Speaker Volume' 10"

# following 2 lines added by gabriel_3 (volume values modified)
		cset "name='Headphone Volume' 25"
		cset "name='Speaker Volume' 32"

		cset "name='Speaker Left Mixer Volume' 3"
		cset "name='Speaker Right Mixer Volume' 3"
		cset "name='Record Path DC Blocking' on"
		cset "name='Playback Path DC Blocking' on"

		cset "name='Headphone Left Switch' off"
		cset "name='Headphone Right Switch' off"
		cset "name='Headphone Switch' off"

		cset "name='Speaker Left Switch' off"
		cset "name='Speaker Right Switch' off"
		cset "name='Ext Spk Switch' off"

		cset "name='Headset Mic Switch' off"
		cset "name='Int Mic Switch' off"
	]

	DisableSequence [
	]

	# ALSA PCM
	Value {
		# ALSA PCM device for HiFi
		PlaybackPCM "hw:chtmax98090"
		CapturePCM  "hw:chtmax98090"
	}
}

SectionDevice."Headphone" {
	Comment "Headphone"

	ConflictingDevice [
		"Speakers"
	]

	Value {
		JackControl "Headphone Jack"
		JackHWMute "Speakers"
	}

	EnableSequence [
		cdev "hw:chtmax98090"

		cset "name='Headphone Left Switch' on"
		cset "name='Headphone Right Switch' on"
		cset "name='Headphone Switch' on"

	]
	DisableSequence [
		cdev "hw:chtmax98090"

		cset "name='Headphone Left Switch' off"
		cset "name='Headphone Right Switch' off"
		cset "name='Headphone Switch' off"

	]

	Value {
		PlaybackChannels 2
	}
}

SectionDevice."Speakers" {
        Comment "Speakers"

	ConflictingDevice [
		"Headphone"
	]

	EnableSequence [
		cdev "hw:chtmax98090"

		cset "name='Speaker Left Switch' on"
		cset "name='Speaker Right Switch' on"
		cset "name='Ext Spk Switch' on"
	]
	DisableSequence [
		cdev "hw:chtmax98090"

		cset "name='Speaker Left Switch' off"
		cset "name='Speaker Right Switch' off"
		cset "name='Ext Spk Switch' off"
	]

	Value {
		PlaybackChannels 2
	}
}

SectionDevice."HeadsetMic" {
         Comment "Headset Mic"

	 Value {
#               FIXME CaptureControl "MIC2"

# following 3 lines added by gabriel_3: it fixes the FIXME above
		CapturePriority 200
		CapturePCM "hw:chtmax98090"
		JackControl "Headset Mic Jack"
	}

	ConflictingDevice [
		"InternalMic"
	]

	EnableSequence [
		cdev "hw:chtmax98090"

		cset "name='Headset Mic Switch' on"
		cset "name='DMIC Mux' ADC"
		cset "name='Record Path DC Blocking' on"
# following two lines added by gabriel_3
		cset "name='Left ADC Mixer MIC2 Switch' on"
                cset "name='Right ADC Mixer MIC2 Switch' on" 
	]

	DisableSequence [
		cdev "hw:chtmax98090"

		cset "name='Headset Mic Switch' off"
		cset "name='DMIC Mux' DMIC"
		cset "name='Record Path DC Blocking' off"
# following two lines added by gabriel_3
                cset "name='Left ADC Mixer MIC2 Switch' off"
                cset "name='Right ADC Mixer MIC2 Switch' off"
	]

	Value {
		CaptureChannels 2
	}
}

SectionDevice."InternalMic" {
         Comment "Internal Mic"

	 Value {
#		FIXME CaptureControl "MIC2"
# following two line added by gabriel_3: it fixes the FIXME above
		CapturePriority 100
		CapturePCM "hw:chtmax98090"
	}

	ConflictingDevice [
		"HeadsetMic"
	]

	EnableSequence [
		cdev "hw:chtmax98090"

		cset "name='Int Mic Switch' on"
		cset "name='DMIC Mux' DMIC"
		cset "name='Record Path DC Blocking' off"
	]

	DisableSequence [
		cdev "hw:chtmax98090"

		cset "name='Int Mic Switch' off"
		cset "name='DMIC Mux' ADC"
		cset "name='Record Path DC Blocking' on"
	]

	Value {
		CaptureChannels 2
	}
}
openSUSE Build Service is sponsored by