From ca65130f218cf49298fe0287524fd33810f6aa59 Mon Sep 17 00:00:00 2001 From: WeirdTreeThing Date: Tue, 27 Jun 2023 23:05:16 -0400 Subject: [PATCH] adl/sof-rt5682: add taeko ucm --- adl/sof-rt5682/HiFi.taeko.conf | 140 +++++++++++++++++++++++++++++++++ adl/sof-rt5682/sof-rt5682.conf | 12 +++ 2 files changed, 152 insertions(+) create mode 100644 adl/sof-rt5682/HiFi.taeko.conf diff --git a/adl/sof-rt5682/HiFi.taeko.conf b/adl/sof-rt5682/HiFi.taeko.conf new file mode 100644 index 0000000..a7dbc59 --- /dev/null +++ b/adl/sof-rt5682/HiFi.taeko.conf @@ -0,0 +1,140 @@ +SectionVerb { + Value { + FullySpecifiedUCM "1" + } + EnableSequence [ + cset "name='Headphone Jack Switch' off" + cset "name='HPOL Playback Switch' off" + cset "name='HPOR Playback Switch' off" + cset "name='Stereo1 DAC MIXL DAC L1 Switch' 0" + cset "name='Stereo1 DAC MIXR DAC R1 Switch' 0" + cset "name='Stereo1 ADC L Mux' 0" + cset "name='STO1 ADC Capture Switch' on" + cset "name='RECMIX1L CBJ Switch' 1" + cset "name='IF1 01 ADC Swap Mux' 2" + cset "name='CBJ Boost Volume' 3" + cset "name='Stereo1 ADC L1 Mux' 1" + cset "name='Stereo1 ADC R1 Mux' 1" + cset "name='Stereo1 ADC MIXL ADC2 Switch' 0" + cset "name='Stereo1 ADC MIXR ADC2 Switch' 0" + cset "name='Stereo1 ADC MIXL ADC1 Switch' 1" + cset "name='Stereo1 ADC MIXR ADC1 Switch' 1" + ] +} + +# Split 4ch dmic into 2 virtual 2ch mics +Include.pcm_split.File "/conf.d/dmic-common/split.conf" + +Macro [ + { + SplitPCM { + Name "adl_stereo_in" + Direction Capture + Format S32_LE + Channels 2 + HWChannels 4 + HWChannelPos0 FL + HWChannelPos1 FR + HWChannelPos2 FL + HWChannelPos3 FR + } + } +] + +Include.ctl_remap.File "/conf.d/dmic-common/remap.conf" + +Macro [ + { + CtlRemapStereoVolSw { + Dst "Mic 1 Capture" + Index0 0 + Index1 1 + } + } + { + CtlRemapStereoVolSw { + Dst "Mic 2 Capture" + Index0 2 + Index1 3 + } + } +] + +SectionDevice."Speaker" { + Comment "Speaker" + + Value { + PlaybackPriority 100 + PlaybackPCM "hw:${CardId},0" + } + EnableSequence [ + cset "name='Spk Switch' on" + ] + DisableSequence [ + cset "name='Spk Switch' off" + ] +} + +SectionDevice."Headphones" { + Comment "Headphones" + + Value { + PlaybackPriority 200 + PlaybackPCM "hw:${CardId},1" + JackControl "Headphone Jack" + } + EnableSequence [ + cset "name='Headphone Jack Switch' on" + cset "name='HPOL Playback Switch' on" + cset "name='HPOR Playback Switch' on" + cset "name='Stereo1 DAC MIXL DAC L1 Switch' 1" + cset "name='Stereo1 DAC MIXR DAC R1 Switch' 1" + ] + DisableSequence [ + cset "name='Headphone Jack Switch' off" + cset "name='HPOL Playback Switch' off" + cset "name='HPOR Playback Switch' off" + cset "name='Stereo1 DAC MIXL DAC L1 Switch' 0" + cset "name='Stereo1 DAC MIXR DAC R1 Switch' 0" + ] +} + +SectionDevice."Mic" { + Comment "Internal Microphone" + + Value { + CapturePriority 100 + CapturePCM "hw:${CardId},99" + CaptureChannels 4 + } + Macro.pcm_split.SplitPCMDevice { + Name "adl_stereo_in" + Direction Capture + Device 99 + HWChannels 4 + Channels 2 + Channel0 0 + Channel1 1 + ChannelPos0 FL + ChannelPos1 FR + } +} + +SectionDevice."Headset" { + Comment "Headset Microphone" + + Value { + CapturePriority 200 + CapturePCM "hw:${CardId},1" + CaptureMixerElem "Headset Mic" + JackControl "Headset Mic Jack" + } + EnableSequence [ + cset "name='Headset Mic Switch' on" + ] + DisableSequence [ + cset "name='Headset Mic Switch' off" + ] +} + +Include.hdmi.File "/conf.d/hdmi-common/hdmi2345.conf" diff --git a/adl/sof-rt5682/sof-rt5682.conf b/adl/sof-rt5682/sof-rt5682.conf index 98035cd..a0eb656 100644 --- a/adl/sof-rt5682/sof-rt5682.conf +++ b/adl/sof-rt5682/sof-rt5682.conf @@ -48,3 +48,15 @@ If.taniks { Comment "Default" } } + +If.taeko { + Condition { + Type String + Haystack "${sys:devices/virtual/dmi/id/product_name}" + Needle "Taeko" + } + True.SectionUseCase."HiFi" { + File "HiFi.taeko.conf" + Comment "Default" + } +}