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@xxxxxxxxx> --- drivers/staging/media/tegra-vde/tegra-vde.c | 13 +++++-------- 1 file 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, * the whole system. */ err = reset_control_assert(vde->rst_mc); - if (!err) { - err = reset_control_assert(vde->rst); - if (err) - dev_err(dev, - "DEC end: Failed to assert HW reset: %d\n", - err); - } else { + if (err) dev_err(dev, "DEC end: Failed to assert MC reset: %d\n", err); - } + + err = reset_control_assert(vde->rst); + if (err) + dev_err(dev, "DEC end: Failed to assert HW reset: %d\n", err); put_runtime_pm: pm_runtime_mark_last_busy(dev); -- 2.17.0