SectionVerb {
	Value {
		MinBufferLevel "512"
	}

	EnableSequence [
		cset "name='Stereo1 DMIC Mux' DMIC1"
		cset "name='Sto1 ADC MIXL DMIC Switch' on"
		cset "name='Sto1 ADC MIXR DMIC Switch' on"

		cset "name='Mixer Out FilterL DACL Switch' on"
		cset "name='Mixer Out FilterR DACR Switch' on"
		cset "name='Playback Digital Switch' on"
		cset "name='Headphone Switch' on"

		cset "name='Mixin Volume' 11"
		cset "name='Mixin Switch' on"
		cset "name='Mixer In Mic Switch' on"
		cset "name='Out DAIL Mux' ADC"
		cset "name='Out DAIR Mux' ADC"
		cset "name='ADC1 Capture Volume' 51"
		cset "name='Mic Volume' 6"
		cset "name='Capture Digital Switch' on"
		cset "name='Mic Switch' on"

		cset "name='Speakers Switch' off"
		cset "name='Int Mic Switch' off"
		cset "name='Headphones Switch' off"
		cset "name='Headset Mic Switch' off"
	]
}

SectionDevice."Speaker" {
	Comment "Speaker"

	Value {
		PlaybackPriority 100
		PlaybackPCM "hw:${CardId}"
		PlaybackMixerElem "Speakers"
	}

	EnableSequence [
		cset "name='Speakers Switch' on"
	]

	DisableSequence [
		cset "name='Speakers Switch' off"
	]

	ConflictingDevice [
		"Headphones"
	]
}

SectionDevice."Mic" {
	Comment "Internal Microphone"

	Value {
		CapturePriority 100
		CapturePCM "hw:${CardId},1"
		CaptureMixerElem "ADC1"
	}

	EnableSequence [
		cset "name='Int Mic Switch' on"
	]

	DisableSequence [
		cset "name='Int Mic Switch' off"
	]

	ConflictingDevice [
		"Headset"
	]
}

SectionDevice."Headphones" {
	Comment "Headphones"

	Value {
		PlaybackPriority 200
		PlaybackPCM "hw:${CardId},2"
		PlaybackMixerElem "Headphone"
		JackControl "Headphones Jack"
	}

	EnableSequence [
		cset "name='Headphones Switch' on"
		cset "name='DAC Soft Mute Switch' off"
		cset "name='Headphone Switch' on"
	]

	DisableSequence [
		cset "name='Headphone Switch' off"
		cset "name='DAC Soft Mute Switch' on"
		cset "name='Headphones Switch' off"
	]

	ConflictingDevice [
		"Speaker"
	]
}

SectionDevice."Headset" {
	Comment "Headset Microphone"

	Value {
		CapturePriority 200
		CapturePCM "hw:${CardId},2"
		CaptureMixerElem "Mic"
		JackControl "Headset Mic Jack"
	}

	EnableSequence [
		cset "name='Headset Mic Switch' on"
	]

	DisableSequence [
		cset "name='Headset Mic Switch' off"
	]

	ConflictingDevice [
		"Mic"
	]
}
