Compare commits

...
Sign in to create a new pull request.

1 commit

Author SHA1 Message Date
b57f2a06ac ucm2: Qualcomm: add Fairphone (Gen. 6) (milos) profile
Some checks are pending
Validate UCM configuration / ucm_validate (push) Waiting to run
Add a UCM profile for the Fairphone (Gen. 6) (SM7635 "milos") as used
on postmarketOS mainline: Speaker (2x Awinic AW88261 on Senary MI2S,
MultiMedia1 playback) and the handset microphone (WCD9378 AMIC1 via the
TX macro, MultiMedia2 capture). Tested on the phone with PipeWire in a
Plasma Mobile session.

The layout follows conf.d/qcm6490: real files under
Qualcomm/milos/Fairphone-Gen6/, a card-name symlink in conf.d/milos/.
Content is identical to the files tested on the device except the
verb File path, which follows the new location.

Assisted-by: Claude:claude-fable-5
Signed-off-by: Jorijn van der Graaf <jorijnvdgraaf@catcrafts.net>
2026-07-16 17:24:43 +02:00
3 changed files with 71 additions and 0 deletions

View file

@ -0,0 +1,11 @@
Syntax 4
SectionUseCase."HiFi" {
File "/Qualcomm/milos/Fairphone-Gen6/HiFi.conf"
Comment "HiFi quality Music"
}
BootSequence [
cset "name='Amplifier L PCM Playback Volume' 352"
cset "name='Amplifier R PCM Playback Volume' 352"
]

View file

@ -0,0 +1,59 @@
SectionVerb {
Value {
TQ "HiFi"
}
EnableSequence [
cset "name='SEN_MI2S_RX Audio Mixer MultiMedia1' 1"
cset "name='MultiMedia2 Mixer TX_CODEC_DMA_TX_3' 1"
]
}
SectionDevice."Speaker" {
Comment "Internal stereo speakers (2x AW88261)"
EnableSequence [
cset "name='Amplifier L PCM Playback Volume' 352"
cset "name='Amplifier R PCM Playback Volume' 352"
]
DisableSequence [
cset "name='Amplifier L PCM Playback Volume' 0"
cset "name='Amplifier R PCM Playback Volume' 0"
]
Value {
PlaybackPriority 100
PlaybackPCM "hw:${CardId},0"
}
}
SectionDevice."Mic" {
Comment "Handset microphone (AMIC1, bottom edge)"
# WCD9378 ADC1 -> SoundWire -> TX macro DEC0 -> TX_CODEC_DMA_TX_3.
# 'TX SMIC MUX0' takes the mux item name SWR_MIC0, not the
# SWR_INPUT0 widget it routes from.
EnableSequence [
cset "name='ADC1 MUX' CH1_AMIC1"
cset "name='ADC1 Switch' 1"
cset "name='ADC1 Volume' 12"
cset "name='TX0 MODE' ADC_NORMAL"
cset "name='TX0 SEQUENCER Switch' 1"
cset "name='TX SMIC MUX0' SWR_MIC0"
cset "name='TX DEC0 MUX' SWR_MIC"
cset "name='TX_DEC0 Volume' 84"
cset "name='TX_AIF1_CAP Mixer DEC0' 1"
]
DisableSequence [
cset "name='TX_AIF1_CAP Mixer DEC0' 0"
cset "name='TX0 SEQUENCER Switch' 0"
cset "name='ADC1 Switch' 0"
cset "name='TX SMIC MUX0' ZERO"
]
Value {
CapturePriority 100
CapturePCM "hw:${CardId},1"
}
}

View file

@ -0,0 +1 @@
../../Qualcomm/milos/Fairphone-Gen6/Fairphone-Gen6.conf