summaryrefslogtreecommitdiffstats
path: root/sound/soc/sof/sof-pci-dev.c
diff options
context:
space:
mode:
authorPeter Ujfalusi <peter.ujfalusi@linux.intel.com>2023-11-29 14:53:20 +0200
committerMark Brown <broonie@kernel.org>2023-11-29 13:25:09 +0000
commit59ddeae037b81303063bcf62b70fb33841b3f89e (patch)
treeaba30e06b21e801a9a13b1dbc8dd4d4ee687cdaa /sound/soc/sof/sof-pci-dev.c
parent396016d56da4ad30fe9ff736e44d9e1457484805 (diff)
downloadlinux-59ddeae037b81303063bcf62b70fb33841b3f89e.tar.gz
linux-59ddeae037b81303063bcf62b70fb33841b3f89e.tar.bz2
linux-59ddeae037b81303063bcf62b70fb33841b3f89e.zip
ASoC: SOF: sof-pci-dev: Save the default IPC type and path overrides
Store the default IPC type and the overrides to ipc_file_profile_base Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com> Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com> Link: https://lore.kernel.org/r/20231129125327.23708-7-peter.ujfalusi@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/sof/sof-pci-dev.c')
-rw-r--r--sound/soc/sof/sof-pci-dev.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/sound/soc/sof/sof-pci-dev.c b/sound/soc/sof/sof-pci-dev.c
index 64b326e3ef85..becc85b27d51 100644
--- a/sound/soc/sof/sof-pci-dev.c
+++ b/sound/soc/sof/sof-pci-dev.c
@@ -190,6 +190,7 @@ static void sof_pci_probe_complete(struct device *dev)
int sof_pci_probe(struct pci_dev *pci, const struct pci_device_id *pci_id)
{
+ struct sof_loadable_file_profile *path_override;
struct device *dev = &pci->dev;
const struct sof_dev_desc *desc =
(const struct sof_dev_desc *)pci_id->driver_data;
@@ -334,6 +335,20 @@ int sof_pci_probe(struct pci_dev *pci, const struct pci_device_id *pci_id)
sof_pdata->tplg_filename = sof_dmi_override_tplg_name;
}
+ path_override = &sof_pdata->ipc_file_profile_base;
+ path_override->ipc_type = sof_pdata->ipc_type;
+ path_override->fw_path = fw_path;
+ path_override->fw_name = fw_filename;
+ path_override->fw_lib_path = lib_path;
+ path_override->tplg_path = tplg_path;
+ path_override->tplg_name = sof_pdata->tplg_filename;
+
+ if (dmi_check_system(community_key_platforms) &&
+ sof_dmi_use_community_key) {
+ path_override->fw_path_postfix = "community";
+ path_override->fw_lib_path_postfix = "community";
+ }
+
/* set callback to be called on successful device probe to enable runtime_pm */
sof_pdata->sof_probe_complete = sof_pci_probe_complete;