diff options
author | Dmitry Osipenko <digetx@gmail.com> | 2018-05-29 18:41:06 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab+samsung@kernel.org> | 2018-06-05 09:49:24 -0400 |
commit | f956aec08d2b989dcf4699c15de8cd465929b750 (patch) | |
tree | afb6067146d75a48423eba63a3178b1bef646e03 | |
parent | fc6c19fb712dea1580f7eb1a7b207522d2cf6f6f (diff) |
media: staging: tegra-vde: Reset VDE regardless of memory client resetting failure
A failed memory client reset doesn't prevent VDE from resetting, hence
reset VDE regardless of preceding memory client resetting failure.
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
-rw-r--r-- | drivers/staging/media/tegra-vde/tegra-vde.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/drivers/staging/media/tegra-vde/tegra-vde.c b/drivers/staging/media/tegra-vde/tegra-vde.c index 6dd3bf4481be..6f06061a40d9 100644 --- a/drivers/staging/media/tegra-vde/tegra-vde.c +++ b/drivers/staging/media/tegra-vde/tegra-vde.c | |||
@@ -901,15 +901,12 @@ static int tegra_vde_ioctl_decode_h264(struct tegra_vde *vde, | |||
901 | * the whole system. | 901 | * the whole system. |
902 | */ | 902 | */ |
903 | err = reset_control_assert(vde->rst_mc); | 903 | err = reset_control_assert(vde->rst_mc); |
904 | if (!err) { | 904 | if (err) |
905 | err = reset_control_assert(vde->rst); | ||
906 | if (err) | ||
907 | dev_err(dev, | ||
908 | "DEC end: Failed to assert HW reset: %d\n", | ||
909 | err); | ||
910 | } else { | ||
911 | dev_err(dev, "DEC end: Failed to assert MC reset: %d\n", err); | 905 | dev_err(dev, "DEC end: Failed to assert MC reset: %d\n", err); |
912 | } | 906 | |
907 | err = reset_control_assert(vde->rst); | ||
908 | if (err) | ||
909 | dev_err(dev, "DEC end: Failed to assert HW reset: %d\n", err); | ||
913 | 910 | ||
914 | put_runtime_pm: | 911 | put_runtime_pm: |
915 | pm_runtime_mark_last_busy(dev); | 912 | pm_runtime_mark_last_busy(dev); |