How h-000-h/mini_tree works
mini_tree is platform-independent embedded middleware for device-tree-based peripheral access across bare-metal and several RTOS backends. The principal workflow is application use of a board-described device, through the documented board/VFS/bus/HAL layers, to platform-provided hardware support. Runtime services and product drivers are additional capabilities. The VFS implementation and generated probe-table sources are absent from the supplied tree, so their wiring is shown only where documented; unsampled integration details are omitted.
Main entry points: board_device.c Board Devices · bus Peripheral Buses · board_driver.c Board Drivers · hal Peripheral HAL
Components 17
Device Model
- Device Tree
- Board Devices
board/src/board_device.c - Board Drivers
board/src/board_driver.c - VFS
- Product Drivers
drivers
Hardware Access
- Peripheral Buses
bus - Peripheral HAL
hal - Platform Support
Runtime Services
- EventBus
core/src/event_bus.c - Virtual IRQ
interrupt/interrupt.c - Buffers
algorithm/buffer - OS Backends
core/src - Task Manager
system_c/src/task_manager.c - Platform Safety
hal/system/hal_platform_safety.c
Network Integration
- MQTT Client
net/port/mqtt/mqtt_client.c
Other components
- Application
- MQTT Broker
Connections 16
- Application → Board Devices: uses devices
- Device Tree → Board Devices: describes devices
- Board Devices → Board Drivers: probes
- Board Drivers → VFS: exposes devices
- VFS → Peripheral Buses: uses buses
- Peripheral Buses → Peripheral HAL: accesses hardware
- Peripheral HAL → Platform Support: calls platform
- Product Drivers → Peripheral Buses: uses buses
- Application → EventBus: publishes events
- Application → Virtual IRQ: uses IRQ blocks
- Virtual IRQ → Buffers: defers work
- Application → Task Manager: creates tasks
- Task Manager → OS Backends: creates tasks
- Application → Platform Safety: uses safety hooks
- Application → MQTT Client: uses client
- MQTT Client → MQTT Broker: exchanges messages