-
Notifications
You must be signed in to change notification settings - Fork 214
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
tegra: Add UCM for MAX98089 based LG Optimus 4X HD and Vu
Maxim MAX98089 based LG Optimus 4X HD and Vu are powered by NVIDIA Tegra30 SoC. They feature 2-channel speaker, built-in stereo microphone and 4-pin 3.5mm jack for headphones and headset. Fixes: #291 Tested-by: Andreas Westman Dorcsak <[email protected]> # LG P880 T30 Tested-by: Svyatoslav Ryhel <[email protected]> # LG P895 T30 Signed-off-by: Svyatoslav Ryhel <[email protected]> Signed-off-by: Jaroslav Kysela <[email protected]>
- Loading branch information
Showing
5 changed files
with
322 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,148 @@ | ||
# Use case Configuration for MAX98089 on LG Optimus 4X HD/Vu P880/P895 | ||
|
||
SectionDevice."Speaker" { | ||
Comment "Speaker" | ||
|
||
ConflictingDevice [ | ||
"Headphones" | ||
] | ||
|
||
EnableSequence [ | ||
cset "name='Speaker Switch' on" | ||
cset "name='Int Spk Switch' on" | ||
|
||
cset "name='Left SPK Mixer Left DAC1 Switch' on" | ||
cset "name='Left SPK Mixer Left DAC2 Switch' on" | ||
cset "name='Left SPK Mixer Right DAC1 Switch' on" | ||
cset "name='Left SPK Mixer Right DAC2 Switch' on" | ||
] | ||
|
||
DisableSequence [ | ||
cset "name='Speaker Switch' off" | ||
cset "name='Int Spk Switch' off" | ||
|
||
cset "name='Left SPK Mixer Left DAC1 Switch' off" | ||
cset "name='Left SPK Mixer Left DAC2 Switch' off" | ||
cset "name='Left SPK Mixer Right DAC1 Switch' off" | ||
cset "name='Left SPK Mixer Right DAC2 Switch' off" | ||
] | ||
|
||
Value { | ||
PlaybackPCM "hw:${CardId}" | ||
PlaybackChannels 2 | ||
PlaybackPriority 300 | ||
|
||
PlaybackMixerElem "Speaker" | ||
} | ||
} | ||
|
||
SectionDevice."Headphones" { | ||
Comment "Headphones" | ||
|
||
ConflictingDevice [ | ||
"Speaker" | ||
] | ||
|
||
EnableSequence [ | ||
cset "name='Headphone Switch' on" | ||
|
||
cset "name='Left HP Mixer Left DAC1 Switch' on" | ||
cset "name='Left HP Mixer Left DAC2 Switch' on" | ||
cset "name='Right HP Mixer Right DAC1 Switch' on" | ||
cset "name='Right HP Mixer Right DAC2 Switch' on" | ||
] | ||
|
||
DisableSequence [ | ||
cset "name='Headphone Switch' off" | ||
|
||
cset "name='Left HP Mixer Left DAC1 Switch' off" | ||
cset "name='Left HP Mixer Left DAC2 Switch' off" | ||
cset "name='Right HP Mixer Right DAC1 Switch' off" | ||
cset "name='Right HP Mixer Right DAC2 Switch' off" | ||
] | ||
|
||
Value { | ||
PlaybackPCM "hw:${CardId}" | ||
PlaybackChannels 2 | ||
PlaybackPriority 100 | ||
|
||
PlaybackMixerElem "Headphone" | ||
|
||
JackControl "Headphone Jack" | ||
} | ||
} | ||
|
||
SectionDevice."Mic1" { | ||
Comment "Internal Microphone" | ||
|
||
ConflictingDevice [ | ||
"Mic2" | ||
] | ||
|
||
EnableSequence [ | ||
# Main MIC | ||
cset "name='Internal Mic 1 Switch' on" | ||
cset "name='DAI1 ADC Filter' fc=258/fs=16k" | ||
|
||
cset "name='Left ADC Mixer MIC1 Switch' on" | ||
cset "name='Right ADC Mixer MIC1 Switch' on" | ||
|
||
# Secondary MIC | ||
cset "name='Int Mic Switch' on" | ||
cset "name='Internal Mic 2 Switch' on" | ||
|
||
cset "name='Left ADC Mixer MIC2 Switch' on" | ||
cset "name='Right ADC Mixer MIC2 Switch' on" | ||
] | ||
|
||
DisableSequence [ | ||
# Main MIC | ||
cset "name='Internal Mic 1 Switch' off" | ||
cset "name='DAI1 ADC Filter' off" | ||
|
||
cset "name='Left ADC Mixer MIC1 Switch' off" | ||
cset "name='Right ADC Mixer MIC1 Switch' off" | ||
|
||
# Secondary MIC | ||
cset "name='Int Mic Switch' off" | ||
cset "name='Internal Mic 2 Switch' off" | ||
|
||
cset "name='Left ADC Mixer MIC2 Switch' off" | ||
cset "name='Right ADC Mixer MIC2 Switch' off" | ||
] | ||
|
||
Value { | ||
CapturePCM "hw:${CardId}" | ||
CaptureChannels 2 | ||
CapturePriority 200 | ||
} | ||
} | ||
|
||
SectionDevice."Mic2" { | ||
Comment "External Microphone" | ||
|
||
ConflictingDevice [ | ||
"Mic1" | ||
] | ||
|
||
EnableSequence [ | ||
cset "name='Mic Jack Switch' on" | ||
|
||
cset "name='Left ADC Mixer INA1 Switch' on" | ||
cset "name='Right ADC Mixer INA1 Switch' on" | ||
] | ||
|
||
DisableSequence [ | ||
cset "name='Mic Jack Switch' off" | ||
|
||
cset "name='Left ADC Mixer INA1 Switch' off" | ||
cset "name='Right ADC Mixer INA1 Switch' off" | ||
] | ||
|
||
Value { | ||
CapturePCM "hw:${CardId}" | ||
CapturePriority 100 | ||
|
||
JackControl "Mic Jack" | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,125 @@ | ||
# Use case Configuration for MAX98089 on LG Optimus 4X HD/Vu P880/P895 | ||
|
||
SectionDevice."Speaker" { | ||
Comment "Speaker" | ||
|
||
ConflictingDevice [ | ||
"Earpiece" | ||
] | ||
|
||
EnableSequence [ | ||
cset "name='Speaker Switch' on" | ||
cset "name='Int Spk Switch' on" | ||
|
||
cset "name='Left SPK Mixer Left DAC1 Switch' on" | ||
cset "name='Left SPK Mixer Left DAC2 Switch' on" | ||
cset "name='Left SPK Mixer Right DAC1 Switch' on" | ||
cset "name='Left SPK Mixer Right DAC2 Switch' on" | ||
] | ||
|
||
DisableSequence [ | ||
cset "name='Speaker Switch' off" | ||
cset "name='Int Spk Switch' off" | ||
|
||
cset "name='Left SPK Mixer Left DAC1 Switch' off" | ||
cset "name='Left SPK Mixer Left DAC2 Switch' off" | ||
cset "name='Left SPK Mixer Right DAC1 Switch' off" | ||
cset "name='Left SPK Mixer Right DAC2 Switch' off" | ||
] | ||
|
||
Value { | ||
PlaybackPCM "hw:${CardId}" | ||
PlaybackChannels 2 | ||
PlaybackPriority 100 | ||
|
||
PlaybackMixerElem "Speaker" | ||
} | ||
} | ||
|
||
SectionDevice."Earpiece" { | ||
Comment "Earpiece" | ||
|
||
ConflictingDevice [ | ||
"Speaker" | ||
] | ||
|
||
EnableSequence [ | ||
cset "name='Receiver Switch' on" | ||
cset "name='Earpiece Switch' on" | ||
|
||
cset "name='Left REC Mixer Left DAC1 Switch' on" | ||
cset "name='Left REC Mixer Left DAC2 Switch' on" | ||
cset "name='Left REC Mixer Right DAC1 Switch' on" | ||
cset "name='Left REC Mixer Right DAC2 Switch' on" | ||
|
||
cset "name='Right REC Mixer Left DAC1 Switch' on" | ||
cset "name='Right REC Mixer Left DAC2 Switch' on" | ||
cset "name='Right REC Mixer Right DAC1 Switch' on" | ||
cset "name='Right REC Mixer Right DAC2 Switch' on" | ||
] | ||
|
||
DisableSequence [ | ||
cset "name='Receiver Switch' off" | ||
cset "name='Earpiece Switch' off" | ||
|
||
cset "name='Left REC Mixer Left DAC1 Switch' off" | ||
cset "name='Left REC Mixer Left DAC2 Switch' off" | ||
cset "name='Left REC Mixer Right DAC1 Switch' off" | ||
cset "name='Left REC Mixer Right DAC2 Switch' off" | ||
|
||
cset "name='Right REC Mixer Left DAC1 Switch' off" | ||
cset "name='Right REC Mixer Left DAC2 Switch' off" | ||
cset "name='Right REC Mixer Right DAC1 Switch' off" | ||
cset "name='Right REC Mixer Right DAC2 Switch' off" | ||
] | ||
|
||
Value { | ||
PlaybackPCM "hw:${CardId}" | ||
PlaybackChannels 2 | ||
PlaybackPriority 200 | ||
|
||
PlaybackMixerElem "Receiver" | ||
} | ||
} | ||
|
||
SectionDevice."Mic1" { | ||
Comment "Internal Microphone" | ||
|
||
EnableSequence [ | ||
# Main MIC | ||
cset "name='Internal Mic 1 Switch' on" | ||
cset "name='DAI1 ADC Filter' fc=258/fs=16k" | ||
|
||
cset "name='Left ADC Mixer MIC1 Switch' on" | ||
cset "name='Right ADC Mixer MIC1 Switch' on" | ||
|
||
# Secondary MIC | ||
cset "name='Int Mic Switch' on" | ||
cset "name='Internal Mic 2 Switch' on" | ||
|
||
cset "name='Left ADC Mixer MIC2 Switch' on" | ||
cset "name='Right ADC Mixer MIC2 Switch' on" | ||
] | ||
|
||
DisableSequence [ | ||
# Main MIC | ||
cset "name='Internal Mic 1 Switch' off" | ||
cset "name='DAI1 ADC Filter' off" | ||
|
||
cset "name='Left ADC Mixer MIC1 Switch' off" | ||
cset "name='Right ADC Mixer MIC1 Switch' off" | ||
|
||
# Secondary MIC | ||
cset "name='Int Mic Switch' off" | ||
cset "name='Internal Mic 2 Switch' off" | ||
|
||
cset "name='Left ADC Mixer MIC2 Switch' off" | ||
cset "name='Right ADC Mixer MIC2 Switch' off" | ||
] | ||
|
||
Value { | ||
CapturePCM "hw:${CardId}" | ||
CaptureChannels 2 | ||
CapturePriority 200 | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
# Use case Configuration for MAX98089 on LG Optimus 4X HD/Vu P880/P895 | ||
|
||
Syntax 4 | ||
|
||
BootSequence [ | ||
cset "name='MIC1 Volume' 10" | ||
cset "name='MIC1 Boost Volume' 1" | ||
cset "name='MIC2 Volume' 10" | ||
cset "name='MIC2 Boost Volume' 1" | ||
|
||
cset "name='INA Volume' 5" | ||
cset "name='INB Volume' 5" | ||
|
||
cset "name='ADCL Volume' 15" | ||
cset "name='ADCR Volume' 15" | ||
|
||
cset "name='DAI1 Filter Mode' Music" | ||
|
||
cset "name='EQ1 Switch' off" | ||
cset "name='EQ2 Switch' off" | ||
|
||
cset "name='Speaker Switch' off" | ||
cset "name='Int Spk Switch' off" | ||
cset "name='Headphone Switch' off" | ||
cset "name='Earpiece Switch' off" | ||
cset "name='Receiver Switch' off" | ||
|
||
cset "name='Int Mic Switch' off" | ||
cset "name='Internal Mic 1 Switch' off" | ||
cset "name='Internal Mic 2 Switch' off" | ||
cset "name='Mic Jack Switch' off" | ||
|
||
cset "name='Right SPK Mixer Left DAC1 Switch' on" | ||
cset "name='Right SPK Mixer Left DAC2 Switch' on" | ||
cset "name='Right SPK Mixer Right DAC1 Switch' on" | ||
cset "name='Right SPK Mixer Right DAC2 Switch' on" | ||
] | ||
|
||
SectionUseCase."HiFi" { | ||
File "/Tegra/max98089/lge-x3-HiFi.conf" | ||
Comment "Play HiFi quality Music" | ||
} | ||
|
||
SectionUseCase."Voice Call" { | ||
File "/Tegra/max98089/lge-x3-VoiceCall.conf" | ||
Comment "Make a phone call" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
../../Tegra/max98089/lge-x3.conf |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
../../Tegra/max98089/lge-x3.conf |