summaryrefslogtreecommitdiff
path: root/drivers/mfd
diff options
context:
space:
mode:
authorHeiko Stuebner <heiko@sntech.de>2025-08-04 15:07:24 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-11-13 15:36:54 -0500
commit1f5e7ca0fdf98c1380adc8ed86cc90e4732ea03e (patch)
tree69b1a0ed1bf3d7950caf0054bba79984b85ba2ee /drivers/mfd
parentde61dc5fcd6ab3c508b32f50c3274637f13fc8fc (diff)
downloadlinux-1f5e7ca0fdf98c1380adc8ed86cc90e4732ea03e.tar.gz
linux-1f5e7ca0fdf98c1380adc8ed86cc90e4732ea03e.tar.bz2
linux-1f5e7ca0fdf98c1380adc8ed86cc90e4732ea03e.zip
mfd: qnap-mcu: Handle errors returned from qnap_mcu_write
[ Upstream commit bf2de43060d528e52e372c63182a94b95c80d305 ] qnap_mcu_write can return errors and those were not checked before. So do that now. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Link: https://lore.kernel.org/r/20250804130726.3180806-3-heiko@sntech.de Signed-off-by: Lee Jones <lee@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/mfd')
-rw-r--r--drivers/mfd/qnap-mcu.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/mfd/qnap-mcu.c b/drivers/mfd/qnap-mcu.c
index 89a8a1913d42..9d3edc3e7d93 100644
--- a/drivers/mfd/qnap-mcu.c
+++ b/drivers/mfd/qnap-mcu.c
@@ -163,7 +163,11 @@ int qnap_mcu_exec(struct qnap_mcu *mcu,
reply->received = 0;
reinit_completion(&reply->done);
- qnap_mcu_write(mcu, cmd_data, cmd_data_size);
+ ret = qnap_mcu_write(mcu, cmd_data, cmd_data_size);
+ if (ret < 0) {
+ mutex_unlock(&mcu->bus_lock);
+ return ret;
+ }
serdev_device_wait_until_sent(mcu->serdev, msecs_to_jiffies(QNAP_MCU_TIMEOUT_MS));