]> www.infradead.org Git - users/jedix/linux-maple.git/commit
rtc: stm32: add Low Speed Clock Output (LSCO) support
authorValentin Caron <valentin.caron@foss.st.com>
Mon, 22 Jul 2024 16:00:21 +0000 (18:00 +0200)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Wed, 14 Aug 2024 09:37:07 +0000 (11:37 +0200)
commitbb7b0df2be5c6b7bfe0cf9c93067c5b1489566ca
tree889b76b9334cabaf85b8a52679c85e6603c89b82
parent16ad2bc09efbcb9cb24f8d879ac218421cbef690
rtc: stm32: add Low Speed Clock Output (LSCO) support

RTC is able to output on a pin the "LSE" internal clock.

STM32 RTC is now registered as a clock provider.
It provides rtc_lsco clock, that means RTC_LSCO is output on either
RTC_OUT1 or RTC_OUT2_RMP, depending on pinmux DT property.
The clock is marked as CLK_IGNORE_UNUSED and CLK_IS_CRITICAL because
RTC_LSCO can be early required by devices needed it to init.

Add LSCO in pinmux functions.

Add "stm32_rtc_clean_outs" to disable LSCO. As RTC is part of "backup"
power domain, it is not reset during shutdown or reboot. So force LSCO
disable at probe.

Co-developed-by: Amelie Delaunay <amelie.delaunay@foss.st.com>
Signed-off-by: Amelie Delaunay <amelie.delaunay@foss.st.com>
Signed-off-by: Valentin Caron <valentin.caron@foss.st.com>
Link: https://lore.kernel.org/r/20240722160022.454226-4-valentin.caron@foss.st.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
drivers/rtc/Kconfig
drivers/rtc/rtc-stm32.c