File: //usr/share/alsa/ucm2/Librem_5/HiFi.conf
SectionVerb {
EnableSequence [
cset "name='Digital Playback Volume' 100,100"
cset "name='MIXINL IN2L Switch' off"
cset "name='MIXINL IN3L Switch' off"
cset "name='MIXINR IN2R Switch' off"
cset "name='MIXINR IN3R Switch' off"
cset "name='INPGAR IN1R Switch' off"
cset "name='INPGAR IN2R Switch' off"
cset "name='INPGAR IN3R Switch' on"
cset "name='INPGAR IN4R Switch' off"
cset "name='INPGAL IN1L Switch' off"
cset "name='INPGAL IN2L Switch' off"
cset "name='INPGAL IN3L Switch' off"
cset "name='INPGAL IN4L Switch' off"
cset "name='Input Mixer Switch' off,on"
cset "name='SPKOUTL PGA' Mixer"
cset "name='SPKOUTR PGA' Mixer"
]
DisableSequence [
cset "name='Digital Playback Volume' 0,0"
]
Value {
}
}
SectionDevice."Handset" {
Comment "Handset"
ConflictingDevice [
"Headphones"
"Speaker"
]
EnableSequence [
cset "name='Speaker Switch' off,on"
cset "name='DAC L/R Swap Switch' on"
cset "name='DAC Monomix Switch' on"
cset "name='SPKOUTR PGA' DAC"
cset "name='Speaker Volume' 121,121"
cset "name='Speaker Boost Volume' 2"
]
DisableSequence [
cset "name='Speaker Switch' off,off"
cset "name='DAC L/R Swap Switch' off"
cset "name='DAC Monomix Switch' off"
cset "name='SPKOUTR PGA' Mixer"
]
Value {
PlaybackChannels "2"
PlaybackPriority "100"
PlaybackVolume "name='Speaker Volume'"
PlaybackSwitch "name='Speaker Switch'"
PlaybackPCM "hw:${CardId},0"
}
}
SectionDevice."Speaker" {
Comment "Speaker"
ConflictingDevice [
"Handset"
"Headphones"
]
EnableSequence [
cset "name='Speaker Switch' on,off"
cset "name='DAC Monomix Switch' on"
cset "name='SPKOUTL PGA' DAC"
cset "name='Speaker Volume' 121,121"
cset "name='Speaker Boost Volume' 6"
]
DisableSequence [
cset "name='Speaker Switch' off,off"
cset "name='DAC Monomix Switch' off"
cset "name='SPKOUTL PGA' Mixer"
]
Value {
PlaybackChannels "2"
PlaybackPriority "500"
PlaybackVolume "name='Speaker Volume'"
PlaybackSwitch "name='Speaker Switch'"
PlaybackPCM "hw:${CardId},0"
}
}
SectionDevice."Headphones" {
Comment "Headphones"
ConflictingDevice [
"Handset"
"Speaker"
]
EnableSequence [
cset "name='Headphone Switch' on,on"
cset "name='HPOUTL PGA' 0 unmute"
cset "name='HPOUTR PGA' 0 unmute"
cset "name='Headphone Aux Volume' 0"
cset "name='Headphone Volume' 121,121"
]
DisableSequence [
cset "name='Headphone Switch' off off"
cset "name='HPOUTL PGA' 0 mute"
cset "name='HPOUTR PGA' 0 mute"
]
Value {
PlaybackPriority "1000"
PlaybackChannels "2"
PlaybackVolume "name='Headphone Volume'"
PlaybackSwitch "name='Headphone Switch'"
PlaybackPCM "hw:${CardId},0"
JackControl "Headphones Jack"
}
}
SectionDevice."Mic" {
Comment "Internal Microphone"
ConflictingDevice [
"Headset"
]
EnableSequence [
cset "name='Digital Capture Volume' 116,116"
cset "name='ADC L/R Swap Switch' on"
]
DisableSequence [
cset "name='Digital Capture Volume' 0,0"
cset "name='ADC L/R Swap Switch' off"
]
Value {
CapturePriority "500"
CaptureChannels "2"
CaptureVolume "name='Digital Capture Volume'"
CapturePCM "hw:${CardId},0"
}
}
SectionDevice."Headset" {
Comment "Headset Microphone"
ConflictingDevice [
"Mic"
]
EnableSequence [
cset "name='MIXINR IN3R Switch' on"
cset "name='MIXINR IN3R Volume' 7"
]
DisableSequence [
cset "name='MIXINR IN3R Switch' off"
cset "name='MIXINR IN3R Volume' 0"
]
Value {
CapturePriority "100"
CaptureChannels "2"
CaptureVolume "name='MIXINR IN3R Volume'"
CaptureSwitch "name='MIXINR IN3R Switch'"
CapturePCM "hw:${CardId},0"
JackControl "Headphones Jack"
}
}