v19.2.0
We are pleased to announce the release of TT Zephyr Platforms firmware version 19.2.0 🥳🎉.
Major enhancements with this release include upgrading to Zephyr 4.3.0, delivering configurable PCIe BAR support via the new CntlInitV2() flow, and introducing a standalone tt_fwbundle tooling suite.
What’s Changed
Drivers
Clock Control Emulation: Added an emulated clock control driver and bindings used by native-sim tests.
DMA Reliability: Switched the Blackhole DMA driver to RAM-to-Tensix transfers and enforced DT alignment so NOC DMA buffers meet 64-byte requirements.
Libraries & Firmware
Power Management: Refactored
bh_arcpower handling intobh_power, added L2 CPU enable/disable plumbing, and exposed the control throughtt_shellwith stricter error handling.PCIe Enhancements: Rolled out the
CntlInitV2()path as a working demo of runtime BAR sizing, consolidating init parameters into a single struct, improving diagnostics, and aligning MSI buffers for predictable bring-up.Firmware Tables: Populated PCIe BAR size metadata across Blackhole board firmware tables to accompany the new BAR masks.
Tooling & Tests
Firmware Bundle Utility: Add
tt_fwbundlescript with create and combine commands, which replace the fwbundle subcommand intt_boot_fs. Remove this subcommand and update usage in tree to usett_fwbundle.Automated Coverage: Added unit tests for the new firmware bundle flows and expanded native-sim PCIe MSI coverage.
Applications & Stability
DMC I2C Timeout: Tuned the STM32 I2C transfer timeout to track upstream changes and avoid spurious stalls.
Data Path Alignment: Ensured Tensix RAM buffers are 64-byte aligned to match the NOC DMA engine’s requirements.
Continuous Integration
Devicetree Linting: Enabled the devicetree linter in compliance checks and regenerated DTS files accordingly.
Workflow Hardening: Updated CI runners and tag fetching to improve build reliability on shared hardware.
Upstream Contributions
DMA Test Alignment: Carried Zephyr patches so the DMA loop, link, scatter-gather, and burst-length tests honor the
dma-buf-addr-alignmentdevicetree property, matching the Blackhole NOC DMA engine’s 64-byte requirement.MSPI NOR Enhancements: Maintained an upstream-targeted patch that adds
read-frequencybinding support and enables the flash page layout API while we validate the new upstream MSPI drivers.STM32 SMBus PEC Support: Upstreamed platform-independent PEC helpers and STM32 SMBus PEC handling, allowing us to drop the large local patch while preserving CRC-backed transactions.
STM32 SMBus PCall Coverage: Delivered block read/write PCall support into Zephyr’s STM32 SMBus stack to keep legacy control paths working without downstream shims.
I2C DesignWare Reliability: Landed the fix that reinstates the target-mode stop callback, resolving elusive synchronization hangs observed with ARC-based controllers.
Patch Pruning: Cleared out SMBus and runner patches that merged alongside the Zephyr 4.3.0 bump, shrinking our downstream maintenance surface.
Documentation
Getting Started: Documented Python 3.12 installation steps for development environments.
Migration guide
An overview of required and recommended changes to make when migrating from the previous v19.1.0 release can be found in v19.2 Migration Guide.
Full ChangeLog
The full ChangeLog from the previous v19.1.0 release can be found at the link below.
https://github.com/tenstorrent/tt-zephyr-platforms/compare/v19.1.0…v19.2.0