--- /dev/null
+SectionDevice."Speaker" {
+ Comment "Speaker"
+ Value {
+ PlaybackPCM "hw:${CardId},0"
+ }
+ EnableSequence [
+ cset "name='I2S3_CH1 DL1_CH1' 1"
+ cset "name='I2S3_CH2 DL1_CH2' 1"
+ ]
+ DisableSequence [
+ cset "name='I2S3_CH1 DL1_CH1' 0"
+ cset "name='I2S3_CH2 DL1_CH2' 0"
+ ]
+}
+
+SectionDevice."Mic" {
+ Comment "Internal Microphone"
+ Value {
+ CapturePCM "hw:${CardId},5"
+ }
+ EnableSequence [
+ cset "name='MTKAIF_DMIC' 1"
+ cset "name='Mic Type Mux' 2"
+ cset "name='UL3_CH1 ADDA_UL_CH1' 1"
+ cset "name='UL3_CH2 ADDA_UL_CH2' 1"
+ ]
+ DisableSequence [
+ cset "name='MTKAIF_DMIC' 0"
+ cset "name='UL3_CH1 ADDA_UL_CH1' 0"
+ cset "name='UL3_CH2 ADDA_UL_CH2' 0"
+ ]
+}
+
+# The krane device doesn't have a headphone jack
+
+If.krane {
+ Condition {
+ Type String
+ Haystack "${sys:firmware/devicetree/base/compatible}"
+ Needle "google,krane"
+ }
+ False {
+ SectionDevice."Headphones" {
+ Comment "Headphones"
+ Value {
+ PlaybackPCM "hw:${CardId},0"
+ }
+ EnableSequence [
+ cset "name='ADDA_DL_CH1 DL1_CH1' 1"
+ cset "name='ADDA_DL_CH2 DL1_CH2' 1"
+ cset "name='HPL Mux' 2"
+ cset "name='HPR Mux' 2"
+ ]
+ DisableSequence [
+ cset "name='ADDA_DL_CH1 DL1_CH1' 0"
+ cset "name='ADDA_DL_CH2 DL1_CH2' 0"
+ cset "name='HPL Mux' 0"
+ cset "name='HPR Mux' 0"
+ ]
+ }
+
+ SectionDevice."Headset" {
+ Comment "Headset Microphone"
+ Value {
+ CapturePCM "hw:${CardId},5"
+ }
+ EnableSequence [
+ cset "name='PGA L Mux' 2"
+ cset "name='ADC L Mux' 2"
+ cset "name='Mic Type Mux' 1"
+ cset "name='PGA Volume' 4"
+ cset "name='UL3_CH1 ADDA_UL_CH1' 1"
+ ]
+ DisableSequence [
+ cset "name='PGA L Mux' 0"
+ cset "name='ADC L Mux' 0"
+ cset "name='Mic Type Mux' 0"
+ cset "name='PGA Volume' 0"
+ cset "name='UL3_CH1 ADDA_UL_CH1' 0"
+
+ ]
+ }
+ }
+}
--- /dev/null
+Syntax 6
+
+SectionUseCase."HiFi" {
+ File "HiFi.conf"
+ Comment "Default"
+}
+
+BootSequence [
+ # Speakers
+ cset "name='I2S3_CH1 DL1_CH1' 1"
+ cset "name='I2S3_CH2 DL1_CH2' 1"
+
+ # Headphones
+ cset "name='Headphone Volume' 17"
+ cset "name='ADDA_DL_CH1 DL1_CH1' 0"
+ cset "name='ADDA_DL_CH2 DL1_CH2' 0"
+ cset "name='HPL Mux' 0"
+ cset "name='HPR Mux' 0"
+
+ # Internal Mic
+ cset "name='MTKAIF_DMIC' 1"
+ cset "name='Mic Type Mux' 2"
+ cset "name='UL3_CH1 ADDA_UL_CH1' 1"
+ cset "name='UL3_CH2 ADDA_UL_CH2' 1"
+
+ # Headset Mic
+ cset "name='PGA L Mux' 0"
+ cset "name='ADC L Mux' 0"
+ cset "name='PGA Volume' 0"
+ cset "name='UL3_CH1 ADDA_UL_CH1' 0"
+]