diff options
author | Fernando Guzman Lugo <fernando.lugo@ti.com> | 2012-09-18 05:26:35 -0400 |
---|---|---|
committer | Ohad Ben-Cohen <ohad@wizery.com> | 2012-09-18 05:53:41 -0400 |
commit | 2e37abb89a2ef13c524b0728bb9893f996a10b6b (patch) | |
tree | 11e760251317566b19cd9053608afa67cab88576 /include/linux/remoteproc.h | |
parent | 70b85ef83ce3523f709b622d2c4cb31778686338 (diff) |
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/linux/remoteproc.h')
-rw-r--r-- | include/linux/remoteproc.h | 2 |
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 { | |||
399 | * @crash_handler: workqueue for handling a crash | 399 | * @crash_handler: workqueue for handling a crash |
400 | * @crash_cnt: crash counter | 400 | * @crash_cnt: crash counter |
401 | * @crash_comp: completion used to sync crash handler and the rproc reload | 401 | * @crash_comp: completion used to sync crash handler and the rproc reload |
402 | * @recovery_disabled: flag that state if recovery was disabled | ||
402 | */ | 403 | */ |
403 | struct rproc { | 404 | struct rproc { |
404 | struct klist_node node; | 405 | struct klist_node node; |
@@ -425,6 +426,7 @@ struct rproc { | |||
425 | struct work_struct crash_handler; | 426 | struct work_struct crash_handler; |
426 | unsigned crash_cnt; | 427 | unsigned crash_cnt; |
427 | struct completion crash_comp; | 428 | struct completion crash_comp; |
429 | bool recovery_disabled; | ||
428 | }; | 430 | }; |
429 | 431 | ||
430 | /* we currently support only two vrings per rvdev */ | 432 | /* we currently support only two vrings per rvdev */ |