summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorFernando Guzman Lugo <fernando.lugo@ti.com>2012-09-18 13:26:35 +0400
committerOhad Ben-Cohen <ohad@wizery.com>2012-09-18 13:53:41 +0400
commit2e37abb89a2ef13c524b0728bb9893f996a10b6b (patch)
tree11e760251317566b19cd9053608afa67cab88576 /include
parent70b85ef83ce3523f709b622d2c4cb31778686338 (diff)
downloadlinux-2e37abb89a2ef13c524b0728bb9893f996a10b6b.tar.xz
remoteproc: create a 'recovery' debugfs entry
Add a 'recovery' debugfs entry to dynamically disable/enable recovery at runtime. This is useful when one is trying to debug an rproc crash; without it, a recovery will immediately take place, making it harder to debug the crash. Contributions from Subramaniam Chanderashekarapuram. Examples: - disabling recovery: $ echo disabled > <debugfs>/remoteproc/remoteproc0/recovery - in case you want to recover a crash, but keep recovery disabled (useful in debugging sessions when you expect additional crashes you want to debug): $ echo recover > <debugfs>/remoteproc/remoteproc0/recovery - enabling recovery: $ echo enabled > <debugfs>/remoteproc/remoteproc0/recovery Signed-off-by: Fernando Guzman Lugo <fernando.lugo@ti.com> [ohad: some white space, commentary and commit log changes] Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com>
Diffstat (limited to 'include')
-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 0c1a2f95be76..2ccc3fe2046d 100644
--- a/include/linux/remoteproc.h
+++ b/include/linux/remoteproc.h
@@ -399,6 +399,7 @@ enum rproc_crash_type {
* @crash_handler: workqueue for handling a crash
* @crash_cnt: crash counter
* @crash_comp: completion used to sync crash handler and the rproc reload
+ * @recovery_disabled: flag that state if recovery was disabled
*/
struct rproc {
struct klist_node node;
@@ -425,6 +426,7 @@ struct rproc {
struct work_struct crash_handler;
unsigned crash_cnt;
struct completion crash_comp;
+ bool recovery_disabled;
};
/* we currently support only two vrings per rvdev */