diff --git a/src/conf/ucm/bytcr-rt5651/HiFi.conf b/src/conf/ucm/bytcr-rt5651/HiFi.conf index 961b2604..8733403c 100644 --- a/src/conf/ucm/bytcr-rt5651/HiFi.conf +++ b/src/conf/ucm/bytcr-rt5651/HiFi.conf @@ -21,9 +21,9 @@ SectionVerb { } + - diff --git a/src/conf/ucm/rt5651/EnableSeq.conf b/src/conf/ucm/rt5651/EnableSeq.conf index 37bffecb..6fb3c1f2 100644 --- a/src/conf/ucm/rt5651/EnableSeq.conf +++ b/src/conf/ucm/rt5651/EnableSeq.conf @@ -11,6 +11,8 @@ cset "name='IF1 ASRC Switch' on" cset "name='LOUT L Playback Switch' off" cset "name='LOUT R Playback Switch' off" cset "name='Stereo DAC MIXL DAC L1 Switch' on" +cset "name='Stereo DAC MIXL DAC R1 Switch' off" +cset "name='Stereo DAC MIXR DAC L1 Switch' off" cset "name='Stereo DAC MIXR DAC R1 Switch' on" cset "name='Stereo1 ADC MIXR ADC1 Switch' on" cset "name='Stereo1 ADC MIXR ADC2 Switch' on" diff --git a/src/conf/ucm/rt5651/HeadPhones.conf b/src/conf/ucm/rt5651/HeadPhones.conf index b9323a36..eaf5fdfc 100644 --- a/src/conf/ucm/rt5651/HeadPhones.conf +++ b/src/conf/ucm/rt5651/HeadPhones.conf @@ -3,6 +3,7 @@ SectionDevice."Headphones" { ConflictingDevice [ "Speaker" + "MonoSpeaker" ] EnableSequence [ diff --git a/src/conf/ucm/rt5651/Makefile.am b/src/conf/ucm/rt5651/Makefile.am index abd45ad7..a9600ed6 100644 --- a/src/conf/ucm/rt5651/Makefile.am +++ b/src/conf/ucm/rt5651/Makefile.am @@ -2,5 +2,5 @@ alsaconfigdir = @ALSA_CONFIG_DIR@ ucmdir = $(alsaconfigdir)/ucm/rt5651 ucm_DATA = EnableSeq.conf HeadPhones.conf IN1-InternalMic.conf \ IN2-InternalMic.conf IN12-InternalMic.conf IN3-HeadsetMic.conf \ - Speaker.conf + Speaker.conf MonoSpeaker.conf EXTRA_DIST = $(ucm_DATA) diff --git a/src/conf/ucm/rt5651/MonoSpeaker.conf b/src/conf/ucm/rt5651/MonoSpeaker.conf new file mode 100644 index 00000000..0c3492fb --- /dev/null +++ b/src/conf/ucm/rt5651/MonoSpeaker.conf @@ -0,0 +1,36 @@ +SectionDevice."MonoSpeaker" { + Comment "Mono Speaker" + + ConflictingDevice [ + "Speaker" + "Headphones" + ] + + EnableSequence [ + cdev "hw:bytcrrt5651" + + # Map left and right input on left + cset "name='Stereo DAC MIXR DAC R1 Switch' off" + cset "name='Stereo DAC MIXL DAC R1 Switch' on" + + cset "name='Speaker Switch' on" + cset "name='LOUT L 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" + # Disabling the switches is done by the Speaker EnableSeq + + # Undo mono mapping + cset "name='Stereo DAC MIXL DAC R1 Switch' off" + cset "name='Stereo DAC MIXR DAC R1 Switch' on" + ] + + Value { + PlaybackChannels "2" + } +} diff --git a/src/conf/ucm/rt5651/Speaker.conf b/src/conf/ucm/rt5651/Speaker.conf index 44168cc5..c1091523 100644 --- a/src/conf/ucm/rt5651/Speaker.conf +++ b/src/conf/ucm/rt5651/Speaker.conf @@ -2,6 +2,7 @@ SectionDevice."Speaker" { Comment "Speakers" ConflictingDevice [ + "MonoSpeaker" "Headphones" ]