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 {
		PlaybackChannels "2"
		PlaybackPCM "hw:${CardId},4"
	}

	ConflictingDevice [
		"Headphone"
	]

	EnableSequence [
		cset "name='Speaker Playback Switch' on"
		cset "name='Speaker Playback Volume' 100%"
	]

	DisableSequence [
		cset "name='Speaker Playback Volume' 0"
		cset "name='Speaker Playback Switch' off"
	]
}

SectionDevice."LineOut" {
	Comment "Line Out"

	Value {
		PlaybackChannels "2"
		PlaybackPCM "hw:${CardId},0"
		JackControl "Line Out Jack"
		JackHWMute "Speaker"
	}
}

SectionDevice."Headphones" {
	Comment "Headphones"

	Value {
		PlaybackChannels "2"
		PlaybackPCM "hw:${CardId},4"
		JackControl "Front Headphone Jack"
		JackHWMute "Speaker"
	}

	ConflictingDevice [
		"Speaker"
	]

	EnableSequence [
		cset "name='Headphone Playback Switch' on"
		cset "name='Headphone Playback Volume' 100%"
	]

	DisableSequence [
		cset "name='Headphone Playback Volume' 0"
		cset "name='Headphone Playback Switch' off"
	]
}

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

	Value {
		CaptureChannels "2"
		CapturePCM "hw:${CardId},0"
		JackControl "Line Jack"
	}

	ConflictingDevice [
		"RearMic"
	]

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

SectionDevice."RearMic" {
	Comment "Rear Microphone"

	Value {
		CaptureChannels "2"
		CapturePCM "hw:${CardId},0"
		# CapturePriority "150"
		JackHWMute "LineIn"
	}

	ConflictingDevice [
		"LineIn"
	]

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

SectionDevice."FrontMic" {
	Comment "Front Microphone"

	Value {
		CaptureChannels "2"
		CapturePCM "hw:${CardId},4"
		JackControl "Front Mic Jack"
	}

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

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