linux-stable/sound/soc/sof
Peter Ujfalusi 12f415a074 ASoC: SOF: core: Free the firmware trace before calling snd_sof_shutdown()
[ Upstream commit d389dcb3a4 ]

The shutdown is called on reboot/shutdown of the machine.
At this point the firmware tracing cannot be used anymore but in case of
IPC3 it is using and keeping a DMA channel active (dtrace).

For Tiger Lake platforms we have a quirk in place to fix rare reboot issues
when a DMA was active before rebooting the system.
If the tracing is enabled this quirk will be always used and a print
appears on the kernel log which might be misleading or not even correct.

Release the fw tracing before executing the shutdown to make sure that this
known DMA user is cleared away.

Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Rander Wang <rander.wang@intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20230616100039.378150-4-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-08-23 17:32:29 +02:00
..
amd ASoC: SOF: amd: Add pci revision id check 2023-08-23 17:32:25 +02:00
imx ASoC: SOF: imx8ulp: add missing of_node_put() in imx8ulp_probe() 2022-08-24 12:21:28 +01:00
intel ASoC: SOF: Intel: fix SoundWire/HDaudio mutual exclusion 2023-08-23 17:32:26 +02:00
mediatek ASoC: SOF: Prepare ipc_msg_data to be used with compress API 2023-01-17 13:37:51 +00:00
xtensa
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: core: Free the firmware trace before calling snd_sof_shutdown() 2023-08-23 17:32:29 +02:00
debug.c ASoC: SOF: debug: conditionally bump runtime_pm counter on exceptions 2023-05-15 10:20:57 +09:00
iomem-utils.c ASoC: SOF: Split up utils.c into sof-utils and iomem-utils 2022-02-10 15:19:04 +00:00
ipc.c ASoC: SOF: client: Add sof_client_ipc_set_get_data() 2022-10-31 13:20:20 +00:00
ipc3-control.c ASoC: SOF: ipc3-control: Merge functions to handle bytes_ext get variants 2023-03-13 14:06:49 +00:00
ipc3-dtrace.c ASoC: SOF: ipc3-dtrace: uninitialized data in dfsentry_trace_filter_write() 2023-07-27 08:56:56 +02:00
ipc3-loader.c ASoC: SOF: Introduce container struct for SOF firmware 2022-10-21 13:04:54 +01:00
ipc3-pcm.c ASoC: SOF: Use no_reply calls for TX 2023-04-20 12:51:45 +01:00
ipc3-priv.h ASoC: SOF: Modify the host trace_init parameter list to include dmab 2022-05-19 16:44:17 +01:00
ipc3-topology.c ASoC: SOF: ipc3-topology: Make sure that only one cmd is sent in dai_config 2023-05-15 10:21:12 +09:00
ipc3.c ASoC: SOF: Use no_reply calls for TX 2023-04-20 12:51:45 +01:00
ipc4-control.c ASoC: SOF: ipc4-control: Return on error in sof_ipc4_widget_kcontrol_setup() 2023-03-21 16:31:10 +00: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: get max pipeline number 2022-11-09 13:44:18 +00:00
ipc4-mtrace.c ASoC: SOF: ipc4-mtrace: process pending logs upon FW crash 2023-03-07 13:58:20 +00:00
ipc4-pcm.c ASoC: SOF: pcm/Intel: Pause-resume improvements for 2023-04-20 14:49:35 +01:00
ipc4-priv.h ASoC: SOF: add time info structure for ipc4 path 2023-02-03 12:03:49 +00:00
ipc4-topology.c ASoC: SOF: Separate the tokens for input and output pin index 2023-05-15 20:10:17 +09:00
ipc4-topology.h ASoC: SOF: ipc4/intel: Add support for chained DMA 2023-03-21 12:13:31 +00:00
ipc4.c ASoC: SOF: ipc4: Ensure DSP is in D0I0 during sof_ipc4_set_get_data() 2023-03-22 13:17:27 +00:00
Kconfig ASoC: SOF: Drop obsolete dependency on COMPILE_TEST 2022-11-28 13:04:35 +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: IPC4: probes: Implement IPC4 ops for probes client device 2022-10-31 13:20:22 +00:00
nocodec.c ASoC: SOF: nocodec: Drop empty platform remove function 2022-12-25 23:32:55 +00:00
ops.c ASoC: SOF: Switch to IPC generic firmware tracing 2022-05-19 16:44:15 +01:00
ops.h Merge branch 'for-linus' into for-next 2023-02-16 15:06:18 +01:00
pcm.c ASoC: SOF: pcm: fix pm_runtime imbalance in error handling 2023-05-15 10:20:58 +09:00
pm.c ASoC: SOF: pm: save io region state in case of errors in resume 2023-05-15 10:21:14 +09:00
sof-acpi-dev.c ASoC: SOF: add IPC-dependent file names 2022-04-19 12:03:34 +01:00
sof-acpi-dev.h
sof-audio.c ASoC: SOF: pcm: Add an option to skip platform trigger during stop 2023-04-20 12:51:59 +01:00
sof-audio.h ASoC: SOF: pcm: Add an option to skip platform trigger during stop 2023-04-20 12:51:59 +01: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-msg-injector.c ASoC: SOF: ipc-msg-injector: fix copy in sof_msg_inject_ipc4_dfs_write() 2022-07-14 13:26:37 +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: Use no_reply calls for TX 2023-04-20 12:51:45 +01:00
sof-client-probes.c ASoC: SOF: sof-client-probes: fix pm_runtime imbalance in error handling 2023-05-15 10:20:59 +09: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: Add support for DSPless mode 2023-04-04 12:42:34 +01:00
sof-client.h ASoC: SOF: ipc: Add no reply inline calls 2023-04-20 12:51:44 +01:00
sof-of-dev.c ASoC: SOF: add IPC-dependent file names 2022-04-19 12:03:34 +01:00
sof-of-dev.h ASoC: SOF: Introduce function sof_of_machine_select 2022-08-23 18:22:29 +01:00
sof-pci-dev.c ASoC: SOF: Add path definition for external firmware libraries 2022-10-21 13:05:03 +01:00
sof-pci-dev.h
sof-priv.h ASoC: SOF: ipc: Add no reply inline calls 2023-04-20 12:51:44 +01:00
sof-utils.c ASoC: SOF: remove unneeded dev_vdbg 2022-09-19 15:44:06 +01:00
sof-utils.h ASoC: SOF: Split up utils.c into sof-utils and iomem-utils 2022-02-10 15:19:04 +00:00
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: Fix tuples array allocation 2023-05-15 20:10:18 +09: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