# Master file for snd_soc_msm tabla 2.0 sound card
# Lists all use case verbs
SectionUseCase."HiFi" {
Comment "Music playback use case"
SectionVerb
	Name "HiFi"

	EnableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia1':1:1
	EndSequence

	DisableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia1':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionVerb
	Name "HiFiSpeaker FM Tx"

	EnableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia1':1:1
		'SLIMBUS_0_RX Audio Mixer MultiMedia1':1:1
	EndSequence

	DisableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia1':1:0
		'SLIMBUS_0_RX Audio Mixer MultiMedia1':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionVerb
	Name "HiFiFM Tx"

	EnableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia1':1:1
	EndSequence

	DisableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia1':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionVerb
	Name "HiFiHDMI"

	EnableSequence
		'HDMI Mixer MultiMedia1':1:1
	EndSequence

	DisableSequence
		'HDMI Mixer MultiMedia1':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionVerb
	Name "HiFiBT SCO Rx"

	EnableSequence
		'INTERNAL_BT_SCO_RX Audio Mixer MultiMedia1':1:1
	EndSequence

	DisableSequence
		'INTERNAL_BT_SCO_RX Audio Mixer MultiMedia1':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionVerb
	Name "HiFiBT SCO WB Rx"

	EnableSequence
		'INTERNAL_BT_SCO_RX Audio Mixer MultiMedia1':1:1
	EndSequence

	DisableSequence
		'INTERNAL_BT_SCO_RX Audio Mixer MultiMedia1':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionVerb
	Name "HiFiPROXY Rx"

	EnableSequence
		'AFE_PCM_RX Audio Mixer MultiMedia1':1:1
	EndSequence

	DisableSequence
		'AFE_PCM_RX Audio Mixer MultiMedia1':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionVerb
        Name "HiFiPROXY Tx"

        EnableSequence
        EndSequence

        DisableSequence
        EndSequence

        # ALSA PCMs
        CapturePCM 0
        PlaybackPCM 0

EndSection
}
SectionUseCase."HiFi Low Power" {
Comment "LPA use case"
SectionVerb
	Name "HiFi Low Power"

	EnableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia3':1:1
	EndSequence

	DisableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia3':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 4

EndSection

SectionVerb
	Name "HiFi Low PowerSpeaker FM Tx"

	EnableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia3':1:1
		'INTERNAL_FM_RX Audio Mixer MultiMedia3':1:1
	EndSequence

	DisableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia3':1:0
		'INTERNAL_FM_RX Audio Mixer MultiMedia3':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 4

EndSection

SectionVerb
	Name "HiFi Low PowerFM Tx"

	EnableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia3':1:1
	EndSequence

	DisableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia3':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 4

EndSection

SectionVerb
	Name "HiFi Low PowerHDMI"

	EnableSequence
		'HDMI Mixer MultiMedia3':1:1
	EndSequence

	DisableSequence
		'HDMI Mixer MultiMedia3':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 4

EndSection

SectionVerb
	Name "HiFi Low PowerBT SCO Rx"

	EnableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia3':1:1
	EndSequence

	DisableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia3':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 4

EndSection

SectionVerb
	Name "HiFi Low PowerBT SCO WB Rx"

	EnableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia3':1:1
	EndSequence

	DisableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia3':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 4

EndSection

SectionVerb
	Name "HiFi Low PowerPROXY Rx"

	EnableSequence
		'AFE_PCM_RX Audio Mixer MultiMedia3':1:1
	EndSequence

	DisableSequence
		'AFE_PCM_RX Audio Mixer MultiMedia3':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 4

EndSection

SectionVerb
        Name "HiFi Low PowerPROXY Tx"

        EnableSequence
        EndSequence

        DisableSequence
        EndSequence

        # ALSA PCMs
        CapturePCM 0
        PlaybackPCM 4

EndSection
}
SectionUseCase."HiFi Rec" {
Comment "Recording use case"
SectionVerb
	Name "HiFi Rec"

	EnableSequence
		'MultiMedia1 Mixer SLIM_0_TX':1:1
	EndSequence

	DisableSequence
		'MultiMedia1 Mixer SLIM_0_TX':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionVerb
	Name "HiFi RecBT SCO Tx"

	EnableSequence
		'MultiMedia1 Mixer INTERNAL_BT_SCO_TX':1:1
	EndSequence

	DisableSequence
		'MultiMedia1 Mixer INTERNAL_BT_SCO_TX':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionVerb
	Name "HiFi RecBT SCO WB Tx"

	EnableSequence
		'MultiMedia1 Mixer INTERNAL_BT_SCO_TX':1:1
	EndSequence

	DisableSequence
		'MultiMedia1 Mixer INTERNAL_BT_SCO_TX':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionVerb
	Name "HiFi RecSSR QMIC"

	EnableSequence
		'MultiMedia1 Mixer SLIM_0_TX':1:1
	EndSequence

	DisableSequence
		'MultiMedia1 Mixer SLIM_0_TX':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection
}
SectionUseCase."Voice Call" {
Comment "Voice Call use case"
SectionVerb
	Name "Voice Call"

	EnableSequence
		'STUB_RX Mixer Voice Stub':1:1
		'Voice Stub Tx Mixer STUB_TX_HL':1:1
		'Voice Stub Tx Mixer STUB_1_TX_HL':1:1
		'IIR1 Band1':2:0x10000000 0x0 0x0 0x0 0x0
		'IIR1 Band2':2:0x10000000 0x0 0x0 0x0 0x0
		'IIR1 Band3':2:0x10000000 0x0 0x0 0x0 0x0
		'IIR1 Band4':2:0x10000000 0x0 0x0 0x0 0x0
		'IIR1 Band5':2:0x10000000 0x0 0x0 0x0 0x0
		'IIR1 Enable Band1':1:1
		'IIR1 Enable Band2':1:1
		'IIR1 Enable Band3':1:1
		'IIR1 Enable Band4':1:1
		'IIR1 Enable Band5':1:1
		'RX1 MIX2 INP1':0:IIR1
		'RX2 MIX2 INP1':0:IIR1
	EndSequence

	DisableSequence
		'STUB_RX Mixer Voice Stub':1:0
		'Voice Stub Tx Mixer STUB_TX_HL':1:0
		'Voice Stub Tx Mixer STUB_1_TX_HL':1:0
		'IIR1 Enable Band1':1:0
		'IIR1 Enable Band2':1:0
		'IIR1 Enable Band3':1:0
		'IIR1 Enable Band4':1:0
		'IIR1 Enable Band5':1:0
		'IIR1 Band1':2:0x0 0x0 0x0 0x0 0x0
		'IIR1 Band2':2:0x0 0x0 0x0 0x0 0x0
		'IIR1 Band3':2:0x0 0x0 0x0 0x0 0x0
		'IIR1 Band4':2:0x0 0x0 0x0 0x0 0x0
		'IIR1 Band5':2:0x0 0x0 0x0 0x0 0x0
		'RX1 MIX2 INP1':0:ZERO
		'RX2 MIX2 INP1':0:ZERO
	EndSequence

	# ALSA PCMs
	PlaybackPCM 12
	CapturePCM 12

EndSection

SectionVerb
	Name "Voice CallHDMI"

	EnableSequence
		'Voice Stub Tx Mixer SLIM_3_TX':1:0
		'HDMI_RX_Voice Mixer Voice Stub':1:0
		'HDMI_RX Port Mixer SLIM_3_TX':1:0
		'Voice Stub Tx Mixer STUB_TX_HL':1:0
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	PlaybackPCM 12
	CapturePCM 12

EndSection

SectionVerb
	Name "Voice CallHDMI Tx"

	EnableSequence
		'Voice Stub Tx Mixer SLIM_3_TX':1:1
		'HDMI_RX_Voice Mixer Voice Stub':1:1
		'HDMI_RX Port Mixer SLIM_3_TX':1:1
		'Voice Stub Tx Mixer STUB_TX_HL':1:1
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	PlaybackPCM 12
	CapturePCM 12

EndSection

SectionVerb
	Name "Voice CallBT SCO Rx"

	EnableSequence
	EndSequence

	DisableSequence
		'Internal BTSCO SampleRate':0:8000
		'Voice Stub Tx Mixer INTERNAL_BT_SCO_TX':1:0
		'SLIMBUS_1_RX Mixer Voice Stub':1:0
		'Voice Stub Tx Mixer SLIM_1_TX':1:0
		'INTERNAL_BT_SCO_RX_Voice Mixer Voice Stub':1:0
		'SLIMBUS_1_RX Port Mixer INTERNAL_BT_SCO_TX':1:0
		'INTERNAL_BT_SCO_RX Port Mixer SLIM_1_TX':1:0
		'SLIMBUS_3_RX_Voice Mixer Voice Stub':1:0
		'SLIMBUS_3_RX Port Mixer INTERNAL_BT_SCO_RX':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 12
	CapturePCM 12

EndSection

SectionVerb
	Name "Voice CallBT SCO Tx"

	EnableSequence
		'Internal BTSCO SampleRate':0:8000
		'Voice Stub Tx Mixer INTERNAL_BT_SCO_TX':1:1
		'SLIMBUS_1_RX Mixer Voice Stub':1:1
		'Voice Stub Tx Mixer SLIM_1_TX':1:1
		'INTERNAL_BT_SCO_RX_Voice Mixer Voice Stub':1:1
		'SLIMBUS_1_RX Port Mixer INTERNAL_BT_SCO_TX':1:1
		'INTERNAL_BT_SCO_RX Port Mixer SLIM_1_TX':1:1
		'SLIM_3_RX Channels':0:One
		'SLIMBUS_3_RX_Voice Mixer Voice Stub':1:1
		'SLIMBUS_3_RX Port Mixer INTERNAL_BT_SCO_RX':1:1
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	PlaybackPCM 12
	CapturePCM 12

EndSection

SectionVerb
	Name "Voice CallBT SCO WB Rx"

	EnableSequence
	EndSequence

	DisableSequence
		'Internal BTSCO SampleRate':0:8000
		'Voice Stub Tx Mixer INTERNAL_BT_SCO_TX':1:0
		'SLIMBUS_1_RX Mixer Voice Stub':1:0
		'Voice Stub Tx Mixer SLIM_1_TX':1:0
		'INTERNAL_BT_SCO_RX_Voice Mixer Voice Stub':1:0
		'SLIMBUS_1_RX Port Mixer INTERNAL_BT_SCO_TX':1:0
		'INTERNAL_BT_SCO_RX Port Mixer SLIM_1_TX':1:0
		'SLIMBUS_3_RX_Voice Mixer Voice Stub':1:0
		'SLIMBUS_3_RX Port Mixer INTERNAL_BT_SCO_RX':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 12
	CapturePCM 12

EndSection

SectionVerb
	Name "Voice CallBT SCO WB Tx"

	EnableSequence
		'Internal BTSCO SampleRate':0:16000
		'Voice Stub Tx Mixer INTERNAL_BT_SCO_TX':1:1
		'SLIMBUS_1_RX Mixer Voice Stub':1:1
		'Voice Stub Tx Mixer SLIM_1_TX':1:1
		'INTERNAL_BT_SCO_RX_Voice Mixer Voice Stub':1:1
		'SLIMBUS_1_RX Port Mixer INTERNAL_BT_SCO_TX':1:1
		'INTERNAL_BT_SCO_RX Port Mixer SLIM_1_TX':1:1
		'SLIM_3_RX Channels':0:One
		'SLIMBUS_3_RX_Voice Mixer Voice Stub':1:1
		'SLIMBUS_3_RX Port Mixer INTERNAL_BT_SCO_RX':1:1
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	PlaybackPCM 12
	CapturePCM 12

EndSection
}
SectionUseCase."Voice Call IP" {
Comment "VOIP Call use case"
SectionVerb
	Name "Voice Call IP"

	EnableSequence
		'SLIM_0_RX_Voice Mixer Voip':1:1
		'Voip_Tx Mixer SLIM_0_TX_Voip':1:1
	EndSequence

	DisableSequence
		'SLIM_0_RX_Voice Mixer Voip':1:0
		'Voip_Tx Mixer SLIM_0_TX_Voip':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 3
	CapturePCM 3

EndSection

SectionVerb
	Name "Voice Call IPHDMI Tx"

	EnableSequence
		'HDMI_RX_Voice Mixer Voip':1:1
		'Voip_Tx Mixer SLIM_0_TX_Voip':1:1
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	PlaybackPCM 3
	CapturePCM 3

EndSection

SectionVerb
	Name "Voice Call IPBT SCO Rx"

	EnableSequence
	EndSequence

	DisableSequence
		'Internal BTSCO SampleRate':0:8000
		'INTERNAL_BT_SCO_RX_Voice Mixer Voip':1:0
		'Voip_Tx Mixer INTERNAL_BT_SCO_TX_Voip':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 3
	CapturePCM 3

EndSection

SectionVerb
	Name "Voice Call IPBT SCO Tx"

	EnableSequence
		'Internal BTSCO SampleRate':0:8000
		'INTERNAL_BT_SCO_RX_Voice Mixer Voip':1:1
		'Voip_Tx Mixer INTERNAL_BT_SCO_TX_Voip':1:1
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	PlaybackPCM 3
	CapturePCM 3

EndSection

SectionVerb
	Name "Voice Call IPBT SCO WB Rx"

	EnableSequence
	EndSequence

	DisableSequence
		'Internal BTSCO SampleRate':0:8000
		'INTERNAL_BT_SCO_RX_Voice Mixer Voip':1:0
		'Voip_Tx Mixer INTERNAL_BT_SCO_TX_Voip':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 3
	CapturePCM 3

EndSection

SectionVerb
	Name "Voice Call IPBT SCO WB Tx"

	EnableSequence
		'Internal BTSCO SampleRate':0:16000
		'INTERNAL_BT_SCO_RX_Voice Mixer Voip':1:1
		'Voip_Tx Mixer INTERNAL_BT_SCO_TX_Voip':1:1
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	PlaybackPCM 3
	CapturePCM 3

EndSection

SectionVerb
	Name "Voice Call IPHDMI"

	EnableSequence
	EndSequence

	DisableSequence
		'HDMI_RX_Voice Mixer Voip':1:0
		'Voip_Tx Mixer SLIM_0_TX_Voip':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 3
	CapturePCM 3

EndSection

SectionVerb
	Name "Voice Call IPFM Tx"

	EnableSequence
	EndSequence

	DisableSequence
		'SLIM_0_RX_Voice Mixer Voip':1:0
		'Voip_Tx Mixer SLIM_0_TX_Voip':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 3
	CapturePCM 3

EndSection
}
SectionUseCase."FM Digital Radio" {
Comment "FM Radio use case"
SectionVerb
	Name "FM Digital Radio"

	EnableSequence
		'Internal FM RX Volume':1:0
		'SLIMBUS_0_RX Port Mixer INTERNAL_FM_TX':1:1
		'SLIMBUS_DL_HL Switch':1:1
	EndSequence

	DisableSequence
		'SLIMBUS_0_RX Port Mixer INTERNAL_FM_TX':1:0
		'SLIMBUS_DL_HL Switch':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 5
	CapturePCM 6

EndSection

SectionVerb
	Name "FM Digital RadioPROXY Rx"

	EnableSequence
		'Internal FM RX Volume':1:0
		'AFE_PCM_RX Port Mixer INTERNAL_FM_TX':1:1
		'PCM_RX_DL_HL Switch':1:1
	EndSequence

	DisableSequence
		'AFE_PCM_RX Port Mixer INTERNAL_FM_TX':1:0
		'PCM_RX_DL_HL Switch':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 5
	CapturePCM 6

EndSection

SectionVerb
	Name "FM Digital RadioPROXY Tx"

	EnableSequence
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	PlaybackPCM 5
	CapturePCM 6

EndSection
}
SectionUseCase."FM REC" {
Comment "FM Recording use case"
SectionVerb
	Name "FM REC"

	EnableSequence
		'MultiMedia1 Mixer INTERNAL_FM_TX':1:1
	EndSequence

	DisableSequence
		'MultiMedia1 Mixer INTERNAL_FM_TX':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 0
	CapturePCM 0

EndSection
}
SectionUseCase."FM A2DP REC" {
Comment "FM A2DP playback use case"
SectionVerb
	Name "FM A2DP REC"

	EnableSequence
		'MultiMedia2 Mixer INTERNAL_FM_TX':1:1
	EndSequence

	DisableSequence
		'MultiMedia2 Mixer INTERNAL_FM_TX':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 1
	CapturePCM 1

EndSection
}
SectionUseCase."Incall REC" {
Comment "Voice Recording use case"
SectionVerb
	Name "Incall REC"

	EnableSequence
		'MultiMedia1 Mixer SLIM_4_TX':1:1
	EndSequence

	DisableSequence
		'MultiMedia1 Mixer SLIM_4_TX':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 0
	CapturePCM 0

EndSection
}
SectionUseCase."HiFi Tunnel" {
Comment "Tunnel mode playback use case"
SectionVerb
	Name "HiFi Tunnel"

	EnableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia4':1:1
	EndSequence

	DisableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia4':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 9

EndSection

SectionVerb
	Name "HiFi TunnelSpeaker FM Tx"

	EnableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia4':1:1
		'INTERNAL_FM_RX Audio Mixer MultiMedia4':1:1
	EndSequence

	DisableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia4':1:0
		'INTERNAL_FM_RX Audio Mixer MultiMedia4':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 9

EndSection

SectionVerb
	Name "HiFi TunnelFM Tx"

	EnableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia4':1:1
	EndSequence

	DisableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia4':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 9

EndSection

SectionVerb
	Name "HiFi TunnelHDMI"

	EnableSequence
		'HDMI Mixer MultiMedia4':1:1
	EndSequence

	DisableSequence
		'HDMI Mixer MultiMedia4':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 9

EndSection

SectionVerb
	Name "HiFi TunnelBT SCO Rx"

	EnableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia4':1:1
	EndSequence

	DisableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia4':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 9

EndSection

SectionVerb
	Name "HiFi TunnelBT SCO WB Rx"

	EnableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia4':1:1
	EndSequence

	DisableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia4':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 9

EndSection

SectionVerb
        Name "HiFi TunnelPROXY Rx"

        EnableSequence
                'AFE_PCM_RX Audio Mixer MultiMedia4':1:1
        EndSequence

        DisableSequence
                'AFE_PCM_RX Audio Mixer MultiMedia4':1:0
        EndSequence

        # ALSA PCMs
        PlaybackPCM 9

EndSection

}
SectionUseCase."ADSP testfwk" {
Comment "ADSP testfwk use case"

SectionVerb
        Name "ADSP testfwk"

        EnableSequence
		'SLIMBUS_DL_HL Switch':1:1
        EndSequence

        DisableSequence
		'SLIMBUS_DL_HL Switch':1:0
        EndSequence

        # ALSA PCMs
        PlaybackPCM 5
        CapturePCM 5

EndSection
}
SectionDevice
	Name "Earpiece"
	Comment "Handset Rx device"

	EnableSequence
		'SLIM_0_RX Channels':0:One
		'RX1 MIX1 INP1':0:RX1
		'RX1 MIX1 INP2':0:RX6
		'EAR PA Gain':0:POS_6_DB
		'DAC1 Switch':1:1
		'SLIM TX3 MUX':0:RMIX1
	EndSequence

	DisableSequence
		'RX1 MIX1 INP1':0:ZERO
		'RX1 MIX1 INP2':0:ZERO
		'DAC1 Switch':1:0
		'SLIM TX3 MUX':0:ZERO
	EndSequence

	ACDBID	7:1
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "TTY Handset Rx"
	Comment "TTY HCO Handset Rx device"

	EnableSequence
		'SLIM_0_RX Channels':0:One
		'RX1 MIX1 INP1':0:RX1
		'RX1 MIX1 INP2':0:RX6
		'EAR PA Gain':0:POS_2_DB
		'DAC1 Switch':1:1
	EndSequence

	DisableSequence
		'RX1 MIX1 INP1':0:ZERO
		'RX1 MIX1 INP2':0:ZERO
		'DAC1 Switch':1:0
	EndSequence

	ACDBID	37:1
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "ANC Handset"
	Comment "ANC Handset Rx device"

	EnableSequence
		'SLIM_0_RX Channels':0:One
		'RX1 MIX1 INP1':0:RX1
		'RX1 MIX1 INP2':0:RX6
		'DAC1 Switch':1:1
		'ANC Slot':1:1
		'ANC1 MUX':0:DMIC1
		'MICBIAS1 CAPLESS Switch':1:1
		'SLIM TX3 MUX':0:RMIX1
	EndSequence

	DisableSequence
		'RX1 MIX1 INP1':0:ZERO
		'RX1 MIX1 INP2':0:ZERO
		'DAC1 Switch':1:0
		'ANC Slot':1:0
		'ANC1 MUX':0:ZERO
		'MICBIAS1 CAPLESS Switch':1:0
		'SLIM TX3 MUX':0:ZERO
	EndSequence

	ACDBID	30:1
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "Speaker"
	Comment "Speaker Rx device"

	EnableSequence
		'SLIM_0_RX Channels':0:One
		'RX3 MIX1 INP1':0:RX1
		'RX3 MIX1 INP2':0:RX6
		'RX5 MIX1 INP1':0:RX2
		'RX5 MIX1 INP2':0:RX7
		'RX4 DSM MUX':0:DSM_INV
		'RX6 DSM MUX':0:DSM_INV
		'LINEOUT1 Volume':1:100
		'LINEOUT2 Volume':1:100
		'LINEOUT3 Volume':1:100
		'LINEOUT4 Volume':1:100
		'SLIM TX3 MUX':0:RMIX3
		'SLIM TX5 MUX':0:RMIX5
	EndSequence

	DisableSequence
		'RX3 MIX1 INP1':0:ZERO
		'RX3 MIX1 INP2':0:ZERO
		'RX5 MIX1 INP1':0:ZERO
		'RX5 MIX1 INP2':0:ZERO
		'RX4 DSM MUX':0:CIC_OUT
		'RX6 DSM MUX':0:CIC_OUT
		'LINEOUT1 Volume':1:0
		'LINEOUT2 Volume':1:0
		'LINEOUT3 Volume':1:0
		'LINEOUT4 Volume':1:0
		'SLIM TX3 MUX':0:ZERO
		'SLIM TX5 MUX':0:ZERO
	EndSequence

	ACDBID	14:1
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "Headphones"
	Comment "Headset Rx device"

	EnableSequence
		'SLIM_0_RX Channels':0:Two
		'RX1 MIX1 INP1':0:RX1
		'RX1 MIX1 INP2':0:RX6
		'RX2 MIX1 INP1':0:RX2
		'RX2 MIX1 INP2':0:RX7
		'HPHL DAC Switch':1:1
		'HPHR DAC Switch':1:1
		'HPHL Volume':1:80
		'HPHR Volume':1:80
		'SLIM TX3 MUX':0:RMIX1
		'SLIM TX5 MUX':0:RMIX2
	EndSequence

	DisableSequence
		'RX1 MIX1 INP1':0:ZERO
		'RX1 MIX1 INP2':0:ZERO
		'RX2 MIX1 INP1':0:ZERO
		'RX2 MIX1 INP2':0:ZERO
		'HPHL DAC Switch':1:0
		'HPHR DAC Switch':1:0
		'HPHL Volume':1:0
		'HPHR Volume':1:0
		'SLIM TX3 MUX':0:ZERO
		'SLIM TX5 MUX':0:ZERO
	EndSequence

	ACDBID	10:1
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "Speaker Headset"
	Comment "Speaker Headset Rx combo device"

	EnableSequence
		'SLIM_0_RX Channels':0:Two
		'RX3 MIX1 INP1':0:RX1
		'RX3 MIX1 INP2':0:RX6
		'RX5 MIX1 INP1':0:RX2
		'RX5 MIX1 INP2':0:RX7
		'RX4 DSM MUX':0:DSM_INV
		'RX6 DSM MUX':0:DSM_INV
		'LINEOUT1 Volume':1:66
		'LINEOUT2 Volume':1:66
		'LINEOUT3 Volume':1:66
		'LINEOUT4 Volume':1:66
		'RX1 MIX1 INP1':0:RX1
		'RX1 MIX1 INP2':0:RX6
		'RX2 MIX1 INP1':0:RX2
		'RX2 MIX1 INP2':0:RX7
		'HPHL DAC Switch':1:1
		'HPHR DAC Switch':1:1
		'HPHL Volume':1:80
		'HPHR Volume':1:80
		'SLIM TX3 MUX':0:RMIX1
		'SLIM TX5 MUX':0:RMIX2
	EndSequence

	DisableSequence
		'RX3 MIX1 INP1':0:ZERO
		'RX3 MIX1 INP2':0:ZERO
		'RX5 MIX1 INP1':0:ZERO
		'RX5 MIX1 INP2':0:ZERO
		'RX4 DSM MUX':0:CIC_OUT
		'RX6 DSM MUX':0:CIC_OUT
		'LINEOUT1 Volume':1:0
		'LINEOUT2 Volume':1:0
		'LINEOUT3 Volume':1:0
		'LINEOUT4 Volume':1:0
		'RX1 MIX1 INP1':0:ZERO
		'RX1 MIX1 INP2':0:ZERO
		'RX2 MIX1 INP1':0:ZERO
		'RX2 MIX1 INP2':0:ZERO
		'HPHL DAC Switch':1:0
		'HPHR DAC Switch':1:0
		'HPHL Volume':1:0
		'HPHR Volume':1:0
		'SLIM TX3 MUX':0:ZERO
		'SLIM TX5 MUX':0:ZERO
	EndSequence

	ACDBID	10:1
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "Speaker ANC Headset"
	Comment "Speaker ANC Headset Rx combo device"

	EnableSequence
		'SLIM_0_RX Channels':0:Two
		'RX3 MIX1 INP1':0:RX1
		'RX3 MIX1 INP2':0:RX6
		'RX5 MIX1 INP1':0:RX2
		'RX5 MIX1 INP2':0:RX7
		'RX4 DSM MUX':0:DSM_INV
		'RX6 DSM MUX':0:DSM_INV
		'LINEOUT1 Volume':1:66
		'LINEOUT2 Volume':1:66
		'LINEOUT3 Volume':1:66
		'LINEOUT4 Volume':1:66
		'RX1 MIX1 INP1':0:RX1
		'RX1 MIX1 INP2':0:RX6
		'RX2 MIX1 INP1':0:RX2
		'RX2 MIX1 INP2':0:RX7
		'HPHL DAC Switch':1:1
		'HPHR DAC Switch':1:1
		'HPHL Volume':1:70
		'HPHR Volume':1:70
		'RX1 Digital Volume':1:65
		'RX2 Digital Volume':1:65
		'ANC Slot':1:0
		'ANC1 MUX':0:ADC4
		'ANC2 MUX':0:ADC3
		'ANC1 FB MUX':0:EAR_HPH_L
		'ADC3 Volume':1:85
		'ADC4 Volume':1:85
		'MICBIAS3 CAPLESS Switch':1:1
		'MICBIAS1 CAPLESS Switch':1:1
		'SLIM TX3 MUX':0:RMIX1
		'SLIM TX5 MUX':0:RMIX2
	EndSequence

	DisableSequence
		'RX3 MIX1 INP1':0:ZERO
		'RX3 MIX1 INP2':0:ZERO
		'RX5 MIX1 INP1':0:ZERO
		'RX5 MIX1 INP2':0:ZERO
		'RX4 DSM MUX':0:CIC_OUT
		'RX6 DSM MUX':0:CIC_OUT
		'LINEOUT1 Volume':1:0
		'LINEOUT2 Volume':1:0
		'LINEOUT3 Volume':1:0
		'LINEOUT4 Volume':1:0
		'RX1 MIX1 INP1':0:ZERO
		'RX1 MIX1 INP2':0:ZERO
		'RX2 MIX1 INP1':0:ZERO
		'RX2 MIX1 INP2':0:ZERO
		'HPHL DAC Switch':1:0
		'HPHR DAC Switch':1:0
		'HPHL Volume':1:0
		'HPHR Volume':1:0
		'RX1 Digital Volume':1:0
		'RX2 Digital Volume':1:0
		'ANC1 MUX':0:ZERO
		'ANC2 MUX':0:ZERO
		'ADC3 Volume':1:0
		'ADC4 Volume':1:0
		'MICBIAS3 CAPLESS Switch':1:0
		'MICBIAS1 CAPLESS Switch':1:0
		'SLIM TX3 MUX':0:ZERO
		'SLIM TX5 MUX':0:ZERO
	EndSequence

	ACDBID	26:1
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "ANC Headset"
	Comment "ANC Headset Rx device"

	EnableSequence
		'SLIM_0_RX Channels':0:Two
		'RX1 MIX1 INP1':0:RX1
		'RX1 MIX1 INP2':0:RX6
		'RX2 MIX1 INP1':0:RX2
		'RX2 MIX1 INP2':0:RX7
		'HPHL DAC Switch':1:1
		'HPHR DAC Switch':1:1
		'HPHL Volume':1:70
		'HPHR Volume':1:70
		'RX1 Digital Volume':1:65
		'RX2 Digital Volume':1:65
		'ANC Slot':1:0
		'ANC1 MUX':0:ADC4
		'ANC2 MUX':0:ADC3
		'ANC1 FB MUX':0:EAR_HPH_L
		'ADC3 Volume':1:85
		'ADC4 Volume':1:85
		'MICBIAS3 CAPLESS Switch':1:1
		'MICBIAS1 CAPLESS Switch':1:1
		'SLIM TX3 MUX':0:RMIX1
		'SLIM TX5 MUX':0:RMIX2
	EndSequence

	DisableSequence
		'RX1 MIX1 INP1':0:ZERO
		'RX1 MIX1 INP2':0:ZERO
		'RX2 MIX1 INP1':0:ZERO
		'RX2 MIX1 INP2':0:ZERO
		'HPHL DAC Switch':1:0
		'HPHR DAC Switch':1:0
		'HPHL Volume':1:0
		'HPHR Volume':1:0
		'RX1 Digital Volume':1:0
		'RX2 Digital Volume':1:0
		'ANC1 MUX':0:ZERO
		'ANC2 MUX':0:ZERO
		'ADC3 Volume':1:0
		'ADC4 Volume':1:0
		'MICBIAS3 CAPLESS Switch':1:0
		'MICBIAS1 CAPLESS Switch':1:0
		'SLIM TX3 MUX':0:ZERO
		'SLIM TX5 MUX':0:ZERO
	EndSequence

	ACDBID	26:1
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "Speaker FM Tx"
	Comment "Speaker FM Tx combo device"

	EnableSequence
		'SLIM_0_RX Channels':0:Two
		'RX3 MIX1 INP1':0:RX1
		'RX3 MIX1 INP2':0:RX6
		'RX5 MIX1 INP1':0:RX2
		'RX5 MIX1 INP2':0:RX7
		'RX4 DSM MUX':0:DSM_INV
		'RX6 DSM MUX':0:DSM_INV
		'LINEOUT1 Volume':1:66
		'LINEOUT2 Volume':1:66
		'LINEOUT3 Volume':1:66
		'LINEOUT4 Volume':1:66
		'SLIM TX3 MUX':0:RMIX3
		'SLIM TX5 MUX':0:RMIX5
	EndSequence

	DisableSequence
		'RX3 MIX1 INP1':0:ZERO
		'RX3 MIX1 INP2':0:ZERO
		'RX5 MIX1 INP1':0:ZERO
		'RX5 MIX1 INP2':0:ZERO
		'RX4 DSM MUX':0:CIC_OUT
		'RX6 DSM MUX':0:CIC_OUT
		'LINEOUT1 Volume':1:0
		'LINEOUT2 Volume':1:0
		'LINEOUT3 Volume':1:0
		'LINEOUT4 Volume':1:0
		'SLIM TX3 MUX':0:ZERO
		'SLIM TX5 MUX':0:ZERO
	EndSequence

	ACDBID	15:1
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "Headset"
	Comment "Headset Tx device"

	EnableSequence
		'SLIM_0_TX Channels':0:One
		'SLIM TX7 MUX':0:DEC8
		'DEC8 MUX':0:ADC2
		'ADC2 Volume':1:100
		'IIR1 INP1 Volume':1:62
		'IIR1 INP1 MUX':0:DEC8
	EndSequence

	DisableSequence
		'SLIM TX7 MUX':0:ZERO
		'DEC8 MUX':0:ZERO
		'ADC2 Volume':1:0
		'IIR1 INP1 Volume':1:0
		'IIR1 INP1 MUX':0:ZERO
	EndSequence

	ACDBID	8:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "Handset"
	Comment "Handset Tx device"

	EnableSequence
		'SLIM_0_TX Channels':0:One
		'SLIM TX7 MUX':0:DEC7
		'DEC7 MUX':0:ADC1
		'ADC1 Volume':1:100
		'IIR1 INP1 Volume':1:50
		'IIR1 INP1 MUX':0:DEC7
	EndSequence

	DisableSequence
		'SLIM TX7 MUX':0:ZERO
		'DEC7 MUX':0:ZERO
		'ADC1 Volume':1:0
		'IIR1 INP1 Volume':1:0
		'IIR1 INP1 MUX':0:ZERO
	EndSequence

	ACDBID	4:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "TTY Handset Analog Tx"
	Comment "TTY Handset Analog Tx device"

	EnableSequence
		'SLIM_0_TX Channels':0:One
		'SLIM TX7 MUX':0:DEC7
		'DEC7 MUX':0:ADC1
		'ADC1 Volume':1:100
		'MICBIAS1 CAPLESS Switch':1:1
	EndSequence

	DisableSequence
		'SLIM TX7 MUX':0:ZERO
		'DEC7 MUX':0:ZERO
		'ADC1 Volume':1:0
		'MICBIAS1 CAPLESS Switch':1:0
	EndSequence

	ACDBID	36:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "Line"
	Comment "Speaker Tx device"

	EnableSequence
		'SLIM_0_TX Channels':0:One
		'SLIM TX7 MUX':0:DEC4
		'DEC4 MUX':0:ADC3
		'DEC4 Volume':1:63
		'ADC3 Volume':1:100
		'IIR1 INP1 Volume':1:50
		'IIR1 INP1 MUX':0:DEC4
	EndSequence

	DisableSequence
		'SLIM TX7 MUX':0:ZERO
		'DEC4 MUX':0:ZERO
		'DEC4 Volume':1:60
		'ADC3 Volume':1:0
		'IIR1 INP1 Volume':1:0
		'IIR1 INP1 MUX':0:ZERO
	EndSequence

	ACDBID	4:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "TTY Handset Tx"
	Comment "TTY VCO Handset Tx device"

	EnableSequence
		'SLIM_0_TX Channels':0:One
		'SLIM TX7 MUX':0:DEC7
		'DEC7 MUX':0:DMIC1
		'MICBIAS1 CAPLESS Switch':1:1
	EndSequence

	DisableSequence
		'SLIM TX7 MUX':0:ZERO
		'DEC7 MUX':0:ZERO
		'MICBIAS1 CAPLESS Switch':1:0
	EndSequence

	ACDBID	36:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "HDMI Tx"
	Comment "HDMI Tx device"

	EnableSequence
		'SLIM_0_TX Channels':0:One
		'SLIM TX7 MUX':0:DEC7
		'DEC7 MUX':0:DMIC1
		'MICBIAS1 CAPLESS Switch':1:1
	EndSequence

	DisableSequence
		'SLIM TX7 MUX':0:ZERO
		'DEC7 MUX':0:ZERO
		'MICBIAS1 CAPLESS Switch':1:0
	EndSequence

	ACDBID	4:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice

        Name "QMIC"
        Comment "Quad mic device"

        EnableSequence
                'SLIM_0_TX Channels':0:Four
                'SLIM TX7 MUX':0:DEC7
                'DEC7 MUX':0:DMIC1
                'SLIM TX8 MUX':0:DEC8
                'DEC8 MUX':0:DMIC2
                'SLIM TX9 MUX':0:DEC10
                'DEC10 MUX':0:DMIC3
                'SLIM TX10 MUX':0:DEC9
                'DEC9 MUX':0:DMIC4
                'MICBIAS1 CAPLESS Switch':1:1
                'MICBIAS3 CAPLESS Switch':1:1
        EndSequence

        DisableSequence
                'SLIM TX7 MUX':0:ZERO
                'DEC7 MUX':0:ZERO
                'SLIM TX8 MUX':0:ZERO
                'DEC8 MUX':0:ZERO
                'SLIM TX9 MUX':0:ZERO
                'DEC9 MUX':0:ZERO
                'SLIM TX10 MUX':0:ZERO
                'DEC10 MUX':0:ZERO
                'MICBIAS1 CAPLESS Switch':1:0
                'MICBIAS3 CAPLESS Switch':1:0
        EndSequence

        ACDBID  19:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "DMIC Broadside"
	Comment "Dual MIC Broadside Tx device"

	EnableSequence
		'SLIM TX7 MUX':0:DEC7
		'DEC7 MUX':0:DMIC1
		'SLIM TX8 MUX':0:DEC8
		'DEC8 MUX':0:DMIC2
		'MICBIAS1 CAPLESS Switch':1:1
		'SLIM_0_TX Channels':0:Two
		'IIR1 INP1 Volume':1:50
		'IIR1 INP1 MUX':0:DEC7
	EndSequence

	DisableSequence
		'SLIM TX7 MUX':0:ZERO
		'DEC7 MUX':0:ZERO
		'SLIM TX8 MUX':0:ZERO
		'DEC8 MUX':0:ZERO
		'MICBIAS1 CAPLESS Switch':1:0
		'IIR1 INP1 Volume':1:0
		'IIR1 INP1 MUX':0:ZERO
	EndSequence

	ACDBID	5:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "DMIC Endfire"
	Comment "Dual MIC Endfire Tx device"

	EnableSequence
		'SLIM TX7 MUX':0:DEC7
		'DEC7 MUX':0:DMIC1
		'SLIM TX8 MUX':0:DEC9
		'DEC9 MUX':0:DMIC4
		'MICBIAS1 CAPLESS Switch':1:1
		'MICBIAS3 CAPLESS Switch':1:1
		'SLIM_0_TX Channels':0:Two
		'IIR1 INP1 Volume':1:50
		'IIR1 INP1 MUX':0:DEC7
	EndSequence

	DisableSequence
		'SLIM TX7 MUX':0:ZERO
		'DEC7 MUX':0:ZERO
		'SLIM TX8 MUX':0:ZERO
		'DEC9 MUX':0:ZERO
		'MICBIAS1 CAPLESS Switch':1:0
		'MICBIAS3 CAPLESS Switch':1:0
		'IIR1 INP1 Volume':1:0
		'IIR1 INP1 MUX':0:ZERO
	EndSequence

	ACDBID	6:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "Speaker DMIC Broadside"
	Comment "Dual MIC Broadside Tx device"

	EnableSequence
		'SLIM TX7 MUX':0:DEC7
		'DEC7 MUX':0:DMIC1
		'SLIM TX8 MUX':0:DEC8
		'DEC8 MUX':0:DMIC2
		'MICBIAS1 CAPLESS Switch':1:1
		'SLIM_0_TX Channels':0:Two
	EndSequence

	DisableSequence
		'SLIM TX7 MUX':0:ZERO
		'DEC7 MUX':0:ZERO
		'SLIM TX8 MUX':0:ZERO
		'DEC8 MUX':0:ZERO
		'MICBIAS1 CAPLESS Switch':1:0
	EndSequence

	ACDBID	12:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "Speaker DMIC Endfire"
	Comment "Dual MIC Endfire Tx device"

	EnableSequence
		'SLIM TX7 MUX':0:DEC7
		'DEC7 MUX':0:DMIC1
		'SLIM TX8 MUX':0:DEC9
		'DEC9 MUX':0:DMIC4
		'MICBIAS1 CAPLESS Switch':1:1
		'MICBIAS3 CAPLESS Switch':1:1
		'SLIM_0_TX Channels':0:Two
	EndSequence

	DisableSequence
		'SLIM TX7 MUX':0:ZERO
		'DEC7 MUX':0:ZERO
		'SLIM TX8 MUX':0:ZERO
		'DEC9 MUX':0:ZERO
		'MICBIAS1 CAPLESS Switch':1:0
		'MICBIAS3 CAPLESS Switch':1:0
	EndSequence

	ACDBID	13:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "TTY Headset Rx"
	Comment "TTY Headset Rx device"

	EnableSequence
		'TTY Mode':0:VCO
		'SLIM_0_RX Channels':0:One
		'RX1 MIX1 INP1':0:RX1
		'RX1 MIX1 INP2':0:RX6
		'HPHL DAC Switch':1:1
		'HPHL Volume':1:80
	EndSequence

	DisableSequence
		'TTY Mode':0:ZERO
		'RX1 MIX1 INP1':0:ZERO
		'RX1 MIX1 INP2':0:ZERO
		'HPHL DAC Switch':1:0
		'HPHL Volume':1:0
	EndSequence

	ACDBID	17:1
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "TTY Headset Tx"
	Comment "TTY Headset Tx device"

	EnableSequence
		'TTY Mode':0:HCO
		'SLIM_0_TX Channels':0:One
		'SLIM TX7 MUX':0:DEC8
		'DEC8 MUX':0:ADC2
		'ADC2 Volume':1:100
	EndSequence

	DisableSequence
		'TTY Mode':0:ZERO
		'SLIM TX7 MUX':0:ZERO
		'DEC8 MUX':0:ZERO
		'ADC2 Volume':1:0
	EndSequence

	ACDBID	16:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "TTY Full Rx"
	Comment "TTY Full Rx device"

	EnableSequence
		'TTY Mode':0:FULL
		'SLIM_0_RX Channels':0:One
		'RX1 MIX1 INP1':0:RX1
		'RX1 MIX1 INP2':0:RX6
		'HPHL DAC Switch':1:1
		'HPHL Volume':1:80
	EndSequence

	DisableSequence
		'TTY Mode':0:ZERO
		'RX1 MIX1 INP1':0:ZERO
		'RX1 MIX1 INP2':0:ZERO
		'HPHL DAC Switch':1:0
		'HPHL Volume':1:0
	EndSequence

	ACDBID	17:1
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "TTY Full Tx"
	Comment "TTY Full Tx device"

	EnableSequence
		'SLIM_0_TX Channels':0:One
		'SLIM TX7 MUX':0:DEC8
		'DEC8 MUX':0:ADC2
		'ADC2 Volume':1:100
	EndSequence

	DisableSequence
		'SLIM TX7 MUX':0:ZERO
		'DEC8 MUX':0:ZERO
		'ADC2 Volume':1:0
	EndSequence

	ACDBID	16:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "BT SCO Rx"
	Comment "BT SCO Rx device"

	EnableSequence
	EndSequence

	DisableSequence
	EndSequence

	ACDBID	22:1
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "BT SCO Tx"
	Comment "BT SCO Tx device"

	EnableSequence
	EndSequence

	DisableSequence
	EndSequence

	ACDBID	21:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "BT SCO WB Rx"
	Comment "BT SCO Rx device"

	EnableSequence
	EndSequence

	DisableSequence
	EndSequence

	ACDBID	39:1
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "BT SCO WB Tx"
	Comment "BT SCO Tx device"

	EnableSequence
	EndSequence

	DisableSequence
	EndSequence

	ACDBID	38:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "HDMI"
	Comment "HDMI Rx device"

	EnableSequence
	EndSequence

	DisableSequence
	EndSequence

	ACDBID	18:1
	EffectsMixerCTL "SRS TruMedia HDMI"

EndSection


SectionDevice
	Name "FM Tx"
	Comment "FM Tx device"

	EnableSequence
	EndSequence

	DisableSequence
	EndSequence

	ACDBID	0:1
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "PROXY Rx"
	Comment "PROXY Rx device"

	EnableSequence
	EndSequence

	DisableSequence
	EndSequence

	ACDBID	0:1
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "PROXY Tx"
	Comment "PROXY Tx device"

	EnableSequence
	EndSequence

	DisableSequence
	EndSequence

	ACDBID	0:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "SSR QMIC"
	Comment "Quad mic device for Surround Sound Recording"

	EnableSequence
		'SLIM_0_TX Channels':0:Four
		'SLIM TX7 MUX':0:DEC9
		'DEC9 MUX':0:DMIC4
		'SLIM TX8 MUX':0:DEC10
		'DEC10 MUX':0:DMIC3
		'SLIM TX9 MUX':0:DEC7
		'DEC7 MUX':0:DMIC1
		'SLIM TX10 MUX':0:DEC6
		'DEC6 MUX':0:DMIC6
		'MICBIAS1 CAPLESS Switch':1:1
		'MICBIAS3 CAPLESS Switch':1:1
		'MICBIAS4 CAPLESS Switch':1:1
	EndSequence

	DisableSequence
		'SLIM TX7 MUX':0:ZERO
		'DEC9 MUX':0:ZERO
		'SLIM TX8 MUX':0:ZERO
		'DEC10 MUX':0:ZERO
		'SLIM TX9 MUX':0:ZERO
		'DEC7 MUX':0:ZERO
		'SLIM TX10 MUX':0:ZERO
		'DEC6 MUX':0:ZERO
		'MICBIAS1 CAPLESS Switch':1:0
		'MICBIAS3 CAPLESS Switch':1:0
		'MICBIAS4 CAPLESS Switch':1:0
	EndSequence

	ACDBID  46:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionDevice
	Name "Dummy Tx"
	Comment "Dummy Tx device, not a physical device just for routing"

	EnableSequence
	EndSequence

	DisableSequence
	EndSequence

	ACDBID	0:2
	EffectsMixerCTL "SRS TruMedia"

EndSection

SectionModifier
	Name "Play Music"
	Comment "Modifier for music playback"

	EnableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia1':1:1
	EndSequence

	DisableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia1':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionModifier
	Name "Play MusicSpeaker FM Tx"
	Comment "Modifier for music playback"

	EnableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia1':1:1
		'SLIMBUS_0_RX Audio Mixer MultiMedia1':1:1
	EndSequence

	DisableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia1':1:0
		'SLIMBUS_0_RX Audio Mixer MultiMedia1':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionModifier
	Name "Play MusicFM Tx"
	Comment "Modifier for music playback on FM Tx"

	EnableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia1':1:1
	EndSequence

	DisableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia1':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionModifier
	Name "Play MusicHDMI"
	Comment "Modifier for music playback on HDMI"

	EnableSequence
		'HDMI Mixer MultiMedia1':1:1
	EndSequence

	DisableSequence
		'HDMI Mixer MultiMedia1':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionModifier
	Name "Play MusicBT SCO Rx"
	Comment "Modifier for music playback"

	EnableSequence
		'INTERNAL_BT_SCO_RX Audio Mixer MultiMedia1':1:1
	EndSequence

	DisableSequence
		'INTERNAL_BT_SCO_RX Audio Mixer MultiMedia1':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionModifier
	Name "Play MusicBT SCO WB Rx"
	Comment "Modifier for music playback"

	EnableSequence
		'INTERNAL_BT_SCO_RX Audio Mixer MultiMedia1':1:1
	EndSequence

	DisableSequence
		'INTERNAL_BT_SCO_RX Audio Mixer MultiMedia1':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionModifier
	Name "Play MusicPROXY Rx"

	EnableSequence
		'AFE_PCM_RX Audio Mixer MultiMedia1':1:1
	EndSequence

	DisableSequence
		'AFE_PCM_RX Audio Mixer MultiMedia1':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionModifier
	Name "Play FM"

	EnableSequence
		'Internal FM RX Volume':1:0
		'SLIMBUS_0_RX Port Mixer INTERNAL_FM_TX':1:1
		'SLIMBUS_DL_HL Switch':1:1
	EndSequence

	DisableSequence
		'SLIMBUS_0_RX Port Mixer INTERNAL_FM_TX':1:0
		'SLIMBUS_DL_HL Switch':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 5
	CapturePCM 6

EndSection

SectionModifier
	Name "Capture FM"

	EnableSequence
		'MultiMedia1 Mixer INTERNAL_FM_TX':1:1
	EndSequence

	DisableSequence
		'MultiMedia1 Mixer INTERNAL_FM_TX':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 0
	CapturePCM 0

EndSection

SectionModifier
	Name "Play LPA"

	EnableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia3':1:1
	EndSequence

	DisableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia3':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 4

EndSection

SectionModifier
	Name "Play LPASpeaker FM Tx"

	EnableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia3':1:1
		'INTERNAL_FM_RX Audio Mixer MultiMedia3':1:1
	EndSequence

	DisableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia3':1:0
		'INTERNAL_FM_RX Audio Mixer MultiMedia3':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 4

EndSection

SectionModifier
	Name "Play LPAFM Tx"

	EnableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia3':1:1
	EndSequence

	DisableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia3':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 4

EndSection

SectionModifier
	Name "Play LPAHDMI"

	EnableSequence
		'HDMI Mixer MultiMedia3':1:1
	EndSequence

	DisableSequence
		'HDMI Mixer MultiMedia3':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 4

EndSection

SectionModifier
	Name "Play LPABT SCO Rx"

	EnableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia3':1:1
	EndSequence

	DisableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia3':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 4

EndSection

SectionModifier
	Name "Play LPABT SCO WB Rx"

	EnableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia3':1:1
	EndSequence

	DisableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia3':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 4

EndSection

SectionModifier
	Name "Play LPAPROXY Rx"

	EnableSequence
		'AFE_PCM_RX Audio Mixer MultiMedia3':1:1
	EndSequence

	DisableSequence
		'AFE_PCM_RX Audio Mixer MultiMedia3':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 4

EndSection

SectionModifier
	Name "Capture Music"

	EnableSequence
		'MultiMedia1 Mixer SLIM_0_TX':1:1
	EndSequence

	DisableSequence
		'MultiMedia1 Mixer SLIM_0_TX':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionModifier
	Name "Capture MusicBT SCO Tx"

	EnableSequence
		'MultiMedia1 Mixer INTERNAL_BT_SCO_TX':1:1
	EndSequence

	DisableSequence
		'MultiMedia1 Mixer INTERNAL_BT_SCO_TX':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionModifier
	Name "Capture MusicBT SCO WB Tx"

	EnableSequence
		'MultiMedia1 Mixer INTERNAL_BT_SCO_TX':1:1
	EndSequence

	DisableSequence
		'MultiMedia1 Mixer INTERNAL_BT_SCO_TX':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionModifier
	Name "Play Voice"

	EnableSequence
		'STUB_RX Mixer Voice Stub':1:1
		'Voice Stub Tx Mixer STUB_TX_HL':1:1
		'Voice Stub Tx Mixer STUB_1_TX_HL':1:1
		'IIR1 Band1':2:0x10000000 0x0 0x0 0x0 0x0
		'IIR1 Band2':2:0x10000000 0x0 0x0 0x0 0x0
		'IIR1 Band3':2:0x10000000 0x0 0x0 0x0 0x0
		'IIR1 Band4':2:0x10000000 0x0 0x0 0x0 0x0
		'IIR1 Band5':2:0x10000000 0x0 0x0 0x0 0x0
		'IIR1 Enable Band1':1:1
		'IIR1 Enable Band2':1:1
		'IIR1 Enable Band3':1:1
		'IIR1 Enable Band4':1:1
		'IIR1 Enable Band5':1:1
		'RX1 MIX2 INP1':0:IIR1
		'RX2 MIX2 INP1':0:IIR1
	EndSequence

	DisableSequence
		'STUB_RX Mixer Voice Stub':1:0
		'Voice Stub Tx Mixer STUB_TX_HL':1:0
		'Voice Stub Tx Mixer STUB_1_TX_HL':1:0
		'RX1 MIX2 INP1':0:ZERO
		'RX2 MIX2 INP1':0:ZERO
		'IIR1 Enable Band1':1:0
		'IIR1 Enable Band2':1:0
		'IIR1 Enable Band3':1:0
		'IIR1 Enable Band4':1:0
		'IIR1 Enable Band5':1:0
		'IIR1 Band1':2:0x0 0x0 0x0 0x0 0x0
		'IIR1 Band2':2:0x0 0x0 0x0 0x0 0x0
		'IIR1 Band3':2:0x0 0x0 0x0 0x0 0x0
		'IIR1 Band4':2:0x0 0x0 0x0 0x0 0x0
		'IIR1 Band5':2:0x0 0x0 0x0 0x0 0x0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 12
	CapturePCM 12

EndSection

SectionModifier
	Name "Play VoiceHDMI"

	EnableSequence
	EndSequence

	DisableSequence
		'Voice Stub Tx Mixer SLIM_3_TX':1:0
		'HDMI_RX_Voice Mixer Voice Stub':1:0
		'HDMI_RX Port Mixer SLIM_3_TX':1:0
		'Voice Stub Tx Mixer STUB_TX_HL':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 12
	CapturePCM 12

EndSection

SectionModifier
	Name "Play VoiceHDMI Tx"

	EnableSequence
		'Voice Stub Tx Mixer SLIM_3_TX':1:1
		'HDMI_RX_Voice Mixer Voice Stub':1:1
		'HDMI_RX Port Mixer SLIM_3_TX':1:1
		'Voice Stub Tx Mixer STUB_TX_HL':1:1
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	PlaybackPCM 12
	CapturePCM 12

EndSection

SectionModifier
	Name "Play VoiceBT SCO Rx"

	EnableSequence
	EndSequence

	DisableSequence
		'Internal BTSCO SampleRate':0:8000
		'Voice Stub Tx Mixer INTERNAL_BT_SCO_TX':1:0
		'SLIMBUS_1_RX Mixer Voice Stub':1:0
		'Voice Stub Tx Mixer SLIM_1_TX':1:0
		'INTERNAL_BT_SCO_RX_Voice Mixer Voice Stub':1:0
		'SLIMBUS_1_RX Port Mixer INTERNAL_BT_SCO_TX':1:0
		'INTERNAL_BT_SCO_RX Port Mixer SLIM_1_TX':1:0
		'SLIMBUS_3_RX_Voice Mixer Voice Stub':1:0
		'SLIMBUS_3_RX Port Mixer INTERNAL_BT_SCO_RX':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 12
	CapturePCM 12

EndSection

SectionModifier
	Name "Play VoiceBT SCO Tx"

	EnableSequence
		'Internal BTSCO SampleRate':0:8000
		'Voice Stub Tx Mixer INTERNAL_BT_SCO_TX':1:1
		'SLIMBUS_1_RX Mixer Voice Stub':1:1
		'Voice Stub Tx Mixer SLIM_1_TX':1:1
		'INTERNAL_BT_SCO_RX_Voice Mixer Voice Stub':1:1
		'SLIMBUS_1_RX Port Mixer INTERNAL_BT_SCO_TX':1:1
		'INTERNAL_BT_SCO_RX Port Mixer SLIM_1_TX':1:1
		'SLIM_3_RX Channels':0:One
		'SLIMBUS_3_RX_Voice Mixer Voice Stub':1:1
		'SLIMBUS_3_RX Port Mixer INTERNAL_BT_SCO_RX':1:1
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	PlaybackPCM 12
	CapturePCM 12

EndSection

SectionModifier
	Name "Play VoiceBT SCO WB Rx"

	EnableSequence
	EndSequence

	DisableSequence
		'Internal BTSCO SampleRate':0:8000
		'Voice Stub Tx Mixer INTERNAL_BT_SCO_TX':1:0
		'SLIMBUS_1_RX Mixer Voice Stub':1:0
		'Voice Stub Tx Mixer SLIM_1_TX':1:0
		'INTERNAL_BT_SCO_RX_Voice Mixer Voice Stub':1:0
		'SLIMBUS_1_RX Port Mixer INTERNAL_BT_SCO_TX':1:0
		'INTERNAL_BT_SCO_RX Port Mixer SLIM_1_TX':1:0
		'SLIMBUS_3_RX_Voice Mixer Voice Stub':1:0
		'SLIMBUS_3_RX Port Mixer INTERNAL_BT_SCO_RX':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 12
	CapturePCM 12

EndSection

SectionModifier
	Name "Play VoiceBT SCO WB Tx"

	EnableSequence
		'Internal BTSCO SampleRate':0:16000
		'Voice Stub Tx Mixer INTERNAL_BT_SCO_TX':1:1
		'SLIMBUS_1_RX Mixer Voice Stub':1:1
		'Voice Stub Tx Mixer SLIM_1_TX':1:1
		'INTERNAL_BT_SCO_RX_Voice Mixer Voice Stub':1:1
		'SLIMBUS_1_RX Port Mixer INTERNAL_BT_SCO_TX':1:1
		'INTERNAL_BT_SCO_RX Port Mixer SLIM_1_TX':1:1
		'SLIM_3_RX Channels':0:One
		'SLIMBUS_3_RX_Voice Mixer Voice Stub':1:1
		'SLIMBUS_3_RX Port Mixer INTERNAL_BT_SCO_RX':1:1
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	PlaybackPCM 12
	CapturePCM 12

EndSection

SectionModifier
	Name "Capture Voice"

	EnableSequence
		'MultiMedia1 Mixer SLIM_4_TX':1:1
	EndSequence

	DisableSequence
		'MultiMedia1 Mixer SLIM_4_TX':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 0
	CapturePCM 0

EndSection

SectionModifier
	Name "Capture A2DP FM"

	EnableSequence
		'MultiMedia2 Mixer INTERNAL_FM_TX':1:1
	EndSequence

	DisableSequence
		'MultiMedia2 Mixer INTERNAL_FM_TX':1:0
	EndSequence

	# ALSA PCMs
	    PlaybackPCM 1
	    CapturePCM 1

EndSection

SectionModifier
	Name "Play VOIP"

	EnableSequence
		'SLIM_0_RX_Voice Mixer Voip':1:1
		'Voip_Tx Mixer SLIM_0_TX_Voip':1:1
	EndSequence

	DisableSequence
		'SLIM_0_RX_Voice Mixer Voip':1:0
		'Voip_Tx Mixer SLIM_0_TX_Voip':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 3
	CapturePCM 3

EndSection

SectionModifier
	Name "Play VOIPBT SCO Rx"

	EnableSequence
	EndSequence

	DisableSequence
		'Internal BTSCO SampleRate':0:8000
		'INTERNAL_BT_SCO_RX_Voice Mixer Voip':1:0
		'Voip_Tx Mixer INTERNAL_BT_SCO_TX_Voip':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 3
	CapturePCM 3

EndSection

SectionModifier
	Name "Play VOIPBT SCO Tx"

	EnableSequence
		'Internal BTSCO SampleRate':0:8000
		'INTERNAL_BT_SCO_RX_Voice Mixer Voip':1:1
		'Voip_Tx Mixer INTERNAL_BT_SCO_TX_Voip':1:1
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	PlaybackPCM 3
	CapturePCM 3

EndSection

SectionModifier
	Name "Play VOIPBT SCO WB Rx"

	EnableSequence
	EndSequence

	DisableSequence
		'Internal BTSCO SampleRate':0:8000
		'INTERNAL_BT_SCO_RX_Voice Mixer Voip':1:0
		'Voip_Tx Mixer INTERNAL_BT_SCO_TX_Voip':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 3
	CapturePCM 3

EndSection

SectionModifier
	Name "Play VOIPBT SCO WB Tx"

	EnableSequence
		'Internal BTSCO SampleRate':0:16000
		'INTERNAL_BT_SCO_RX_Voice Mixer Voip':1:1
		'Voip_Tx Mixer INTERNAL_BT_SCO_TX_Voip':1:1
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	PlaybackPCM 3
	CapturePCM 3

EndSection

SectionModifier
	Name "Play VOIPHDMI"

	EnableSequence
	EndSequence

	DisableSequence
		'HDMI_RX_Voice Mixer Voip':1:0
		'Voip_Tx Mixer SLIM_0_TX_Voip':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 3
	CapturePCM 3

EndSection

SectionModifier
	Name "Play VOIPHDMI Tx"

	EnableSequence
		'HDMI_RX_Voice Mixer Voip':1:1
		'Voip_Tx Mixer SLIM_0_TX_Voip':1:1
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	PlaybackPCM 3
	CapturePCM 3

EndSection

SectionModifier
	Name "Play MusicPROXY Tx"

	EnableSequence
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionModifier
	Name "Play LPAPROXY Tx"

	EnableSequence
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionModifier
	Name "Play FMPROXY Tx"

	EnableSequence
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionModifier
	Name "Capture MusicPROXY Rx"

	EnableSequence
	EndSequence

	DisableSequence
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionModifier
	Name "Capture MusicSSR QMIC"

	EnableSequence
		'MultiMedia1 Mixer SLIM_0_TX':1:1
	EndSequence

	DisableSequence
		'MultiMedia1 Mixer SLIM_0_TX':1:0
	EndSequence

	# ALSA PCMs
	CapturePCM 0
	PlaybackPCM 0

EndSection

SectionModifier
	Name "Play Tunnel"

	EnableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia4':1:1
	EndSequence

	DisableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia4':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 9

EndSection

SectionModifier
	Name "Play TunnelSpeaker FM Tx"

	EnableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia4':1:1
		'INTERNAL_FM_RX Audio Mixer MultiMedia4':1:1
	EndSequence

	DisableSequence
		'SLIMBUS_0_RX Audio Mixer MultiMedia4':1:0
		'INTERNAL_FM_RX Audio Mixer MultiMedia4':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 9

EndSection

SectionModifier
	Name "Play TunnelFM Tx"

	EnableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia4':1:1
	EndSequence

	DisableSequence
		'INTERNAL_FM_RX Audio Mixer MultiMedia4':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 9

EndSection

SectionModifier
	Name "Play TunnelHDMI"

	EnableSequence
		'HDMI Mixer MultiMedia4':1:1
	EndSequence

	DisableSequence
		'HDMI Mixer MultiMedia4':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 9

EndSection

SectionModifier
	Name "Play TunnelBT SCO Rx"

	EnableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia4':1:1
	EndSequence

	DisableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia4':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 9

EndSection

SectionModifier
	Name "Play TunnelBT SCO WB Rx"

	EnableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia4':1:1
	EndSequence

	DisableSequence
		'"INTERNAL_BT_SCO_RX Audio Mixer MultiMedia4':1:0
	EndSequence

	# ALSA PCMs
	PlaybackPCM 9

EndSection

SectionModifier
        Name "Play TunnelPROXY Rx"

        EnableSequence
		'AFE_PCM_RX Audio Mixer MultiMedia4':1:1
        EndSequence

        DisableSequence
		'AFE_PCM_RX Audio Mixer MultiMedia4':1:0
        EndSequence

        # ALSA PCMs
        PlaybackPCM 9

EndSection
# End of master file
