linux/drivers/remoteproc
Bjorn Andersson 1417dba103 remoteproc: qcom: Move glink_ssr notification after stop
glink_ssr is used to signal a remote processor "A" about the stopping of
another remote processor "B", so that in the event that remote processor
B is ever booted again the fifos of the glink channel between A and B is
in a known state.

But if remote processor A receives this notification before B is
actually stopped the newly reset fifo indices will be interpreted as
there being "data" on the channel and either side of the channel will
enter a fatal error handler.

Move the glink_ssr notification to the "unprepare" state of the
rproc_subdev to avoid this issue.

This has the side effect of us not notifying the dying remote processor
itself about its fate, which has been seen to block in certain resource
constraint scenarios.

Tested-by: Sibi Sankar <sibis@codeaurora.org>
Reviewed-by: Sibi Sankar <sibis@codeaurora.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
2019-07-24 16:01:14 -07:00
..
da8xx_remoteproc.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
imx_rproc.c remoteproc updates for v5.3 2019-07-17 11:44:41 -07:00
Kconfig remoteproc updates for v5.3 2019-07-17 11:44:41 -07:00
keystone_remoteproc.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
Makefile remoteproc: stm32: add an ST stm32_rproc driver 2019-06-29 21:00:02 -07:00
omap_remoteproc.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
omap_remoteproc.h
qcom_common.c remoteproc: qcom: Move glink_ssr notification after stop 2019-07-24 16:01:14 -07:00
qcom_common.h
qcom_q6v5_adsp.c remoteproc: qcom: qdsp6-adsp: Add support for QCS404 CDSP 2019-05-21 23:52:52 -07:00
qcom_q6v5_mss.c remoteproc updates for v5.3 2019-07-17 11:44:41 -07:00
qcom_q6v5_pas.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
qcom_q6v5_wcss.c remoteproc: qcom: Introduce Hexagon V5 based WCSS driver 2018-06-18 15:57:58 -07:00
qcom_q6v5.c remoteproc: qcom: q6v5: shore up resource probe handling 2018-10-09 23:13:32 -07:00
qcom_q6v5.h remoteproc: q6v5: Extract common resource handling 2018-06-18 15:55:57 -07:00
qcom_sysmon.c remoteproc: qcom: Wait for shutdown-ack/ind on sysmon shutdown 2019-01-21 21:14:27 -08:00
qcom_wcnss_iris.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
qcom_wcnss.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
qcom_wcnss.h
remoteproc_core.c remoteproc updates for v5.3 2019-07-17 11:44:41 -07:00
remoteproc_debugfs.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
remoteproc_elf_loader.c remoteproc updates for v5.3 2019-07-17 11:44:41 -07:00
remoteproc_internal.h remoteproc updates for v5.3 2019-07-17 11:44:41 -07:00
remoteproc_sysfs.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
remoteproc_virtio.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
st_remoteproc.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
st_slim_rproc.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
stm32_rproc.c remoteproc: stm32: fix building without ARM SMCC 2019-07-08 07:05:50 -07:00
wkup_m3_rproc.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00