SectionVerb {
	EnableSequence [
		cset "name='HDMI_OUT_MUX' Connect"
		cset "name='DPTX_OUT_MUX' Disconnect"
		cset "name='O000 I000 Switch' on"
		cset "name='O001 I001 Switch' on"
		cset "name='O002 I004 Switch' on"
		cset "name='O003 I005 Switch' on"
		cset "name='O004 I006 Switch' on"
		cset "name='O005 I007 Switch' on"
		cset "name='O006 I008 Switch' on"
		cset "name='O007 I009 Switch' on"
		cset "name='O008 I010 Switch' on"
		cset "name='O009 I011 Switch' on"
		cset "name='O034 I168 Switch' on"
		cset "name='O035 I169 Switch' on"
		cset "name='O038 I168 Switch' on"
		cset "name='O040 I002 Switch' on"
		cset "name='O041 I003 Switch' on"
		cset "name='O176 I070 Switch' on"
		cset "name='O177 I071 Switch' on"
	]

	DisableSequence [
		cset "name='HDMI_OUT_MUX' Disconnect"
		cset "name='DPTX_OUT_MUX' Disconnect"
		cset "name='O000 I000 Switch' off"
		cset "name='O001 I001 Switch' off"
		cset "name='O002 I004 Switch' off"
		cset "name='O003 I005 Switch' off"
		cset "name='O004 I006 Switch' off"
		cset "name='O005 I007 Switch' off"
		cset "name='O006 I008 Switch' off"
		cset "name='O007 I009 Switch' off"
		cset "name='O008 I010 Switch' off"
		cset "name='O009 I011 Switch' off"
		cset "name='O034 I168 Switch' off"
		cset "name='O035 I169 Switch' off"
		cset "name='O038 I168 Switch' off"
		cset "name='O040 I002 Switch' off"
		cset "name='O041 I003 Switch' off"
		cset "name='O176 I070 Switch' off"
		cset "name='O177 I071 Switch' off"
	]
}

SectionDevice."Line2" {
	Comment "PCM output"

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

SectionDevice."HDMI" {
	Comment "HDMI/DP output"

	Value {
		PlaybackPriority 200
		PlaybackPCM "hw:${CardId},5"
		JackControl "HDMI Jack"
	}

	EnableSequence [
		cset "name='HDMI_OUT_MUX' 1"
	]

	DisableSequence [
		cset "name='HDMI_OUT_MUX' 0"
	]
}

SectionDevice."DP" {
	Comment "HDMI/DP output"

	Value {
		PlaybackPriority 200
		PlaybackPCM "hw:${CardId},5"
		JackControl "DP Jack"
	}

	EnableSequence [
		cset "name='DPTX_OUT_MUX' 1"
	]

	DisableSequence [
		cset "name='DPTX_OUT_MUX' 0"
	]
}

SectionDevice."Speaker" {
	Comment "Lineout speaker"

	ConflictingDevice [
		"Headphones"
	]

	EnableSequence [
		cset "name='LOL Mux' Playback_L_DAC"
	]

	DisableSequence [
		cset "name='LOL Mux' Open"
	]

	Value {
		PlaybackPriority 300
		PlaybackChannels 2
		PlaybackPCM "hw:${CardId},0"
	}
}

SectionDevice."Headphones" {
	Comment "Earphone speaker"

	ConflictingDevice [
		"Speaker"
	]

	EnableSequence [
		cset "name='HP Mux' Audio Playback"
	]

	DisableSequence [
		cset "name='HP Mux' Open"
	]

	Value {
		PlaybackPriority 400
		PlaybackChannels 2
		PlaybackPCM "hw:${CardId},0"
	}
}

SectionDevice."Line1" {
	Comment "PCM input"

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

SectionDevice."Mic2" {
	Comment "Dmic"

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

SectionDevice."Mic1" {
	Comment "Amic"

	ConflictingDevice [
		"Headset"
	]

	EnableSequence [
		cset "name='PGA_L_Mux' AIN0"
		cset "name='O039 I169 Switch' on"
		cset "name='O182 I170 Switch' on"
		cset "name='MISO1_MUX' UL1_CH2"
	]

	DisableSequence [
		cset "name='O039 I169 Switch' off"
		cset "name='O182 I170 Switch' off"
		cset "name='MISO1_MUX' UL1_CH1"
	]

	Value {
		CapturePriority 300
		CaptureChannels 3
		CapturePCM "hw:${CardId},15"
	}
}

SectionDevice."Headset" {
	Comment "Earphone microphone"

	ConflictingDevice [
		"Mic1"
	]

	EnableSequence [
		cset "name='PGA_L_Mux' AIN1"
	]

	Value {
		CapturePriority 400
		CaptureChannels 3
		CapturePCM "hw:${CardId},15"
	}
}
