arm64: dts: qcom: sc8280xp-x13s: switch to uefi rtc offset

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.

Switch to using the Qualcomm specific UEFI variable that is used by the
UEFI firmware (and Windows) to store the RTC offset.

This specifically means that the RTC time will be synchronised between
the UEFI firmware setup (or UEFI shell), Windows and Linux.

Note however that Windows stores the RTC time in local time by default,
while Linux typically uses UTC (i.e. as on X86).

Tested-by: Jens Glathe <jens.glathe@oldschoolsolutions.biz>
Tested-by: Steev Klimaszewski <steev@kali.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20250219134118.31017-6-johan+linaro@kernel.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
This commit is contained in:
Johan Hovold 2025-02-19 14:41:17 +01:00 committed by Bjorn Andersson
parent 9bb5ca4641
commit 409803681a

View File

@ -1090,20 +1090,9 @@ &pmk8280_pon_resin {
};
&pmk8280_rtc {
nvmem-cells = <&rtc_offset>;
nvmem-cell-names = "offset";
status = "okay";
};
&pmk8280_sdam_6 {
status = "okay";
rtc_offset: rtc-offset@bc {
reg = <0xbc 0x4>;
};
};
&pmk8280_vadc {
channel@144 {
reg = <PM8350_ADC7_AMUX_THM1_100K_PU(1)>;