]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
ASoC: SOF: amd: Fix for ACP SRAM addr for acp7.0 platform
authorVenkata Prasad Potturu <venkataprasad.potturu@amd.com>
Tue, 8 Oct 2024 09:13:45 +0000 (14:43 +0530)
committerMark Brown <broonie@kernel.org>
Tue, 8 Oct 2024 09:49:13 +0000 (10:49 +0100)
Incorrect SRAM base addr for acp7.0 platform results firmware boot
failure.
Add condition check to support SRAM addr for various platforms.

Fixes: 145d7e5ae8f4 ("ASoC: SOF: amd: add option to use sram for data bin loading")
Signed-off-by: Venkata Prasad Potturu <venkataprasad.potturu@amd.com>
Link: https://patch.msgid.link/20241008091347.594378-2-venkataprasad.potturu@amd.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/amd/acp-loader.c

index 19f10dd77e4ba3bf17f54dfb368c52865a36214c..077af9e2af8d09be9927627b78a86854b31245f3 100644 (file)
@@ -206,7 +206,10 @@ int acp_dsp_pre_fw_run(struct snd_sof_dev *sdev)
                configure_pte_for_fw_loading(FW_SRAM_DATA_BIN, ACP_SRAM_PAGE_COUNT, adata);
                src_addr = ACP_SYSTEM_MEMORY_WINDOW + ACP_DEFAULT_SRAM_LENGTH +
                           (page_count * ACP_PAGE_SIZE);
-               dest_addr = ACP_SRAM_BASE_ADDRESS;
+               if (adata->pci_rev > ACP63_PCI_ID)
+                       dest_addr = ACP7X_SRAM_BASE_ADDRESS;
+               else
+                       dest_addr = ACP_SRAM_BASE_ADDRESS;
 
                ret = configure_and_run_dma(adata, src_addr, dest_addr,
                                            adata->fw_sram_data_bin_size);