From 669089fdbda071da22dc9156243df64a76def62d Mon Sep 17 00:00:00 2001 From: Sudheer Papothi Date: Thu, 30 Jan 2020 05:32:01 +0530 Subject: [PATCH] soc: soundwire: Handle soundwire slave reset gracefully If soundwire slave does not implement reset functionality, handle soundwire slave reset error gracefully in soundwire master driver. Change-Id: I24f34d3e8665c187c4ac9dd2bc8acb2b39ad2df6 Signed-off-by: Sudheer Papothi --- soc/swr-mstr-ctrl.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/soc/swr-mstr-ctrl.c b/soc/swr-mstr-ctrl.c index e5fc5f81c7c8..8859302876e0 100644 --- a/soc/swr-mstr-ctrl.c +++ b/soc/swr-mstr-ctrl.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only /* - * Copyright (c) 2015-2019, The Linux Foundation. All rights reserved. + * Copyright (c) 2015-2020, The Linux Foundation. All rights reserved. */ #include @@ -3038,7 +3038,12 @@ int swrm_wcd_notify(struct platform_device *pdev, u32 id, void *data) mutex_lock(&swrm->reslock); list_for_each_entry(swr_dev, &mstr->devices, dev_list) { ret = swr_reset_device(swr_dev); - if (ret) { + if (ret == -ENODEV) { + dev_dbg_ratelimited(swrm->dev, + "%s slave reset not implemented\n", + __func__); + ret = 0; + } else if (ret) { dev_err(swrm->dev, "%s: failed to reset swr device %d\n", __func__, swr_dev->dev_num);