linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] rtc: Fix problems with missing UIE irqs
@ 2024-12-03 10:45 Esben Haabendal
  2024-12-03 10:45 ` [PATCH 1/6] rtc: interface: Fix long-standing race when setting alarm Esben Haabendal
                   ` (6 more replies)
  0 siblings, 7 replies; 10+ messages in thread
From: Esben Haabendal @ 2024-12-03 10:45 UTC (permalink / raw)
  To: Alexandre Belloni
  Cc: linux-rtc, linux-kernel, linux-arm-kernel, Esben Haabendal,
	stable, Patrice Chotard

This fixes a couple of different problems, that can cause RTC (alarm)
irqs to be missing when generating UIE interrupts.

The first commit fixes a long-standing problem, which has been
documented in a comment since 2010. This fixes a race that could cause
UIE irqs to stop being generated, which was easily reproduced by
timing the use of RTC_UIE_ON ioctl with the seconds tick in the RTC.

The last commit ensures that RTC (alarm) irqs are enabled whenever
RTC_UIE_ON ioctl is used.

The driver specific commits avoids kernel warnings about unbalanced
enable_irq/disable_irq, which gets triggered on first RTC_UIE_ON with
the last commit. Before this series, the same warning should be seen
on initial RTC_AIE_ON with those drivers.

Signed-off-by: Esben Haabendal <esben@geanix.com>
---
Esben Haabendal (6):
      rtc: interface: Fix long-standing race when setting alarm
      rtc: isl12022: Fix initial enable_irq/disable_irq balance
      rtc: cpcap: Fix initial enable_irq/disable_irq balance
      rtc: st-lpc: Fix initial enable_irq/disable_irq balance
      rtc: tps6586x: Fix initial enable_irq/disable_irq balance
      rtc: interface: Ensure alarm irq is enabled when UIE is enabled

 drivers/rtc/interface.c    | 27 +++++++++++++++++++++++++++
 drivers/rtc/rtc-cpcap.c    |  1 +
 drivers/rtc/rtc-isl12022.c |  1 +
 drivers/rtc/rtc-st-lpc.c   |  1 +
 drivers/rtc/rtc-tps6586x.c |  1 +
 5 files changed, 31 insertions(+)
---
base-commit: 40384c840ea1944d7c5a392e8975ed088ecf0b37
change-id: 20241203-rtc-uie-irq-fixes-f2838782d0f8

Best regards,
-- 
Esben Haabendal <esben@geanix.com>



^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2024-12-04  8:10 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-03 10:45 [PATCH 0/6] rtc: Fix problems with missing UIE irqs Esben Haabendal
2024-12-03 10:45 ` [PATCH 1/6] rtc: interface: Fix long-standing race when setting alarm Esben Haabendal
2024-12-03 10:45 ` [PATCH 2/6] rtc: isl12022: Fix initial enable_irq/disable_irq balance Esben Haabendal
2024-12-03 10:45 ` [PATCH 3/6] rtc: cpcap: " Esben Haabendal
2024-12-03 10:45 ` [PATCH 4/6] rtc: st-lpc: " Esben Haabendal
2024-12-03 13:25   ` Alexandre Belloni
2024-12-03 13:37     ` Esben Haabendal
2024-12-03 10:45 ` [PATCH 5/6] rtc: tps6586x: " Esben Haabendal
2024-12-03 10:45 ` [PATCH 6/6] rtc: interface: Ensure alarm irq is enabled when UIE is enabled Esben Haabendal
2024-12-04  8:09 ` [PATCH 0/6] rtc: Fix problems with missing UIE irqs Esben Haabendal

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).