# Use case configuration for DB410c board.
# Author: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>

SectionDevice."Speaker" {
	Comment "Speaker playback"

	ConflictingDevice [
		"Headphones"
		"Earpiece"
	]

	EnableSequence [
		cset "name='SPK DAC Switch' 1"
		cset "name='RX3 MIX1 INP1' RX1"
		## gain to  0dB
		cset "name='RX3 Digital Volume' 128"
	]

	DisableSequence [
		cset "name='SPK DAC Switch' 0"
		cset "name='RX3 MIX1 INP1' ZERO"
	]

	Value {
		PlaybackPriority 200
		PlaybackPCM "hw:${CardId},1"
	}
}

SectionDevice."Headphones" {
	Comment "Headphones playback"

	ConflictingDevice [
		"Speaker"
		"Earpiece"
	]
	EnableSequence [
		cset "name='RX1 MIX1 INP1' RX1"
		cset "name='RX2 MIX1 INP1' RX2"
		cset "name='RDAC2 MUX' RX2"
		cset "name='HPHL' 1"
		cset "name='HPHR' 1"
		## gain to  0dB
		cset "name='RX1 Digital Volume' 128"
		## gain to  0dB
		cset "name='RX2 Digital Volume' 128"
	]

	DisableSequence [
		cset "name='RX1 Digital Volume' 0"
		cset "name='RX2 Digital Volume' 0"
		cset "name='HPHL' 0"
		cset "name='HPHR' 0"
		cset "name='RDAC2 MUX' ZERO"
		cset "name='RX1 MIX1 INP1' ZERO"
		cset "name='RX2 MIX1 INP1' ZERO"
	]

	Value {
		PlaybackPriority 300
		PlaybackPCM "hw:${CardId},1"
	}
}

SectionDevice."Earpiece" {
	Comment "Earpiece playback"

	ConflictingDevice [
		"Speaker"
		"Headphones"
	]

	Value {
		PlaybackPriority 100
		PlaybackPCM "hw:${CardId},1"
	}
}

SectionDevice."Handset" {
	Comment "Headset Microphone"

	EnableSequence [
		cset "name='DEC1 MUX' ADC2"
		cset "name='CIC1 MUX' AMIC"
		cset "name='ADC2 Volume' 8"
		cset "name='ADC2 MUX' INP2"
	]

	DisableSequence [
		cset "name='ADC2 MUX' ZERO"
		cset "name='ADC2 Volume' 0"
		cset "name='DEC1 MUX' ZERO"
	]

	Value {
		CapturePriority 400
		CapturePCM "hw:${CardId},2"
	}
}

SectionDevice."Mic1" {
	Comment "Primary Microphone"

	EnableSequence [
		cset "name='DEC1 MUX' ADC1"
		cset "name='CIC1 MUX' AMIC"
		cset "name='ADC1 Volume' 8"
	]

	DisableSequence [
		cset "name='DEC1 MUX' ZERO"
		cset "name='ADC1 Volume' 0"
	]

	Value {
		CapturePriority 300
		CapturePCM "hw:${CardId},2"
	}
}

SectionDevice."Mic2" {
	Comment "Secondary Microphone"

	EnableSequence [
		cset "name='DEC1 MUX' ADC2"
		cset "name='CIC1 MUX' AMIC"
		cset "name='ADC2 Volume' 8"
		cset "name='ADC2 MUX' INP2"
	]

	DisableSequence [
		cset "name='DEC1 MUX' ZERO"
		cset "name='ADC2 Volume' 0"
		cset "name='ADC2 MUX' ZERO"
	]

	Value {
		CapturePriority 200
		CapturePCM "hw:${CardId},2"
	}
}

SectionDevice."Mic3" {
	Comment "Digital Microphone"

	EnableSequence [
		cset "name='DEC1 MUX' DMIC1"
		cset "name='CIC1 MUX' DMIC"
	]

	DisableSequence [
		cset "name='DEC1 MUX' ZERO"
	]

	Value {
		CapturePriority 100
		CapturePCM "hw:${CardId},2"
	}
}
