blob: 59ccd2c7ed1af1c73bb4e04c31c896c1fdfab176 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# TAS2783 Use case Configuration for sof-soundwire card
SectionDevice."Speaker" {
Comment "Speaker"
# 'Speaker Switch' is the machine-driver DAPM mute gating the SOF speaker path.
# Upstream UCM only toggles it inside the headset-codec Speaker section (rt721
# etc.), which is gated by MultiSpeakerShadow ~ rt721. On PX13 the shadow is
# tas2783, so that section never activates and 'Speaker Switch' stays off.
# Other speaker amps (rt1318, cs35l56-bridge, rt1316) handle this themselves —
# do the same here.
#
# PX13 (HN7306EA) physical wiring: tas2783-1 is left speaker, tas2783-2 is right.
#
# 'Amp Playback Switch' is the TAS2783 power-amp output stage. Nothing else
# powers it: PipeWire drives only 'Speaker Playback Switch' (the digital mute,
# the PlaybackMixerElem), so the amp stays at its driver-default off and the
# speakers are silent unless this sequence enables it.
EnableSequence [
cset "name='Speaker Switch' on"
cset "name='tas2783-1 Amp Playback Switch' 1"
cset "name='tas2783-2 Amp Playback Switch' 1"
cset "name='tas2783-1 Channel Playback' Left"
cset "name='tas2783-2 Channel Playback' Right"
]
DisableSequence [
cset "name='tas2783-1 Amp Playback Switch' 0"
cset "name='tas2783-2 Amp Playback Switch' 0"
cset "name='Speaker Switch' off"
]
Value {
PlaybackPriority 100
PlaybackPCM "hw:${CardId},2"
PlaybackMixer "default:${CardId}"
PlaybackMixerElem "${var:SpeakerMixerElem}"
}
}
|