diff options
author | Bjorn Andersson <bjorn.andersson@linaro.org> | 2017-08-28 07:51:38 +0300 |
---|---|---|
committer | Bjorn Andersson <bjorn.andersson@linaro.org> | 2018-02-13 03:57:22 +0300 |
commit | 1fb82ee806d170b92315f424eac9b5b34b9ead64 (patch) | |
tree | 6e63ce8b2a5e4b8e4302a516da20ff947b8b48d9 /drivers/remoteproc/qcom_common.h | |
parent | 880f5b388252fedb26c70bb80ad1d7c8abbc0607 (diff) | |
download | linux-1fb82ee806d170b92315f424eac9b5b34b9ead64.tar.xz |
remoteproc: qcom: Introduce sysmon
The sysmon client communicates either via a dedicated SMD/GLINK channel
or via QMI encoded messages over IPCROUTER with remote processors in
order to perform graceful shutdown and inform about other remote
processors shutting down.
Acked-By: Chris Lew <clew@codeaurora.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Diffstat (limited to 'drivers/remoteproc/qcom_common.h')
-rw-r--r-- | drivers/remoteproc/qcom_common.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/drivers/remoteproc/qcom_common.h b/drivers/remoteproc/qcom_common.h index 7e614520fb69..58de71e4781c 100644 --- a/drivers/remoteproc/qcom_common.h +++ b/drivers/remoteproc/qcom_common.h @@ -4,6 +4,9 @@ #include <linux/remoteproc.h> #include "remoteproc_internal.h" +#include <linux/soc/qcom/qmi.h> + +struct qcom_sysmon; struct qcom_rproc_glink { struct rproc_subdev subdev; @@ -39,4 +42,22 @@ void qcom_add_ssr_subdev(struct rproc *rproc, struct qcom_rproc_ssr *ssr, const char *ssr_name); void qcom_remove_ssr_subdev(struct rproc *rproc, struct qcom_rproc_ssr *ssr); +#if IS_ENABLED(CONFIG_QCOM_SYSMON) +struct qcom_sysmon *qcom_add_sysmon_subdev(struct rproc *rproc, + const char *name, + int ssctl_instance); +void qcom_remove_sysmon_subdev(struct qcom_sysmon *sysmon); +#else +static inline struct qcom_sysmon *qcom_add_sysmon_subdev(struct rproc *rproc, + const char *name, + int ssctl_instance) +{ + return NULL; +} + +static inline void qcom_remove_sysmon_subdev(struct qcom_sysmon *sysmon) +{ +} +#endif + #endif |