summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeiko Stuebner <heiko@sntech.de>2025-08-04 16:07:24 +0300
committerLee Jones <lee@kernel.org>2025-10-01 12:28:14 +0300
commitbf2de43060d528e52e372c63182a94b95c80d305 (patch)
treedf189a4fc3314f507adfda6b32942a7034dcc8d4
parent5e1c88679174e4bfe5d152060b06d370bd85de80 (diff)
downloadlinux-bf2de43060d528e52e372c63182a94b95c80d305.tar.xz
mfd: qnap-mcu: Handle errors returned from qnap_mcu_write
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>
-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 47d435c93dbb..e794efb6ecb1 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));