Syntax 4

SectionUseCase."HiFi" {
	File "/sof-soundwire/HiFi.conf"
	Comment "Play HiFi quality Music"
}

Include.card-init.File "/lib/card-init.conf"
Include.ctl-remap.File "/lib/ctl-remap.conf"

Define {
	SpeakerCodec1 ""
	SpeakerChannels1 "2"
	SpeakerAmps1 "0"
	HeadsetCodec1 ""
	MicCodec1 ""
	Mics1 "0"
}

DefineRegex {
	SpeakerCodec {
		Regex " spk:([a-z0-9]+(-sdca)?)"
		String "${CardComponents}"
	}
	SpeakerChannels {
		Regex " cfg-spk:([0-9]+)"
		String "${CardComponents}"
	}
	SpeakerAmps {
		Regex " cfg-amp:([0-9]+)"
		String "${CardComponents}"
	}
	HeadsetCodec {
		Regex " hs:([a-z0-9]+(-sdca)?)"
		String "${CardComponents}"
	}
	MicCodec {
		Regex " mic:([a-z0-9]+(-dmic)?+(-sdca)?)"
		String "${CardComponents}"
	}
	Mics {
		Regex " cfg-mics:([1-9][0-9]*)"
		String "${CardComponents}"
	}
}

If.hs_init {
	Condition {
		Type RegexMatch
		Regex "(rt5682|rt700|rt711|rt713(-sdca)?)"
		String "${var:HeadsetCodec1}"
	}
	True.Include.hs_init.File "/codecs/${var:HeadsetCodec1}/init.conf"
}

If.mic_init {
	Condition {
		Type RegexMatch
		Regex "(rt713-dmic|rt715(-sdca)?)"
		String "${var:MicCodec1}"
	}
	True.Include.mic_init.File "/codecs/${var:MicCodec1}/init.conf"
}

If.mic_init_rt715 {
	Condition {
		Type String
		Needle "rt715"
		Haystack "${var:MicCodec1}"
	}
	True.BootSequence [
		cset "name='PGA5.0 5 Master Capture Switch' 1"
		sysw "-/class/sound/ctl-led/mic/card${CardNumber}/detach:PGA5.0 5 Master Capture Switch"
	]
}
