diff options
| -rw-r--r-- | drivers/remoteproc/remoteproc_core.c | 10 | ||||
| -rw-r--r-- | include/linux/remoteproc.h | 2 |
2 files changed, 0 insertions, 12 deletions
diff --git a/drivers/remoteproc/remoteproc_core.c b/drivers/remoteproc/remoteproc_core.c index eab14b414bf0..758fad3131a3 100644 --- a/drivers/remoteproc/remoteproc_core.c +++ b/drivers/remoteproc/remoteproc_core.c | |||
| @@ -1028,10 +1028,6 @@ static int rproc_stop(struct rproc *rproc) | |||
| 1028 | return ret; | 1028 | return ret; |
| 1029 | } | 1029 | } |
| 1030 | 1030 | ||
| 1031 | /* if in crash state, unlock crash handler */ | ||
| 1032 | if (rproc->state == RPROC_CRASHED) | ||
| 1033 | complete_all(&rproc->crash_comp); | ||
| 1034 | |||
| 1035 | rproc->state = RPROC_OFFLINE; | 1031 | rproc->state = RPROC_OFFLINE; |
| 1036 | 1032 | ||
| 1037 | dev_info(dev, "stopped remote processor %s\n", rproc->name); | 1033 | dev_info(dev, "stopped remote processor %s\n", rproc->name); |
| @@ -1057,8 +1053,6 @@ int rproc_trigger_recovery(struct rproc *rproc) | |||
| 1057 | 1053 | ||
| 1058 | dev_err(dev, "recovering %s\n", rproc->name); | 1054 | dev_err(dev, "recovering %s\n", rproc->name); |
| 1059 | 1055 | ||
| 1060 | init_completion(&rproc->crash_comp); | ||
| 1061 | |||
| 1062 | ret = mutex_lock_interruptible(&rproc->lock); | 1056 | ret = mutex_lock_interruptible(&rproc->lock); |
| 1063 | if (ret) | 1057 | if (ret) |
| 1064 | return ret; | 1058 | return ret; |
| @@ -1067,9 +1061,6 @@ int rproc_trigger_recovery(struct rproc *rproc) | |||
| 1067 | if (ret) | 1061 | if (ret) |
| 1068 | goto unlock_mutex; | 1062 | goto unlock_mutex; |
| 1069 | 1063 | ||
| 1070 | /* wait until there is no more rproc users */ | ||
| 1071 | wait_for_completion(&rproc->crash_comp); | ||
| 1072 | |||
| 1073 | /* load firmware */ | 1064 | /* load firmware */ |
| 1074 | ret = request_firmware(&firmware_p, rproc->firmware, dev); | 1065 | ret = request_firmware(&firmware_p, rproc->firmware, dev); |
| 1075 | if (ret < 0) { | 1066 | if (ret < 0) { |
| @@ -1459,7 +1450,6 @@ struct rproc *rproc_alloc(struct device *dev, const char *name, | |||
| 1459 | INIT_LIST_HEAD(&rproc->subdevs); | 1450 | INIT_LIST_HEAD(&rproc->subdevs); |
| 1460 | 1451 | ||
| 1461 | INIT_WORK(&rproc->crash_handler, rproc_crash_handler_work); | 1452 | INIT_WORK(&rproc->crash_handler, rproc_crash_handler_work); |
| 1462 | init_completion(&rproc->crash_comp); | ||
| 1463 | 1453 | ||
| 1464 | rproc->state = RPROC_OFFLINE; | 1454 | rproc->state = RPROC_OFFLINE; |
| 1465 | 1455 | ||
diff --git a/include/linux/remoteproc.h b/include/linux/remoteproc.h index 44e630eb3d94..6f1d8e025c81 100644 --- a/include/linux/remoteproc.h +++ b/include/linux/remoteproc.h | |||
| @@ -406,7 +406,6 @@ enum rproc_crash_type { | |||
| 406 | * @index: index of this rproc device | 406 | * @index: index of this rproc device |
| 407 | * @crash_handler: workqueue for handling a crash | 407 | * @crash_handler: workqueue for handling a crash |
| 408 | * @crash_cnt: crash counter | 408 | * @crash_cnt: crash counter |
| 409 | * @crash_comp: completion used to sync crash handler and the rproc reload | ||
| 410 | * @recovery_disabled: flag that state if recovery was disabled | 409 | * @recovery_disabled: flag that state if recovery was disabled |
| 411 | * @max_notifyid: largest allocated notify id. | 410 | * @max_notifyid: largest allocated notify id. |
| 412 | * @table_ptr: pointer to the resource table in effect | 411 | * @table_ptr: pointer to the resource table in effect |
| @@ -437,7 +436,6 @@ struct rproc { | |||
| 437 | int index; | 436 | int index; |
| 438 | struct work_struct crash_handler; | 437 | struct work_struct crash_handler; |
| 439 | unsigned int crash_cnt; | 438 | unsigned int crash_cnt; |
| 440 | struct completion crash_comp; | ||
| 441 | bool recovery_disabled; | 439 | bool recovery_disabled; |
| 442 | int max_notifyid; | 440 | int max_notifyid; |
| 443 | struct resource_table *table_ptr; | 441 | struct resource_table *table_ptr; |
