]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
rtc: pm8xxx: fix uefi offset lookup
authorJohan Hovold <johan+linaro@kernel.org>
Wed, 23 Apr 2025 07:51:41 +0000 (09:51 +0200)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Sat, 24 May 2025 21:39:41 +0000 (23:39 +0200)
commitead4532832795f700fd8962cb1f2aad74f3dfca7
treee6a3389bc9e8decb1a0c47c2e244a7489427fcb5
parentb23b91d56863d280af81c9ca11594484782ceea5
rtc: pm8xxx: fix uefi offset lookup

On many Qualcomm platforms the PMIC RTC control and time registers are
read-only so that the RTC time can not be updated. Instead an offset
needs be stored in some machine-specific non-volatile memory, which a
driver can take into account.

On platforms where the offset is stored in a Qualcomm specific UEFI
variable the variables are also accessed in a non-standard way, which
means that the OS cannot assume that the variable service is available
by the time the driver probes.

Use the new 'qcom,uefi-rtc-info' property to determine whether to probe
defer until the UEFI offset becomes available so that the offset can be
used also when the RTC driver is built in or when a dependency of the
UEFI variable driver is built as a module (e.g. the driver for the SCM
interconnects).

Fixes: bba38b874886 ("rtc: pm8xxx: add support for uefi offset")
Reported-by: Rob Clark <robdclark@gmail.com>
Link: https://lore.kernel.org/lkml/CAF6AEGsfke=x0p1b2-uNX6DuQfRyEjVbJaxTbVLDT2YvSkGJbg@mail.gmail.com/
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20250423075143.11157-3-johan+linaro@kernel.org
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
drivers/rtc/rtc-pm8xxx.c