On 12/5/23 10:28, Charles Keepax wrote: > On Tue, Dec 05, 2023 at 09:25:27AM -0600, Pierre-Louis Bossart wrote: >> On 12/5/23 08:24, Charles Keepax wrote: >>> + EnableSequence [ >>> + cset "name='AMP1 Speaker Switch' 1" >>> + cset "name='AMP2 Speaker Switch' 1" >>> + cset "name='AMP3 Speaker Switch' 1" >>> + cset "name='AMP4 Speaker Switch' 1" >>> + ] >>> + >>> + DisableSequence [ >>> + cset "name='AMP4 Speaker Switch' 0" >>> + cset "name='AMP3 Speaker Switch' 0" >>> + cset "name='AMP2 Speaker Switch' 0" >>> + cset "name='AMP1 Speaker Switch' 0" >>> + ] >> >> If we only need an on/off switch, I wonder if this can be made >> conditional, i.e. enable/disable a control if it exists. That would >> scale to various numbers of amplifiers without a need to add a 2-amp, 6 >> or 8-amp configuration. > > I think that is possible, would you lean towards modifying > HiFi.conf to only include a single file for cs35l56, or would you > lean more towards having each cs35l56-x.conf file include a > single base file? I wasn't referring to partitioning of files, rather the conditional UCM syntax, Condition { Type ControlExists Control "name='AMP4 Speaker Switch'" } e.g. https://github.com/alsa-project/alsa-ucm-conf/blob/master/ucm2/Intel/sof-hda-dsp/HiFi.conf#L37 I am not sure however if this can be part of an Enable/Disable sequence, that was really a question for Jaroslav.