//! /system/services/fdt — the devicetree discovery service: the ARM twin of the //! acpi service (docs/m19-m20-plan.md decision 7). **Placeholder: not //! implemented.** It exists so the build's `-Ddiscovery` option has both of its //! values from day one; the implementation lands with the Raspberry Pi //! bring-up (docs/arm.md). //! //! What it becomes: the per-firmware discoverer for boots that hand over a //! flattened device tree instead of ACPI tables. It claims the //! `devicetree-blob` node the kernel publishes (the FDT the loader received), //! walks the tree — pure data, no bytecode, so unlike the acpi service it //! needs no port grant and no interpreter — and, like any bus-shaped driver: //! `device_register`s what it finds (containment against the blob node's //! recorded apertures), reports each child to the device manager //! (`child_added`, identity = the node's `compatible` string), and stays //! resident under the manager's supervision (hello, restart, the usual //! contract). //! //! Known prerequisite recorded in the plan: `DeviceDescriptor`'s 8-byte `hid` //! cannot hold an FDT `compatible` string ("brcm,bcm2835-aux-uart") — identity //! widens before this file grows a body. const runtime = @import("runtime"); pub fn main() void { // Not implemented: exit cleanly and silently (a bare spawn by the // initial-ramdisk sweep must not derange other tests' markers). The // supervisor reads a clean exit as "meant to stop" — correct for a // placeholder. } pub const panic = runtime.panic; comptime { _ = &runtime.start._start; // pull the runtime entry shim into the image }