ASoC: SOF: ipc4-loader: Save a pointer to fm_config in sof_ipc4_fw_module
authorPeter Ujfalusi <peter.ujfalusi@linux.intel.com>
Mon, 22 May 2023 10:13:10 +0000 (13:13 +0300)
committerMark Brown <broonie@kernel.org>
Mon, 22 May 2023 10:18:36 +0000 (11:18 +0100)
Save a pointer to the firmware module configuration area in
sof_ipc4_fw_module struct for later use.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Link: https://lore.kernel.org/r/20230522101313.12519-3-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/ipc4-loader.c
sound/soc/sof/ipc4-priv.h

index bb215d3..3860d34 100644 (file)
@@ -112,6 +112,7 @@ static ssize_t sof_ipc4_fw_parse_ext_man(struct snd_sof_dev *sdev,
                                return -EINVAL;
                        }
 
+                       fw_module->fw_mod_cfg = &fm_config[fm_entry->cfg_offset];
 
                        dev_dbg(sdev->dev,
                                "module %s: UUID %pUL cfg_count: %u, bss_size: %#x\n",
index 546e527..4b3495d 100644 (file)
@@ -28,11 +28,13 @@ enum sof_ipc4_mtrace_type {
 /**
  * struct sof_ipc4_fw_module - IPC4 module info
  * @sof_man4_module: Module info
+ * @fw_mod_cfg: Pointer to the module config start of the module
  * @m_ida: Module instance identifier
  * @private: Module private data
  */
 struct sof_ipc4_fw_module {
        struct sof_man4_module man4_module_entry;
+       const struct sof_man4_module_config *fw_mod_cfg;
        struct ida m_ida;
        void *private;
 };