aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/linux/remoteproc.h
diff options
context:
space:
mode:
authorSiddharth Gupta <sidgup@codeaurora.org>2020-11-19 13:05:32 -0800
committerBjorn Andersson <bjorn.andersson@linaro.org>2020-12-10 13:14:04 -0600
commitadf60a870e9130c7883ec2ab798484e05f24db39 (patch)
treee2942a288d33fb5cdc0f19fd622ff581950713f2 /include/linux/remoteproc.h
parentremoteproc/mediatek: change MT8192 CFG register base (diff)
downloadwireguard-linux-adf60a870e9130c7883ec2ab798484e05f24db39.tar.xz
wireguard-linux-adf60a870e9130c7883ec2ab798484e05f24db39.zip
remoteproc: core: Add ops to enable custom coredump functionality
Each remoteproc might have different requirements for coredumps and might want to choose the type of dumps it wants to collect. This change allows remoteproc drivers to specify their own custom dump function to be executed in place of rproc_coredump. If the coredump op is not specified by the remoteproc driver it will be set to rproc_coredump by default. Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org> Signed-off-by: Siddharth Gupta <sidgup@codeaurora.org> Link: https://lore.kernel.org/r/1605819935-10726-2-git-send-email-sidgup@codeaurora.org Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Diffstat (limited to 'include/linux/remoteproc.h')
-rw-r--r--include/linux/remoteproc.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/remoteproc.h b/include/linux/remoteproc.h
index e8ac041c64d9..121c55eff3d2 100644
--- a/include/linux/remoteproc.h
+++ b/include/linux/remoteproc.h
@@ -375,6 +375,7 @@ enum rsc_handling_status {
* @get_boot_addr: get boot address to entry point specified in firmware
* @panic: optional callback to react to system panic, core will delay
* panic at least the returned number of milliseconds
+ * @coredump: collect firmware dump after the subsystem is shutdown
*/
struct rproc_ops {
int (*prepare)(struct rproc *rproc);
@@ -393,6 +394,7 @@ struct rproc_ops {
int (*sanity_check)(struct rproc *rproc, const struct firmware *fw);
u64 (*get_boot_addr)(struct rproc *rproc, const struct firmware *fw);
unsigned long (*panic)(struct rproc *rproc);
+ void (*coredump)(struct rproc *rproc);
};
/**