On 3/30/21 2:26 PM, Pierre-Louis Bossart wrote:
Using new kcontrols "Capture Switch" and "Capture Volume" instead, remove kcontrols which no longer be used.
Is this going to disrupt any UCM profiles?
Yes (the rt715 prefix is from the SOF driver):
# RT715 specific volume control settings
BootSequence [ cset "name='rt715 DMIC3 Boost' 2" cset "name='rt715 DMIC4 Boost' 2" cset "name='rt715 ADC 24 Mux' 3" cset "name='rt715 ADC 25 Mux' 4" cset "name='rt715 ADC 27 Capture Switch' 1" cset "name='rt715 ADC 07 Capture Switch' 1" cset "name='rt715 ADC 07 Capture Volume' 58" ]
To be clearer, we wanted to change the UCM files to only try to configure the 'old' controls when they are present. The 'new' controls are aligned between RT715 and RT715-sdca.
There will be a minor inconvenience if an existing platform updates the kernel without updating UCM files, but it's the only solution we found in earlier discussions.
Distributions are typically faster with alsa-ucmconf updates than kernel changes so that inconvenience is likely very limited (we support 4-5 Dell CML/TGL platforms w/ SoundWire)
Was there any sustained objection to this change? Mark and Jaroslav?
I would really like to fix the UCM files so that the mute and volume are handled at the codec driver level, and not at the SOF level as it's currently the case.
The existing solution really makes no sense, it was 'inspired' (in the copy-paste sense) by the PCH-DMIC handling for HDaudio platforms. In that case, it made sense to use SOF-level mute/volume because such controls don't exist in microphones.
With RT715 we need to use the controls in the codec driver, not the firmware.