diff --git a/drivers/slimbus/slimbus.c b/drivers/slimbus/slimbus.c index 72ac5b80f13e..5b1e7f2e275d 100644 --- a/drivers/slimbus/slimbus.c +++ b/drivers/slimbus/slimbus.c @@ -1323,8 +1323,10 @@ int slim_config_mgrports(struct slim_device *sb, u32 *ph, int nports, for (i = 0; i < nports; i++) { u8 pn = SLIM_HDL_TO_PORT(ph[i]); - if (ctrl->ports[pn].state == SLIM_P_CFG) + if (ctrl->ports[pn].state == SLIM_P_CFG) { + mutex_unlock(&ctrl->sched.m_reconf); return -EISCONN; + } ctrl->ports[pn].cfg = *cfg; } mutex_unlock(&ctrl->sched.m_reconf);