# Use case Configuration for TI Tuna HiFi audio playback and capture
# By Liam Girdwood <lrg@ti.com>
# Updated by Sebastien Jan <s-jan@ti.com>
# Adapted to Ubuntu Touch by David Henningsson <david.henningsson@canonical.com>
######### Main Verb Config #################
SectionVerb {
EnableSequence [
# Set SDP device for following cset commands
cdev "hw:Tuna"
# Enable ABE playback path through DL1
cset "name='DL1 Mixer Multimedia' 1"
cset "name='Sidetone Mixer Playback' 1"
cset "name='DL1 PDM Switch' 1"
# set ABE playback gains to 0dB
cset "name='DL1 Media Playback Volume' 120"
cset "name='DL2 Media Playback Volume' 120"
cset "name='SDT DL Volume' 120"
# Enable ABE PDM-UL Capture path
cset "name='MUX_UL10' 11"
cset "name='MUX_UL11' 12"
# set ABE capture gains to 0dB
cset "name='AMIC UL Volume' 120"
# Disable Earpiece output, leave enabling to device enable
# sequence
cset "name='Earphone Enable Switch' 0"
]
DisableSequence [
# Set SDP device for following cset commands
cdev "hw:Tuna"
# Disable ABE playback path through DL1
cset "name='DL1 Mixer Multimedia' 0"
cset "name='Sidetone Mixer Playback' 0"
cset "name='DL1 PDM Switch' 0"
# mute ABE playback gains
cset "name='DL1 Media Playback Volume' 0"
cset "name='DL2 Media Playback Volume' 0"
cset "name='SDT DL Volume' 0"
# Disable ABE PDM-UL Capture path
cset "name='MUX_UL10' 0"
cset "name='MUX_UL11' 0"
# mute ABE capture gains
cset "name='AMIC UL Volume' 0"
]
# ALSA PCM
Value {
TQ "HiFi"
# ALSA PCM device for HiFi
PlaybackPCM "hw:Tuna,0"
CapturePCM "hw:Tuna,1"
}
}
###### Headset Devices Options ############
SectionDevice."Headset" {
Comment "Headset Microphone"
# Headset is mutually exclusive to some devices
ConflictingDevice [
"Mainmic"
"Submic"
]
EnableSequence [
cdev "hw:Tuna"
# TWL6040 Capture Path
cset "name='Analog Left Capture Route' 0"
cset "name='Analog Right Capture Route' 0"
cset "name='Capture Preamplifier Volume' 2"
cset "name='Capture Volume' 4"
]
DisableSequence [
cdev "hw:Tuna"
# TWL6040 Capture path
cset "name='Analog Left Capture Route' 3"
cset "name='Analog Right Capture Route' 3"
cset "name='Capture Preamplifier Volume' 0"
]
Value {
CaptureChannels "2"
}
}
###### Headphones Devices Options ############
SectionDevice."Headphones" {
Comment "Tuna 3.5mm Headphones playback"
# Headphones is mutually exclusive to some devices
ConflictingDevice [
"Speaker"
"Earpiece"
]
EnableSequence [
cdev "hw:Tuna"
# TWL6040 playback path
cset "name='HS Left Playback' 1"
cset "name='HS Right Playback' 1"
cset "name='Headset Playback Volume' 14"
]
DisableSequence [
cdev "hw:Tuna"
cset "name='Headset Playback Volume' 0"
# TWL6040 playback path
cset "name='HS Right Playback' 0"
cset "name='HS Left Playback' 0"
]
Value {
PlaybackChannels "2"
}
}
########### Earpiece Device Options ################
SectionDevice."Earpiece" {
Comment "Earpiece playback"
EnableSequence [
cdev "hw:Tuna"
# TWL6040 playback path
cset "name='Earphone Enable Switch' 1"
cset "name='Earphone Enable Volume' 13"
]
DisableSequence [
cdev "hw:Tuna"
cset "name='Earphone Enable Volume' 0"
# TWL6040 playback path
cset "name='Earphone Enable Switch' 0"
]
Value {
PlaybackChannels "2"
}
}
########### Speaker Device Options ################
SectionDevice."Speaker" {
Comment "Main speaker playback"
EnableSequence [
cdev "hw:Tuna"
# ABE playback path through DL2
cset "name='DL2 Mixer Multimedia' 1"
# TWL6040 playback path
cset "name='HF Left Playback' 1"
cset "name='HF Right Playback' 1"
cset "name='Handsfree Playback Volume' 28"
]
DisableSequence [
cdev "hw:Tuna"
cset "name='Handsfree Playback Volume' 0"
# ABE playback path through DL2
cset "name='DL2 Mixer Multimedia' 0"
# TWL6040 playback path
cset "name='HF Left Playback' 0"
cset "name='HF Right Playback' 0"
]
Value {
PlaybackChannels "2"
}
}
############ Main Mic Device #########################
SectionDevice."Handset" {
Comment "Main Microphone Left Channel Capture"
ConflictingDevice [
"Headset"
]
EnableSequence [
cdev "hw:Tuna"
# TWL6040 Capture Path
cset "name='Analog Left Capture Route' 0"
cset "name='Capture Volume' 4"
]
DisableSequence [
cdev "hw:Tuna"
# TWL6040 Capture path
cset "name='Analog Left Capture Route' 3"
]
Value {
# Default ALSA volume gain and mute kcontrols
CaptureChannels "2"
}
}
############ Sub Mic Device #########################
SectionDevice."Submic" {
Comment "Sub Microphone Right Channel Capture"
ConflictingDevice [
"Headset"
]
EnableSequence [
cdev "hw:Tuna"
# TWL6040 Capture Path
cset "name='Analog Right Capture Route' 1"
cset "name='Capture Volume' 4"
]
DisableSequence [
cdev "hw:Tuna"
# TWL6040 Capture path
cset "name='Analog Right Capture Route' 3"
]
Value {
CaptureChannels "2"
}
}
############## Play Tone Modifier ####################
#
# We have 2 PlayTone modifiers. Each one supports different devices as the
# path configuration is different depending on the device being used when
# the modifier is enabled.
#
SectionModifier."PlayTone" {
Comment "Play a ring tone or system sound"
# For the following devices we need to set the DL2 path
SupportedDevice [
"Headphones"
"Earpiece"
]
EnableSequence [
# Set SDP device for following cset commands
cdev "hw:Tuna"
# ABE playback path through DL2
cset "name='DL2 Mixer Tones' 1"
cset "name='DL2 Tones Playback Volume' 120"
cset "name='DL1 Mixer Tones' 1"
cset "name='DL1 Tones Playback Volume' 120"
# # TWL6040 playback path
# cset "name='HF Left Playback' 1"
# cset "name='HF Right Playback' 1"
]
DisableSequence [
# Set SDP device for following cset commands
cdev "hw:Tuna"
# ABE playback path through DL2
cset "name='DL2 Mixer Tones' 0"
cset "name='DL2 Tones Playback Volume' 0"
cset "name='DL1 Mixer Tones' 0"
cset "name='DL1 Tones Playback Volume' 0"
# # TWL6040 playback path
# cset "name='HF Left Playback' 0"
# cset "name='HF Right Playback' 0"
]
# QoS, Mixers and ALSA PCMs
Value {
TQ "Tones"
PlaybackPCM "hw:Tuna,3"
PlaybackVolume "name='DL2 Tones Playback Volume' 120"
}
}
SectionModifier."PlayTone" {
Comment "Play a ring tone or system sound"
# For the following devices we dont need to set the DL2 path
SupportedDevice [
"Speaker"
]
EnableSequence [
# Set SDP device for following cset commands
cdev "hw:Tuna"
# ABE playback path through DL2
cset "name='DL2 Mixer Tones' 1"
cset "name='DL2 Tones Playback Volume' 120"
]
DisableSequence [
# Set SDP device for following cset commands
cdev "hw:Tuna"
cset "name='DL2 Mixer Tones' 0"
]
# QoS, Mixers and ALSA PCMs
Value {
TQ "Tones"
PlaybackPCM "hw:Tuna,3"
PlaybackVolume "name='DL2 Tones Playback Volume' 120"
}
}