SectionVerb {
	Value {
		TQ "HiFi"
	}

	EnableSequence [
		cset "name='Front Playback Volume' 100%"
		cset "name='Front Playback Switch' on"
		cset "name='Rear-Panel Capture Volume' 100%"
		cset "name='Rear-Panel Capture Switch' on"
	]

	DisableSequence [
		cset "name='Front Playback Volume' 0"
		cset "name='Front Playback Switch' off"
		cset "name='Rear-Panel Capture Volume' 0"
		cset "name='Rear-Panel Capture Switch' off"
	]
}

SectionDevice."Speaker" {
	Comment "Speaker"

	Value {
		PlaybackPriority 100
		PlaybackPCM "hw:${CardId},4"
		PlaybackMixerElem "Speaker"
	}

	ConflictingDevice [
		"Headphones"
	]
}

SectionDevice."Line1" {
	Comment "Line Out"

	Value {
		PlaybackPriority 200
		PlaybackPCM "hw:${CardId}"
		JackControl "Line Out Jack"
		JackHWMute "Speaker"
	}
}

SectionDevice."Headphones" {
	Comment "Headphones"

	Value {
		PlaybackPriority 300
		PlaybackPCM "hw:${CardId},4"
		PlaybackMixerElem "Headphone"
		JackControl "Front Headphone Jack"
		JackHWMute "Speaker"
	}

	ConflictingDevice [
		"Speaker"
	]
}

SectionDevice."Line2" {
	Comment "Rear Line In"

	Value {
		CapturePriority 200
		CapturePCM "hw:${CardId}"
		JackControl "Line Jack"
	}

	ConflictingDevice [
		"Mic2"
	]

	EnableSequence [
		cset "name='Input Source' Line"
	]

	If.0 {
		Condition {
			Type ControlExists
			Control "name='Line Boost Volume'"
		}
		True {
			EnableSequence [
				cset "name='Line Boost Volume' 3"
			]
		}
	}
}

SectionDevice."Mic2" {
	Comment "Rear Microphone"

	Value {
		CapturePriority 300
		CapturePCM "hw:${CardId}"
		JackHWMute "Line2"
		JackControl "Rear Mic Jack"
	}

	ConflictingDevice [
		"Line2"
	]

	EnableSequence [
		cset "name='Input Source' Rear Mic"
	]
}

SectionDevice."Mic1" {
	Comment "Front Microphone"

	Value {
		CapturePriority 100
		CapturePCM "hw:${CardId},4"
		CaptureMixerElem "Front-Panel"
		JackControl "Front Mic Jack"
	}
}
