# Adapted from https://github.com/plbossart/UCM/tree/master/bytcr-rt5651
+<searchdir:ucm>
+
SectionVerb {
EnableSequence [
cdev "hw:bytcrrt5651"
}
}
-SectionDevice."Headphones" {
- Comment "Headphones playback"
-
- ConflictingDevice [
- "Speaker"
- ]
-
- EnableSequence [
- cdev "hw:bytcrrt5651"
- exec "echo Headphones playback enable sequence"
- cset "name='Headphone Switch' on"
- cset "name='HPO L Playback Switch' on"
- cset "name='HPO R Playback Switch' on"
- # Done after turning the HP on to keep the bias and clk on
- cset "name='Speaker Switch' off"
- cset "name='LOUT L Playback Switch' off"
- cset "name='LOUT R Playback Switch' off"
- ]
-
- DisableSequence [
- cdev "hw:bytcrrt5651"
- exec "echo Headphones playback disable sequence"
- # This is done by the Speaker EnableSequence, so that the
- # Platform Clock and BIAS do not temporarily get turned off
- # as that breaks audio-streams which are playing when
- # switching between Speaker/Headphone
- ]
-
- Value {
- PlaybackChannels "2"
- JackControl "Headphone Jack"
- }
-}
-
-SectionDevice."Speaker" {
- Comment "Speaker playback"
-
- ConflictingDevice [
- "Headphones"
- ]
-
- EnableSequence [
- cdev "hw:bytcrrt5651"
- exec "echo Speaker enable sequence"
- cset "name='Speaker Switch' on"
- cset "name='LOUT L Playback Switch' on"
- cset "name='LOUT R Playback Switch' on"
- # Done after turning the speaker on to keep the bias and clk on
- cset "name='Headphone Switch' off"
- cset "name='HPO L Playback Switch' off"
- cset "name='HPO R Playback Switch' off"
- ]
-
- DisableSequence [
- cdev "hw:bytcrrt5651"
- exec "echo Speaker disable sequence"
- # This is done by the Headphones EnableSequence, so that the
- # Platform Clock and BIAS do not temporarily get turned off
- # as that breaks audio-streams which are playing when
- # switching between Speaker/Headphone
- ]
-
- Value {
- PlaybackChannels "2"
- }
-}
-
-SectionDevice."InternalMic-IN1" {
- Comment "Internal Microphone on IN1"
-
- ConflictingDevice [
- "InternalMic-IN2"
- "InternalMic-IN12"
- "HeadsetMic-IN3"
- ]
-
- EnableSequence [
- cdev "hw:bytcrrt5651"
- exec "echo Internal Mic IN1 Microphone enable sequence"
- cset "name='Internal Mic Switch' on"
- cset "name='RECMIXL BST1 Switch' on"
- cset "name='RECMIXR BST1 Switch' on"
- ]
-
- DisableSequence [
- cdev "hw:bytcrrt5651"
- exec "echo Internal Mic IN1 Microphone disable sequence"
- cset "name='Internal Mic Switch' off"
- cset "name='RECMIXL BST1 Switch' off"
- cset "name='RECMIXR BST1 Switch' off"
- ]
-
- Value {
- CaptureChannels "2"
- }
-}
-
-SectionDevice."InternalMic-IN2" {
- Comment "Internal Microphone on IN2"
-
- ConflictingDevice [
- "InternalMic-IN1"
- "InternalMic-IN12"
- "HeadsetMic-IN3"
- ]
-
- EnableSequence [
- cdev "hw:bytcrrt5651"
- exec "echo Internal Mic IN2 Microphone enable sequence"
- cset "name='Internal Mic Switch' on"
- cset "name='RECMIXL BST2 Switch' on"
- cset "name='RECMIXR BST2 Switch' on"
- ]
-
- DisableSequence [
- cdev "hw:bytcrrt5651"
- exec "echo Internal Mic IN2 Microphone disable sequence"
- cset "name='Internal Mic Switch' off"
- cset "name='RECMIXL BST2 Switch' off"
- cset "name='RECMIXR BST2 Switch' off"
- ]
-
- Value {
- CaptureChannels "2"
- }
-}
-
-SectionDevice."InternalMic-IN12" {
- Comment "Internal Microphones on IN1 and IN2"
-
- ConflictingDevice [
- "InternalMic-IN1"
- "InternalMic-IN2"
- "HeadsetMic-IN3"
- ]
-
- EnableSequence [
- cdev "hw:bytcrrt5651"
- exec "echo Internal Mic IN12 Microphone enable sequence"
- cset "name='Internal Mic Switch' on"
- cset "name='RECMIXL BST1 Switch' on"
- cset "name='RECMIXR BST1 Switch' on"
- cset "name='RECMIXL BST2 Switch' on"
- cset "name='RECMIXR BST2 Switch' on"
- ]
-
- DisableSequence [
- cdev "hw:bytcrrt5651"
- exec "echo Internal Mic IN12 Microphone disable sequence"
- cset "name='Internal Mic Switch' off"
- cset "name='RECMIXL BST1 Switch' off"
- cset "name='RECMIXR BST1 Switch' off"
- cset "name='RECMIXL BST2 Switch' off"
- cset "name='RECMIXR BST2 Switch' off"
- ]
-
- Value {
- CaptureChannels "2"
- }
-}
-
-SectionDevice."HeadsetMic-IN3" {
- Comment "Headset Microphone"
-
- ConflictingDevice [
- "InternalMic-IN1"
- "InternalMic-IN2"
- "InternalMic-IN12"
- ]
+<rt5651/Speaker.conf>
+<rt5651/HeadPhones.conf>
- EnableSequence [
- cdev "hw:bytcrrt5651"
- exec "echo HeadsetMic-IN3 Microphone enable sequence"
- cset "name='Headset Mic Switch' on"
- cset "name='RECMIXL BST3 Switch' on"
- cset "name='RECMIXR BST3 Switch' on"
- ]
- DisableSequence [
- cdev "hw:bytcrrt5651"
- exec "echo HeadsetMic-IN3 Microphone disable sequence"
- cset "name='Headset Mic Switch' off"
- cset "name='RECMIXL BST3 Switch' off"
- cset "name='RECMIXR BST3 Switch' off"
- ]
-
- Value {
- CaptureChannels "2"
- JackControl "Headset Mic Jack"
- }
-}
+<rt5651/IN1-InternalMic.conf>
+<rt5651/IN2-InternalMic.conf>
+<rt5651/IN12-InternalMic.conf>
+<rt5651/IN3-HeadsetMic.conf>