From: Mark Brown Date: Mon, 2 Jun 2025 15:51:02 +0000 (+0100) Subject: ASoC: Intel: avs: Set of functional fixes X-Git-Tag: v6.16-rc1~13^2^2~2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b3f3ca04ec3f0587b92fcffa4d581e73b335701a;p=thirdparty%2Fkernel%2Flinux.git ASoC: Intel: avs: Set of functional fixes Merge series from Cezary Rojewski : Medium range of fixes all avs-driver related. The most important fixes lead the way: 1. For ASoC-hda codec driver, existing RPM manipulation in hda_codec_probe_complete()'s error path is superfluous and leads to RPM usage count underflow if the probe exists early e.g.: build-controls operation fails. 2. Resolve deadlock when DSP-recovery is a consequence of SET_D0IX IPC. The procedure handling IPC timeouts and EXCEPTION_CAUGHT notification shall cancel any D0IX work before proceeding with DSP recovery. If SET_D0IX called from delayed_work is the failing IPC the procedure will deadlock. 3. LINK format (PPLCxFMT) calculation is incorrect. HDAudio transfer types utilize SDxFMT for front-end (HOST) and PPLCxFMT for back-end (LINK) side when setting up the stream. BE's substream->runtime duplicates FE runtime so switch to using BE's hw_params to address incorrect format values on the LINK side when FE and BE formats differ. Below three patches address problems found by Coverity static analyzer: ASoC: Intel: avs: Fix possible null-ptr-deref when initing hw ASoC: Intel: avs: Verify kcalloc() status when setting constraints ASoC: Intel: avs: Verify content returned by parse_int_array() While unlikely in runtime, it's good to keep code resilient. The last few patches are readability/cohesiveness improvements. --- b3f3ca04ec3f0587b92fcffa4d581e73b335701a