linux-stable/sound/soc/sof
Cristian Ciocaltea 094d11768f
ASoC: SOF: amd: Skip IRAM/DRAM size modification for Steam Deck OLED
The recent introduction of the ACP/PSP communication for IRAM/DRAM fence
register modification breaks the audio support on Valve's Steam Deck
OLED device.

It causes IPC timeout errors when trying to load DSP topology during
probing:

1707255557.688176 kernel: snd_sof_amd_vangogh 0000:04:00.5: ipc tx timed out for 0x30100000 (msg/reply size: 48/0)
1707255557.689035 kernel: snd_sof_amd_vangogh 0000:04:00.5: ------------[ IPC dump start ]------------
1707255557.689421 kernel: snd_sof_amd_vangogh 0000:04:00.5: dsp_msg = 0x0 dsp_ack = 0x91d14f6f host_msg = 0x1 host_ack = 0xead0f1a4 irq_stat >
1707255557.689730 kernel: snd_sof_amd_vangogh 0000:04:00.5: ------------[ IPC dump end ]------------
1707255557.690074 kernel: snd_sof_amd_vangogh 0000:04:00.5: ------------[ DSP dump start ]------------
1707255557.690376 kernel: snd_sof_amd_vangogh 0000:04:00.5: IPC timeout
1707255557.690744 kernel: snd_sof_amd_vangogh 0000:04:00.5: fw_state: SOF_FW_BOOT_COMPLETE (7)
1707255557.691037 kernel: snd_sof_amd_vangogh 0000:04:00.5: invalid header size 0xdb43fe7. FW oops is bogus
1707255557.694824 kernel: snd_sof_amd_vangogh 0000:04:00.5: unexpected fault 0x6942d3b3 trace 0x6942d3b3
1707255557.695392 kernel: snd_sof_amd_vangogh 0000:04:00.5: ------------[ DSP dump end ]------------
1707255557.695755 kernel: snd_sof_amd_vangogh 0000:04:00.5: Failed to setup widget PIPELINE.6.ACPHS1.IN
1707255557.696069 kernel: snd_sof_amd_vangogh 0000:04:00.5: error: tplg component load failed -110
1707255557.696374 kernel: snd_sof_amd_vangogh 0000:04:00.5: error: failed to load DSP topology -22
1707255557.697904 kernel: snd_sof_amd_vangogh 0000:04:00.5: ASoC: error at snd_soc_component_probe on 0000:04:00.5: -22
1707255557.698405 kernel: sof_mach nau8821-max: ASoC: failed to instantiate card -22
1707255557.701061 kernel: sof_mach nau8821-max: error -EINVAL: Failed to register card(sof-nau8821-max)
1707255557.701624 kernel: sof_mach: probe of nau8821-max failed with error -22

Introduce a new member skip_iram_dram_size_mod to struct acp_quirk_entry and
use it to skip IRAM/DRAM size modification for Vangogh Galileo device.

Fixes: 55d7bbe433 ("ASoC: SOF: amd: Add acp-psp mailbox interface for iram-dram fence register modification")
Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com>
Link: https://msgid.link/r/20240220201623.438944-3-cristian.ciocaltea@collabora.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2024-03-15 16:12:49 +00:00
..
amd ASoC: SOF: amd: Skip IRAM/DRAM size modification for Steam Deck OLED 2024-03-15 16:12:49 +00:00
imx ASoC: SOF: imx: Add devicetree support to select topologies 2024-02-12 13:42:22 +00:00
intel ASoC: Intel: avs: Fixes and new platforms support 2024-02-21 00:52:26 +00:00
mediatek ASoC: SOF: mediatek: mt8186: Revert Add Google Steelix topology compatible 2023-12-06 16:31:09 +00:00
xtensa ASoC: SOF: Xtensa: dump ar registers to restore call stack 2023-09-19 13:48:44 +01:00
compress.c ASoC: SOF: Use no_reply calls for TX 2023-04-20 12:51:45 +01:00
control.c ASoC: SOF: control: Extend the optionality of IPC ops to IPC as well 2022-12-25 23:32:33 +00:00
core.c ASoC: SOF: Fix runtime pm usage counter balance after fw exception 2024-02-13 14:22:57 +00:00
debug.c ASoC: SOF: Fix runtime pm usage counter balance after fw exception 2024-02-13 14:22:57 +00:00
fw-file-profile.c ASoC: SOF: core: Skip firmware test for custom loaders 2024-01-22 00:06:30 +00:00
iomem-utils.c
ipc.c ASoC: SOF: Use generic names for IPC types 2023-09-19 13:49:08 +01:00
ipc3-control.c ASoC: sof: Improve sof_ipc3_bytes_ext_put function 2023-05-23 19:31:14 +01:00
ipc3-dtrace.c ASoC: SOF: icp3-dtrace: Revert "Fix wrong kfree() usage" 2024-01-12 14:13:52 +00:00
ipc3-loader.c ASoC: SOF: Add some bounds checking to firmware data 2024-02-14 13:22:24 +00:00
ipc3-pcm.c ASoC: SOF: amd: Add Soundwire DAI configuration support for AMD platforms 2024-01-30 16:06:39 +00:00
ipc3-priv.h ASoC: SOF: Refactor rx function for fuzzing 2023-06-09 10:44:39 +01:00
ipc3-topology.c ASoC: Intel: avs: Fixes and new platforms support 2024-02-21 00:52:26 +00:00
ipc3.c ASoC: SOF: IPC3: fix message bounds on ipc ops 2024-02-13 13:28:45 +00:00
ipc4-control.c ASoC: Updates for v6.8 2024-01-08 08:18:02 +01:00
ipc4-fw-reg.h ASoC: SOF: add ipc4_fw_reg header file 2023-02-03 12:03:48 +00:00
ipc4-loader.c ASoC: SOF: ipc4-loader: remove the CPC check warnings 2024-01-15 14:04:52 +00:00
ipc4-mtrace.c ASoC: SOF: ipc4-mtrace: move debug slot related definitions to header.h 2023-09-19 13:48:45 +01:00
ipc4-pcm.c ASoC: Intel: avs: Fixes and new platforms support 2024-02-21 00:52:26 +00:00
ipc4-priv.h ASoC: SOF: ipc4: store number of playback/capture streams 2024-02-13 13:28:55 +00:00
ipc4-telemetry.c ASoC: SOF: ipc4: add definition of telemetry slot for exception handling 2023-09-19 13:48:47 +01:00
ipc4-telemetry.h ASoC: SOF: ipc4: add definition of telemetry slot for exception handling 2023-09-19 13:48:47 +01:00
ipc4-topology.c ASoC: SOF: Extend ChainDMA and DSPless mode to LNL+ 2024-02-14 11:41:32 +00:00
ipc4-topology.h ASoC: SOF: ipc4-topology: Correct data structures for the GAIN module 2023-12-01 14:13:03 +00:00
ipc4.c ASoC: SOF: ipc4: Move window offset configuration earlier 2023-11-29 13:25:26 +00:00
Kconfig ASoC: SOF: core: Implement IPC version fallback if firmware files are missing 2023-11-29 13:25:15 +00:00
loader.c ASoC: SOF: loader: Remove log prefixes for snd_sof_run_firmware 2023-03-07 13:58:16 +00:00
Makefile ASoC: SOF: core: Implement firmware, topology path setup in core 2023-11-29 13:25:09 +00:00
nocodec.c ASoC: sof: convert not to use asoc_xxx() 2023-09-26 17:18:42 +02:00
ops.c
ops.h ASoC: SOF: ops: add new 'is_chain_dma_supported' callback 2024-02-13 13:28:52 +00:00
pcm.c ASoC: sof: convert not to use asoc_xxx() 2023-09-26 17:18:42 +02:00
pm.c ASoC: SOF: pm: Remove duplicated code in sof_suspend 2023-06-16 12:53:53 +01:00
sof-acpi-dev.c ASoC: SOF: sof-acpi-dev: Rely on core to create the file paths 2023-11-29 13:25:10 +00:00
sof-acpi-dev.h ASoC: SOF: Convert to platform remove callback returning void 2023-10-10 19:21:04 +01:00
sof-audio.c ASoC: SOF: topology: dynamically allocate and store DAI widget->private 2024-02-13 13:28:58 +00:00
sof-audio.h ASoC: SOF: topology: Parse DAI type token for dspless mode 2024-02-13 13:29:00 +00:00
sof-client-ipc-flood-test.c ASoC: SOF: Use no_reply calls for TX 2023-04-20 12:51:45 +01:00
sof-client-ipc-kernel-injector.c ASoC: SOF: Add IPC3 Kernel Injector 2023-06-09 10:44:40 +01:00
sof-client-ipc-msg-injector.c ASoC: SOF: Use generic names for IPC types 2023-09-19 13:49:08 +01:00
sof-client-probes-ipc3.c ASoC: SOF: Use no_reply calls for TX 2023-04-20 12:51:45 +01:00
sof-client-probes-ipc4.c ASoC: SOF: sof-client-probes-ipc4: add checks to prevent static analysis warnings 2023-07-31 23:22:12 +01:00
sof-client-probes.c ASoC: sof: use snd_soc_dummy_dlc 2023-12-19 13:23:45 +00:00
sof-client-probes.h ASoC: SOF: IPC4: probes: Implement IPC4 ops for probes client device 2022-10-31 13:20:22 +00:00
sof-client.c ASoC: SOF: sof-client: trivial: fix comment typo 2023-11-07 11:10:19 +00:00
sof-client.h ASoC: SOF: Add IPC3 Kernel Injector 2023-06-09 10:44:40 +01:00
sof-of-dev.c ASoC: SOF: Move sof_of_machine_select() to core.c from sof-of-dev.c 2023-12-04 17:02:15 +00:00
sof-of-dev.h ASoC: SOF: Move sof_of_machine_select() to core.c from sof-of-dev.c 2023-12-04 17:02:15 +00:00
sof-pci-dev.c ASoC: SOF: sof-pci-dev: Rely on core to create the file paths 2023-11-29 13:25:12 +00:00
sof-pci-dev.h
sof-priv.h ASoC: SOF: Extend ChainDMA and DSPless mode to LNL+ 2024-02-14 11:41:32 +00:00
sof-utils.c
sof-utils.h
stream-ipc.c ASoC: SOF: Add support for compress API for stream data/offset 2023-01-17 13:37:53 +00:00
topology.c ASoC: SOF: topology: Parse DAI type token for dspless mode 2024-02-13 13:29:00 +00:00
trace.c ASoC: SOF: trace: No need to check for op pointer in sof_fw_trace_free() 2022-12-25 23:32:39 +00:00