diff mbox series

rtc: isl1208: do not advertise update interrupt feature if no interrupt specified

Message ID 20220523145320.123713-1-foss+kernel@0leil.net
State Accepted
Headers show
Series rtc: isl1208: do not advertise update interrupt feature if no interrupt specified | expand

Commit Message

Quentin Schulz May 23, 2022, 2:53 p.m. UTC
From: Quentin Schulz <quentin.schulz@theobroma-systems.com>

If an ISL1208 device does not have an interrupt line routed, the feature
shouldn't be advertised (it is by default in rtc core) or it'll confuse
userspace requesting that feature (such as hwclock from util-linux).

Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
---
 drivers/rtc/rtc-isl1208.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

Comments

Alexandre Belloni June 24, 2022, 5:08 p.m. UTC | #1
On Mon, 23 May 2022 16:53:20 +0200, Quentin Schulz wrote:
> From: Quentin Schulz <quentin.schulz@theobroma-systems.com>
> 
> If an ISL1208 device does not have an interrupt line routed, the feature
> shouldn't be advertised (it is by default in rtc core) or it'll confuse
> userspace requesting that feature (such as hwclock from util-linux).
> 
> 
> [...]

Applied, thanks!

[1/1] rtc: isl1208: do not advertise update interrupt feature if no interrupt specified
      commit: ddc9c54b6b993bca4aa810402b17a0f42c5744d1

Best regards,
diff mbox series

Patch

diff --git a/drivers/rtc/rtc-isl1208.c b/drivers/rtc/rtc-isl1208.c
index 182dfa6055155..f448a525333e1 100644
--- a/drivers/rtc/rtc-isl1208.c
+++ b/drivers/rtc/rtc-isl1208.c
@@ -880,10 +880,14 @@  isl1208_probe(struct i2c_client *client, const struct i2c_device_id *id)
 	if (rc)
 		return rc;
 
-	if (client->irq > 0)
+	if (client->irq > 0) {
 		rc = isl1208_setup_irq(client, client->irq);
-	if (rc)
-		return rc;
+		if (rc)
+			return rc;
+
+	} else {
+		clear_bit(RTC_FEATURE_UPDATE_INTERRUPT, isl1208->rtc->features);
+	}
 
 	if (evdet_irq > 0 && evdet_irq != client->irq)
 		rc = isl1208_setup_irq(client, evdet_irq);