[PATCH 06/11] pinctrl: microchip-sgpio: Simplify locking with guard()
Krzysztof Kozlowski
krzysztof.kozlowski at oss.qualcomm.com
Thu Jan 15 02:30:07 AEDT 2026
Simplify error handling (less gotos) over locks with guard().
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski at oss.qualcomm.com>
---
drivers/pinctrl/pinctrl-microchip-sgpio.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/drivers/pinctrl/pinctrl-microchip-sgpio.c b/drivers/pinctrl/pinctrl-microchip-sgpio.c
index b6363f3cdce9..7a6cb5f502b0 100644
--- a/drivers/pinctrl/pinctrl-microchip-sgpio.c
+++ b/drivers/pinctrl/pinctrl-microchip-sgpio.c
@@ -264,19 +264,17 @@ static int sgpio_single_shot(struct sgpio_priv *priv)
* setting.
* After the manual burst, reenable the auto repeat mode again.
*/
- mutex_lock(&priv->poll_lock);
+ guard(mutex)(&priv->poll_lock);
ret = regmap_update_bits(priv->regs, addr, single_shot | auto_repeat,
single_shot);
if (ret)
- goto out;
+ return ret;
ret = regmap_read_poll_timeout(priv->regs, addr, ctrl,
!(ctrl & single_shot), 100, 60000);
/* reenable auto repeat mode even if there was an error */
ret2 = regmap_update_bits(priv->regs, addr, auto_repeat, auto_repeat);
-out:
- mutex_unlock(&priv->poll_lock);
return ret ?: ret2;
}
--
2.51.0
More information about the openbmc
mailing list