ASoC: Intel: avs: Test result of avs_get_module_entry()
authorCezary Rojewski <cezary.rojewski@intel.com>
Fri, 5 Apr 2024 09:09:24 +0000 (11:09 +0200)
committerMark Brown <broonie@kernel.org>
Fri, 5 Apr 2024 12:13:08 +0000 (13:13 +0100)
While PROBE_MOD_UUID is always part of the base AudioDSP firmware
manifest, from maintenance point of view it is better to check the
result.

Fixes: dab8d000e25c ("ASoC: Intel: avs: Add data probing requests")
Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com>
Link: https://msgid.link/r/20240405090929.1184068-9-cezary.rojewski@intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/avs/probes.c

index 817e543036f29b29d51c303a8f9767957f4e33ca..7e781a3156909767308c3556c7f84d99d6a1e664 100644 (file)
@@ -19,8 +19,11 @@ static int avs_dsp_init_probe(struct avs_dev *adev, union avs_connector_node_id
        struct avs_probe_cfg cfg = {{0}};
        struct avs_module_entry mentry;
        u8 dummy;
+       int ret;
 
-       avs_get_module_entry(adev, &AVS_PROBE_MOD_UUID, &mentry);
+       ret = avs_get_module_entry(adev, &AVS_PROBE_MOD_UUID, &mentry);
+       if (ret)
+               return ret;
 
        /*
         * Probe module uses no cycles, audio data format and input and output
@@ -39,11 +42,12 @@ static int avs_dsp_init_probe(struct avs_dev *adev, union avs_connector_node_id
 static void avs_dsp_delete_probe(struct avs_dev *adev)
 {
        struct avs_module_entry mentry;
+       int ret;
 
-       avs_get_module_entry(adev, &AVS_PROBE_MOD_UUID, &mentry);
-
-       /* There is only ever one probe module instance. */
-       avs_dsp_delete_module(adev, mentry.module_id, 0, INVALID_PIPELINE_ID, 0);
+       ret = avs_get_module_entry(adev, &AVS_PROBE_MOD_UUID, &mentry);
+       if (!ret)
+               /* There is only ever one probe module instance. */
+               avs_dsp_delete_module(adev, mentry.module_id, 0, INVALID_PIPELINE_ID, 0);
 }
 
 static inline struct hdac_ext_stream *avs_compr_get_host_stream(struct snd_compr_stream *cstream)