conf: Move UCM profile snippets into components subdirectory

We have placed UCM profile snippets to be included by the main config
files also in the same directory, src/conf/ucm, it confuses alsaucm
program that scans over all subdirectories.  It thinks such a file is
also the main config file, and spews errors like:
  % alsaucm
  ALSA lib utils.c:67:(uc_mgr_config_load) could not open configuration file /usr/share/alsa/ucm/bytcr/bytcr.conf
  ALSA lib parser.c:1427:(load_master_config) error: could not parse configuration for card bytcr
  alsaucm: unable to obtain card list: No such file or directory

Actually we already defined the subdirectory for such components, and
they are skipped at parsing the main configs.  So we just need to move
the files there -- this is what's done here.

One more thing done here is to add a new component subdirectory,
platforms, for definitions bytcr/* that don't match with neither the
existing ones (codecs nor dsps).

Suggested-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Jaroslav Kysela <perex@perex.cz>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Tested-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Takashi Iwai 2018-11-27 13:55:04 +01:00
parent 7ca1f6e78c
commit d48adc2a20
52 changed files with 147 additions and 138 deletions

View file

@ -0,0 +1,4 @@
SUBDIRS=\
rt5640 \
rt5651 \
nau8824

View file

@ -0,0 +1,15 @@
# Playback TDM configuration
cset "name='DACL Channel Source' 0"
cset "name='DACR Channel Source' 1"
# Input Configuration
cset "name='DMIC1 Enable Switch' off"
cset "name='DMIC2 Enable Switch' off"
cset "name='DMIC3 Enable Switch' off"
cset "name='DMIC4 Enable Switch' off"
cset "name='MIC1 Volume' 10"
cset "name='MIC2 Volume' 10"
# Button Configuration
cset "name='THD for key media' 10"
cset "name='THD for key voice command' 16"
cset "name='THD for key volume up' 38"
cset "name='THD for key volume down' 115"

View file

@ -0,0 +1,25 @@
SectionDevice."Headphones" {
Comment "Headphones"
Value {
PlaybackChannels "2"
JackControl "Headphone Jack"
}
ConflictingDevice [
"MonoSpeaker"
"Speaker"
]
EnableSequence [
cdev "hw:chtnau8824"
cset "name='Headphone Switch' on"
]
DisableSequence [
cdev "hw:chtnau8824"
cset "name='Headphone Switch' off"
]
}

View file

@ -0,0 +1,31 @@
SectionDevice."HeadsetMic" {
Comment "Headset Microphone"
Value {
CaptureChannels "2"
JackControl "Headset Mic Jack"
}
ConflictingDevice [
"InternalMic"
]
EnableSequence [
cdev "hw:chtnau8824"
cset "name='ADC CH0 Select' 1"
cset "name='ADC CH1 Select' 1"
cset "name='Headset Mic Switch' on"
cset "name='Right ADC HSMIC Switch' on"
cset "name='Left ADC HSMIC Switch' on"
]
DisableSequence [
cdev "hw:chtnau8824"
cset "name='Headset Mic Switch' off"
cset "name='Right ADC HSMIC Switch' off"
cset "name='Left ADC HSMIC Switch' off"
]
}

View file

@ -0,0 +1,31 @@
SectionDevice."InternalMic" {
Comment "Internal Microphone"
Value {
CaptureChannels "2"
CapturePriority "150"
}
ConflictingDevice [
"HeadsetMic"
]
EnableSequence [
cdev "hw:chtnau8824"
cset "name='ADC CH0 Select' 0"
cset "name='ADC CH1 Select' 0"
cset "name='Int Mic Switch' on"
cset "name='Right ADC MIC Switch' on"
cset "name='Left ADC MIC Switch' on"
]
DisableSequence [
cdev "hw:chtnau8824"
cset "name='Int Mic Switch' off"
cset "name='Right ADC MIC Switch' off"
cset "name='Left ADC MIC Switch' off"
]
}

View file

@ -0,0 +1,5 @@
alsaconfigdir = @ALSA_CONFIG_DIR@
ucmdir = $(alsaconfigdir)/ucm/codecs/nau8824
ucm_DATA = EnableSeq.conf HeadPhones.conf HeadsetMic.conf InternalMic.conf \
MonoSpeaker.conf Speaker.conf
EXTRA_DIST = $(ucm_DATA)

View file

@ -0,0 +1,29 @@
SectionDevice."MonoSpeaker" {
Comment "Mono Speaker"
Value {
PlaybackChannels "2"
}
ConflictingDevice [
"Speaker"
"Headphones"
]
EnableSequence [
cdev "hw:chtnau8824"
# nau8824 mono speaker boards have the speaker on the right chan
cset "name='Speaker Left DACL Volume' 0"
cset "name='Speaker Left DACR Volume' 0"
cset "name='Speaker Right DACL Volume' 1"
cset "name='Speaker Right DACR Volume' 1"
cset "name='Ext Spk Switch' on"
]
DisableSequence [
cdev "hw:chtnau8824"
cset "name='Ext Spk Switch' off"
]
}

View file

@ -0,0 +1,28 @@
SectionDevice."Speaker" {
Comment "Speaker"
Value {
PlaybackChannels "2"
}
ConflictingDevice [
"MonoSpeaker"
"Headphones"
]
EnableSequence [
cdev "hw:chtnau8824"
cset "name='Speaker Left DACL Volume' 1"
cset "name='Speaker Left DACR Volume' 0"
cset "name='Speaker Right DACL Volume' 0"
cset "name='Speaker Right DACR Volume' 1"
cset "name='Ext Spk Switch' on"
]
DisableSequence [
cdev "hw:chtnau8824"
cset "name='Ext Spk Switch' off"
]
}

View file

@ -0,0 +1,31 @@
SectionDevice."DigitalMics" {
Comment "Internal Digital Microphones"
ConflictingDevice [
"IN1-InternalMics"
"IN3-InternalMics"
"HeadsetMic"
]
EnableSequence [
cdev "hw:bytcrrt5640"
cset "name='Stereo ADC MIXL ADC2 Switch' on"
cset "name='Stereo ADC MIXR ADC2 Switch' on"
cset "name='Internal Mic Switch' on"
]
DisableSequence [
cdev "hw:bytcrrt5640"
cset "name='Stereo ADC MIXL ADC2 Switch' off"
cset "name='Stereo ADC MIXR ADC2 Switch' off"
cset "name='Internal Mic Switch' off"
]
Value {
CaptureChannels 2
}
}

View file

@ -0,0 +1,41 @@
# RT5640 default output routing
cset "name='OUT MIXL DAC L1 Switch' on"
cset "name='OUT MIXR DAC R1 Switch' on"
# uncomment for loopback mic->speakers
# cset "name='SPOL MIX BST1 Switch' on"
# cset "name='SPOR MIX BST1 Switch' on"
# uncomment for loopback playback -> capture
# cset "name='RECMIXL OUT MIXL Switch' on"
# cset "name='RECMIXR OUT MIXR Switch' on"
# uncomment to enable swap between AIF1 and AIF2
# warning: can only work with SSP0 firmware enabled
cset "name='SDI select' 0"
cset "name='DAI select' 0"
#cset "name='SDI select' 1"
#cset "name='DAI select' 1"
cset "name='DAC2 Playback Switch' on"
cset "name='DIG MIXL DAC L2 Switch' on"
# Input Configuration
cset "name='Stereo ADC1 Mux' ADC"
cset "name='Stereo ADC2 Mux' DMIC1"
cset "name='Mono ADC L1 Mux' 1"
cset "name='Mono ADC R1 Mux' 1"
# 47=0dB, 0.375 dB/step, set it to 6 dB to help with soft mics
cset "name='ADC Capture Volume' 63"
# Set ADC Boost Gain to 3dB higher vals result in too much noise
cset "name='ADC Boost Gain' 1"
# Set IN1/IN3 internal mic boost to 8 (max)
# Set IN2 headset-mic boost to 1, headset mics are quite loud
cset "name='IN1 Boost' 8"
cset "name='IN2 Boost' 1"
cset "name='IN3 Boost' 8"
cset "name='Internal Mic Switch' off"
cset "name='Headset Mic Switch' off"
cset "name='ADC Capture Switch' on"

View file

@ -0,0 +1,41 @@
SectionDevice."Headphones" {
Comment "Headphones"
ConflictingDevice [
"Speaker"
"MonoSpeaker"
]
EnableSequence [
cdev "hw:bytcrrt5640"
cset "name='DAC MIXL INF1 Switch' on"
cset "name='DAC MIXR INF1 Switch' on"
cset "name='Stereo DAC MIXL DAC L1 Switch' on"
cset "name='Stereo DAC MIXR DAC R1 Switch' on"
cset "name='Stereo DAC MIXL DAC L2 Switch' on"
cset "name='Stereo DAC MIXR DAC R2 Switch' on"
cset "name='HPO MIX HPVOL Switch' on"
cset "name='Headphone Switch' on"
cset "name='HP Channel Switch' on"
cset "name='Speaker Switch' off"
cset "name='HP L Playback Switch' on"
cset "name='HP R Playback Switch' on"
cset "name='HP Playback Volume' 29"
]
DisableSequence [
cdev "hw:bytcrrt5640"
cset "name='Headphone Switch' off"
cset "name='HP Channel Switch' off"
cset "name='HP L Playback Switch' off"
cset "name='HP R Playback Switch' off"
cset "name='HP Playback Volume' 0"
]
Value {
PlaybackChannels "2"
JackControl "Headphone Jack"
}
}

View file

@ -0,0 +1,48 @@
SectionDevice."HeadsetMic" {
Comment "Headset Microphone"
ConflictingDevice [
"IN1-InternalMics"
"IN3-InternalMics"
"DigitalMics"
]
EnableSequence [
cdev "hw:bytcrrt5640"
cset "name='Headset Mic Switch' on"
cset "name='RECMIXL BST2 Switch' on"
cset "name='RECMIXR BST2 Switch' on"
cset "name='Stereo ADC MIXL ADC1 Switch' on"
cset "name='Stereo ADC MIXR ADC1 Switch' on"
cset "name='Mono ADC MIXL ADC1 Switch' on"
cset "name='Mono ADC MIXR ADC1 Switch' on"
cset "name='Mono ADC Capture Switch' on"
]
DisableSequence [
cdev "hw:bytcrrt5640"
cset "name='Stereo ADC MIXL ADC1 Switch' off"
cset "name='Stereo ADC MIXR ADC1 Switch' off"
cset "name='RECMIXL BST2 Switch' off"
cset "name='RECMIXR BST2 Switch' off"
cset "name='Headset Mic Switch' off"
cset "name='Mono ADC MIXL ADC1 Switch' off"
cset "name='Mono ADC MIXR ADC1 Switch' off"
cset "name='Mono ADC Capture Switch' off"
]
Value {
CaptureChannels 2
JackControl "Headset Mic Jack"
}
}

View file

@ -0,0 +1,50 @@
SectionDevice."IN1-InternalMics" {
Comment "Internal Microphone on IN1"
ConflictingDevice [
"DigitalMics"
"HeadsetMic"
"IN3-InternalMics"
]
EnableSequence [
cdev "hw:bytcrrt5640"
cset "name='Internal Mic Switch' on"
cset "name='RECMIXL BST1 Switch' on"
cset "name='RECMIXR BST1 Switch' on"
cset "name='RECMIXL BST3 Switch' off"
cset "name='RECMIXR BST3 Switch' off"
cset "name='Stereo ADC MIXL ADC1 Switch' on"
cset "name='Stereo ADC MIXR ADC1 Switch' on"
cset "name='Mono ADC MIXL ADC1 Switch' on"
cset "name='Mono ADC MIXR ADC1 Switch' on"
cset "name='Mono ADC Capture Switch' on"
]
DisableSequence [
cdev "hw:bytcrrt5640"
cset "name='Stereo ADC MIXL ADC1 Switch' off"
cset "name='Stereo ADC MIXR ADC1 Switch' off"
cset "name='RECMIXL BST1 Switch' off"
cset "name='RECMIXR BST1 Switch' off"
cset "name='Internal Mic Switch' off"
cset "name='Mono ADC MIXL ADC1 Switch' off"
cset "name='Mono ADC MIXR ADC1 Switch' off"
cset "name='Mono ADC Capture Switch' off"
]
Value {
CaptureChannels 2
}
}

View file

@ -0,0 +1,50 @@
SectionDevice."IN3-InternalMics" {
Comment "Internal Microphone on IN3"
ConflictingDevice [
"DigitalMics"
"HeadsetMic"
"IN1-InternalMics"
]
EnableSequence [
cdev "hw:bytcrrt5640"
cset "name='Internal Mic Switch' on"
cset "name='RECMIXL BST1 Switch' off"
cset "name='RECMIXR BST1 Switch' off"
cset "name='RECMIXL BST3 Switch' on"
cset "name='RECMIXR BST3 Switch' on"
cset "name='Stereo ADC MIXL ADC1 Switch' on"
cset "name='Stereo ADC MIXR ADC1 Switch' on"
cset "name='Mono ADC MIXL ADC1 Switch' on"
cset "name='Mono ADC MIXR ADC1 Switch' on"
cset "name='Mono ADC Capture Switch' on"
]
DisableSequence [
cdev "hw:bytcrrt5640"
cset "name='Stereo ADC MIXL ADC1 Switch' off"
cset "name='Stereo ADC MIXR ADC1 Switch' off"
cset "name='RECMIXL BST3 Switch' off"
cset "name='RECMIXR BST3 Switch' off"
cset "name='Internal Mic Switch' off"
cset "name='Mono ADC MIXL ADC1 Switch' off"
cset "name='Mono ADC MIXR ADC1 Switch' off"
cset "name='Mono ADC Capture Switch' off"
]
Value {
CaptureChannels 2
}
}

View file

@ -0,0 +1,5 @@
alsaconfigdir = @ALSA_CONFIG_DIR@
ucmdir = $(alsaconfigdir)/ucm/codecs/rt5640
ucm_DATA = DigitalMics.conf EnableSeq.conf HeadPhones.conf HeadsetMic.conf \
IN1-InternalMic.conf IN3-InternalMic.conf MonoSpeaker.conf Speaker.conf
EXTRA_DIST = $(ucm_DATA)

View file

@ -0,0 +1,45 @@
SectionDevice."MonoSpeaker" {
Comment "Mono Speaker"
ConflictingDevice [
"Headphones"
"Speaker"
]
EnableSequence [
cdev "hw:bytcrrt5640"
cset "name='DAC MIXL INF1 Switch' on"
cset "name='DAC MIXR INF1 Switch' on"
cset "name='Stereo DAC MIXL DAC L1 Switch' on"
cset "name='Stereo DAC MIXR DAC R1 Switch' on"
cset "name='Stereo DAC MIXL DAC L2 Switch' on"
cset "name='Stereo DAC MIXR DAC R2 Switch' on"
cset "name='SPK MIXL DAC L1 Switch' on"
cset "name='SPK MIXR DAC R1 Switch' on"
cset "name='SPOL MIX SPKVOL L Switch' on"
# for mono speaker we apply left on right
# cset "name='SPOR MIX SPKVOL R Switch' on"
cset "name='SPOL MIX SPKVOL R Switch' on"
cset "name='Speaker Switch' on"
cset "name='Speaker Channel Switch' on"
cset "name='Headphone Switch' off"
cset "name='Speaker L Playback Switch' on"
cset "name='Speaker R Playback Switch' on"
cset "name='Speaker Playback Volume' 35"
]
DisableSequence [
cdev "hw:bytcrrt5640"
cset "name='Speaker Switch' off"
cset "name='Speaker Channel Switch' off"
cset "name='Speaker L Playback Switch' off"
cset "name='Speaker R Playback Switch' off"
cset "name='Speaker Playback Volume' 0"
]
Value {
PlaybackChannels "2"
}
}

View file

@ -0,0 +1,45 @@
SectionDevice."Speaker" {
Comment "Speakers"
ConflictingDevice [
"Headphones"
"MonoSpeaker"
]
EnableSequence [
cdev "hw:bytcrrt5640"
cset "name='DAC MIXL INF1 Switch' on"
cset "name='DAC MIXR INF1 Switch' on"
cset "name='Stereo DAC MIXL DAC L1 Switch' on"
cset "name='Stereo DAC MIXR DAC R1 Switch' on"
cset "name='Stereo DAC MIXL DAC L2 Switch' on"
cset "name='Stereo DAC MIXR DAC R2 Switch' on"
cset "name='SPK MIXL DAC L1 Switch' on"
cset "name='SPK MIXR DAC R1 Switch' on"
cset "name='SPOL MIX SPKVOL L Switch' on"
cset "name='SPOR MIX SPKVOL R Switch' on"
# undo MonoSpeaker mixing of right channel to left speaker
cset "name='SPOL MIX SPKVOL R Switch' off"
cset "name='Speaker Switch' on"
cset "name='Speaker Channel Switch' on"
cset "name='Headphone Switch' off"
cset "name='Speaker L Playback Switch' on"
cset "name='Speaker R Playback Switch' on"
cset "name='Speaker Playback Volume' 35"
]
DisableSequence [
cdev "hw:bytcrrt5640"
cset "name='Speaker Switch' off"
cset "name='Speaker Channel Switch' off"
cset "name='Speaker L Playback Switch' off"
cset "name='Speaker R Playback Switch' off"
cset "name='Speaker Playback Volume' 0"
]
Value {
PlaybackChannels "2"
}
}

View file

@ -0,0 +1,54 @@
# default state
cset "name='HPO MIX DAC1 Switch' on"
cset "name='HPO MIX HPVOL Switch' off"
cset "name='HPO L Playback Switch' off"
cset "name='HPO R Playback Switch' off"
cset "name='HPOVOL L Switch' on"
cset "name='HPOVOL R Switch' on"
cset "name='LOUT MIX DAC L1 Switch' on"
cset "name='LOUT MIX DAC R1 Switch' on"
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"
cset "name='Stereo2 ADC MIXL ADC1 Switch' on"
cset "name='Stereo2 ADC MIXL ADC2 Switch' on"
cset "name='Stereo2 ADC MIXR ADC1 Switch' on"
cset "name='Stereo2 ADC MIXR ADC2 Switch' on"
cset "name='Headphone Switch' off"
cset "name='Speaker Switch' off"
# volumes
cset "name='OUT Playback Volume' 31"
cset "name='HP Playback Volume' 31"
cset "name='DAC1 Playback Volume' 175"
cset "name='IN Capture Volume' 23"
# 47=0dB, 0.375 dB/step, set it to 6 dB to help with soft mics
cset "name='ADC Capture Volume' 63"
cset "name='ADC Capture Switch' on"
# Set ADC Boost Gain to 3dB higher vals result in too much noise
cset "name='ADC Boost Gain' 1"
# Set IN1, IN2 and IN3 internal mic boost to 1
cset "name='IN1 Boost' 1"
cset "name='IN2 Boost' 1"
cset "name='IN3 Boost' 1"
# input
cset "name='Stereo1 ADC L1 Mux' ADC"
cset "name='Stereo1 ADC R1 Mux' ADC"
cset "name='Stereo1 ADC MIXL ADC1 Switch' on"
cset "name='Stereo1 ADC MIXR ADC1 Switch' on"
cset "name='RECMIXL BST1 Switch' off"
cset "name='RECMIXR BST1 Switch' off"
cset "name='RECMIXL BST3 Switch' off"
cset "name='RECMIXR BST3 Switch' off"
cset "name='RECMIXL BST2 Switch' off"
cset "name='RECMIXR BST2 Switch' off"
cset "name='Headset Mic Switch' off"
cset "name='Internal Mic Switch' off"
cset "name='Line In Switch' off"

View file

@ -0,0 +1,42 @@
SectionDevice."Headphones" {
Comment "Headphones"
ConflictingDevice [
"Speaker"
"MonoSpeaker"
]
EnableSequence [
cdev "hw:bytcrrt5651"
# Swap left and right
cset "name='Stereo DAC MIXL DAC R1 Switch' on"
cset "name='Stereo DAC MIXL DAC L1 Switch' off"
cset "name='Stereo DAC MIXR DAC L1 Switch' on"
cset "name='Stereo DAC MIXR DAC R1 Switch' off"
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"
# Disabling the HP switches is done by the Speaker EnableSeq
# Unswap left and right
cset "name='Stereo DAC MIXL DAC L1 Switch' on"
cset "name='Stereo DAC MIXL DAC R1 Switch' off"
cset "name='Stereo DAC MIXR DAC R1 Switch' on"
cset "name='Stereo DAC MIXR DAC L1 Switch' off"
]
Value {
PlaybackChannels "2"
JackControl "Headphone Jack"
}
}

View file

@ -0,0 +1,32 @@
SectionDevice."Headphones" {
Comment "Headphones"
ConflictingDevice [
"Speaker"
"MonoSpeaker"
]
EnableSequence [
cdev "hw:bytcrrt5651"
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"
# 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"
}
}

View file

@ -0,0 +1,27 @@
SectionDevice."InternalMic-IN1" {
Comment "Internal Microphone on IN1"
ConflictingDevice [
"InternalMic-IN2"
"InternalMic-IN12"
"HeadsetMic-IN3"
]
EnableSequence [
cdev "hw:bytcrrt5651"
cset "name='Internal Mic Switch' on"
cset "name='RECMIXL BST1 Switch' on"
cset "name='RECMIXR BST1 Switch' on"
]
DisableSequence [
cdev "hw:bytcrrt5651"
cset "name='Internal Mic Switch' off"
cset "name='RECMIXL BST1 Switch' off"
cset "name='RECMIXR BST1 Switch' off"
]
Value {
CaptureChannels "2"
}
}

View file

@ -0,0 +1,31 @@
SectionDevice."InternalMic-IN12" {
Comment "Internal Microphones on IN1 and IN2"
ConflictingDevice [
"InternalMic-IN1"
"InternalMic-IN2"
"HeadsetMic-IN3"
]
EnableSequence [
cdev "hw:bytcrrt5651"
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"
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"
}
}

View file

@ -0,0 +1,27 @@
SectionDevice."InternalMic-IN2" {
Comment "Internal Microphone on IN2"
ConflictingDevice [
"InternalMic-IN1"
"InternalMic-IN12"
"HeadsetMic-IN3"
]
EnableSequence [
cdev "hw:bytcrrt5651"
cset "name='Internal Mic Switch' on"
cset "name='RECMIXL BST2 Switch' on"
cset "name='RECMIXR BST2 Switch' on"
]
DisableSequence [
cdev "hw:bytcrrt5651"
cset "name='Internal Mic Switch' off"
cset "name='RECMIXL BST2 Switch' off"
cset "name='RECMIXR BST2 Switch' off"
]
Value {
CaptureChannels "2"
}
}

View file

@ -0,0 +1,28 @@
SectionDevice."HeadsetMic-IN3" {
Comment "Headset Microphone"
ConflictingDevice [
"InternalMic-IN1"
"InternalMic-IN2"
"InternalMic-IN12"
]
EnableSequence [
cdev "hw:bytcrrt5651"
cset "name='Headset Mic Switch' on"
cset "name='RECMIXL BST3 Switch' on"
cset "name='RECMIXR BST3 Switch' on"
]
DisableSequence [
cdev "hw:bytcrrt5651"
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"
}
}

View file

@ -0,0 +1,6 @@
alsaconfigdir = @ALSA_CONFIG_DIR@
ucmdir = $(alsaconfigdir)/ucm/codecs/rt5651
ucm_DATA = EnableSeq.conf HeadPhones.conf HeadPhones-swapped.conf \
IN1-InternalMic.conf IN2-InternalMic.conf IN12-InternalMic.conf \
IN3-HeadsetMic.conf Speaker.conf MonoSpeaker.conf
EXTRA_DIST = $(ucm_DATA)

View file

@ -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"
}
}

View file

@ -0,0 +1,31 @@
SectionDevice."Speaker" {
Comment "Speakers"
ConflictingDevice [
"MonoSpeaker"
"Headphones"
]
EnableSequence [
cdev "hw:bytcrrt5651"
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"
# 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"
}
}