Thread (5 messages) 5 messages, 3 authors, 7d ago

Re: [PATCH 2/2] arm64: dts: imx93-evk/qsb: add rtc1 alias for external PCF2131 RTC

From: sashiko-bot@kernel.org
Date: 2026-09-14 03:29:41
Also in: imx

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:

Pre-existing issues:
- [High] This problem wasn't introduced by this patch, but several other NXP boards with multiple RTCs lack explicit RTC aliases, leading to the exact same unpredictable /dev/rtcN numbering that this patch fixes.
--

commit 3914a89ee5c45116b8135c7ac05a01b772cb8462
Author: Joy Zou [off-list ref]

arm64: dts: imx93-evk/qsb: add rtc1 alias for external PCF2131 RTC

This commit fixes unpredictable /dev/rtcN numbering for imx93 boards by adding
an explicit rtc1 alias.
Only rtc0 was aliased to bbnsm_rtc, while the external pcf2131 had
no fixed index. When both drivers are modules, the pcf2131 may register
first and take rtc0, pushing bbnsm_rtc to rtc1. Since suspend/resume
wakeup relies on the internal bbnsm RTC at rtc0, this broke wakeup.

Add rtc1 alias for the pcf2131 on imx93-11x11-evk and imx93-9x9-qsb,
so it keeps a fixed index while bbnsm_rtc stays rtc0.
[Severity: High]
This isn't a bug introduced by this patch, but several other NXP boards with
multiple RTCs lack explicit RTC aliases, leading to the exact same
unpredictable /dev/rtcN numbering that this patch fixes.

For example, in arch/arm64/boot/dts/freescale/imx8mn-dimonoff-gateway-evk.dts:

	rtc@53 {
		compatible = "nxp,pcf2131";

This board defines multiple RTCs (pcf2129 and pcf2131) without aliases,
leaving them susceptible to the same index race condition.

In arch/arm64/boot/dts/freescale/imx8mp-navqp.dts:

	rtc@53 {
		compatible = "nxp,pcf2131";

This board defines an external RTC alongside the SoC's internal snvs_rtc
without any aliases, causing unpredictable index assignment.

In arch/arm64/boot/dts/freescale/fsl-ls1088a-rdb.dts:

	rtc@51 {
				compatible = "nxp,pcf2129";

This board defines multiple external RTCs without a complete set of aliases,
leading to unpredictable rtc0/rtc2 index assignment.

A race condition between module probes will swap these indices unpredictably,
which can break system time initialization (since CONFIG_RTC_HCTOSYS_DEVICE
defaults to rtc0) or suspend/resume wakeup functionality.

Could these other boards also be updated with explicit RTC aliases to prevent
the same issue?

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260914-b4_imx91_93_rtc-v1-0-daed1cba0714@oss.nxp.com?part=2
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help