From ac9367a30cdf4e4f9d267ec48b6723e1f9b72b91 Mon Sep 17 00:00:00 2001 From: Seppo Ingalsuo Date: Fri, 29 Nov 2024 17:50:13 +0200 Subject: [PATCH] UCM2: Intel: sof-hda-dsp: Enable Dmic0 DRC and TDFB pre-processing This patch adds enable of the microphone capture pre-processing features as BootSequence inital values if the controls for them are available. If the user later switches these off, they will remain off. The DRC is dynamic range control that boosts the capture level, and the TDFB (time-domain fixed beamformer) improves capture signa-to-noise ratio for set beam angle direction. The used 0 degrees angle is defined as angle towards notebook computer user. Signed-off-by: Seppo Ingalsuo --- ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf | 37 +++++++++++++++++++------ 1 file changed, 29 insertions(+), 8 deletions(-) diff --git a/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf b/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf index 84596bcd..ea596f74 100644 --- a/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf +++ b/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf @@ -103,15 +103,36 @@ If.dmic { Type String Empty "${var:DeviceDmic}" } - False.If.Dmic0 { - Condition { - Type ControlExists - Control "name='Dmic0 Capture Volume'" + False { + If.Dmic0 { + Condition { + Type ControlExists + Control "name='Dmic0 Capture Volume'" + } + True.BootSequence [ + cset "name='Dmic0 Capture Volume' 70%" + cset "name='Dmic0 Capture Switch' on" + ] + } + If.captureDRC { + Condition { + Type ControlExists + Control "name='Dmic0 Capture DRC switch'" + } + True.BootSequence [ + cset "name='Dmic0 Capture DRC switch' on" + ] + } + If.captureTDFB { + Condition { + Type ControlExists + Control "name='Dmic0 Capture TDFB beam switch'" + } + True.BootSequence [ + cset "name='Dmic0 Capture TDFB beam switch' on" + cset "name='Dmic0 Capture TDFB angle set enum' 0" + ] } - True.BootSequence [ - cset "name='Dmic0 Capture Volume' 70%" - cset "name='Dmic0 Capture Switch' on" - ] } }