[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240609234757.610273-3-dmitry.torokhov@gmail.com>
Date: Sun, 9 Jun 2024 16:47:55 -0700
From: Dmitry Torokhov <dmitry.torokhov@...il.com>
To: linux-input@...r.kernel.org
Cc: John Keeping <jkeeping@...usicbrands.com>,
Marek Vasut <marex@...x.de>,
linux-kernel@...r.kernel.org
Subject: [PATCH 3/3] Input: ili210x - use guard notation when disabling and reenabling IRQ
This makes the code more compact and error handling more robust.
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@...il.com>
---
drivers/input/touchscreen/ili210x.c | 16 +++++++---------
1 file changed, 7 insertions(+), 9 deletions(-)
diff --git a/drivers/input/touchscreen/ili210x.c b/drivers/input/touchscreen/ili210x.c
index 55f3852c8dae..4573844c3395 100644
--- a/drivers/input/touchscreen/ili210x.c
+++ b/drivers/input/touchscreen/ili210x.c
@@ -860,19 +860,17 @@ static ssize_t ili210x_firmware_update_store(struct device *dev,
* the touch controller to disable the IRQs during update, so we have
* to do it this way here.
*/
- disable_irq(client->irq);
+ scoped_guard(disable_irq, &client->irq) {
+ dev_dbg(dev, "Firmware update started, firmware=%s\n", fwname);
- dev_dbg(dev, "Firmware update started, firmware=%s\n", fwname);
+ ili210x_hardware_reset(priv->reset_gpio);
- ili210x_hardware_reset(priv->reset_gpio);
+ error = ili210x_do_firmware_update(priv, fwbuf, ac_end, df_end);
- error = ili210x_do_firmware_update(priv, fwbuf, ac_end, df_end);
+ ili210x_hardware_reset(priv->reset_gpio);
- ili210x_hardware_reset(priv->reset_gpio);
-
- dev_dbg(dev, "Firmware update ended, error=%i\n", error);
-
- enable_irq(client->irq);
+ dev_dbg(dev, "Firmware update ended, error=%i\n", error);
+ }
return error ?: count;
}
--
2.45.2.505.gda0bf45e8d-goog
Powered by blists - more mailing lists