Skip to content

Integrate RTC reporting and rule-driven UTC library services - #31

Merged
JohnAmadis merged 5 commits into
mainfrom
feat/register-dmutc
Oct 16, 2026
Merged

JohnAmadis merged 5 commits into
mainfrom
feat/register-dmutc

Conversation

@JaxCalder

@JaxCalder JaxCalder commented Oct 16, 2026 •

Copy link
Copy Markdown
Contributor

Register dmutc as a library submodule and update dmdevfs, dmsystem, dmboot and dmutc gitlinks to the tested device-rule integration. RTC devices are reported to libsystemd; a packaged rule starts a library-backed UTC unit with the event path. No hardcoded RTC fallback.

Validation: STM32F746G-DISCO after reset starts dmutc@rtc automatically (type=library, pid=0). UTC 6/6, RTC 12/12, RNG 6/6. Native libsystemd 62/62; dmdevfs ctest 10/10; dmutc ctest 2/2; M4/M7 UTC builds. Console evidence is in dmutc docs/testing.md.

Release libsystemd lifecycle support and dmdevfs RTC reporting, then dmutc and registry, before consuming the boot manifest from public packages. Existing unrelated registry checkout changes are excluded.

Related implementation PRs:

Additional dmboot integration regression: the existing CI Renode runner passed boot/log-ring access, UART/VFS, SD automount and persistence across remount, LCD and touch tests. A second run with the optional audio model also passed. A one-second 523 Hz tone completed with zero underruns; captured stereo channels agree and measure approximately 522 Hz.

The Renode network/TAP step was explicitly skipped because this host lacks root and a TUN device. Physical STM32F746G-DISCO checks passed DHCP, ping in both directions, telnet command execution and temporary root/SD file read/write. The ICMP library correctly rejects STOP while a dependent module uses it. The independent plain-library lifecycle regression passes; libsystemd now passes 63/63. No production code fixes were needed in this regression run. Raw validation logs remain local and are not published.

Follow-up network diagnosis: a single ping after idle returns 0/1; an immediate repeat returns 1/1. An outgoing board ping warming ARP is followed by 3/3 incoming responses. Released ICMP code sends replies inline on the sole RX pump, while its send path can block waiting for an ARP reply that this same pump must consume. This explains the cold-cache loss and predates these UTC/library-service changes. No networking implementation was changed. Network regression therefore remains qualified rather than declared loss-free.

The libsystemd GitHub CI passes with the 63-step suite. Raw logs remain local. Two small physical-board test files remain because rm is absent; installing an additional removal tool was rejected by automatic approval review. No extra executable was installed on the board.

@JohnAmadis
JohnAmadis merged commit c2fdf43 into main Oct 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants