v19.8.0

We are pleased to announce the release of TT System Firmware firmware version 19.8.0 πŸ₯³πŸŽ‰.

Major enhancements with this release include:

Wormhole

Bug Fixes

  • Fix GDDR speed reporting in tt-smi (regression introduced in 19.5.1 / 19.6.0)

Power & Performance Improvements

  • Add support for more idle power saving features

    • GDDR low power mode

    • PCIe switch to Gen1

    • Lower vcore voltage when in aiclk idle

Blackhole

New Features

  • Added cable fault detection to protect the board when the 12V-2x6 power cable is missing or improperly installed. The DMC detects the cable power limit via GPIO sense pins and writes it to SCRATCH_1 before ARC soft reset. If the SMC reads a power limit of 0, it enters a low-power cable fault mode: all tiles are clock-gated, firmware init is skipped for affected subsystems, and PCIe communication with the host is maintained.

  • Added AICLK host frequency arbitration with SMC message handler for dynamic frequency control

  • Added cable power limit communication from DMC to SMC via JTAG for real-time power monitoring

  • Added adjustable TDP (Thermal Design Power) limit through throttler for improved power management

Stability Improvements

  • Updated Blackhole ERISC FW to v1.10.1, change list from v1.9.0:

    • v1.10.1

      • Fix retraining sequence in LT only mode caused by missing register clear

    • v1.10.0

      • Improve link stability and training reliability for ANLT mode (LT mode)

        • Added LT only training mode without AN, now default over ANLT

      • Fixed bug in Manual EQ sequence that caused reinits to hang

      • Updated ETH mailbox message selection

        • Removed INTERRUPT, CABLE_CHECK, TELEMETRY_EVENT, REMOTE_ALIVE, PORT_MODE messages as they were deemed unneeded

        • Did not re-number messages to avoid updates in higher layer software

  • Updated Blackhole MRISC FW to v2.14

    • Fix training instability in revB UBBs

    • Clear EDC error counters after training so they don’t get reported in telemetry

  • Resolved issue of first LLK Unpacker instruction being corrupted (SYS-3628).

  • Resolved issue with 1/2 chips enumerating on P300 systems across frequent reboots

Drivers

  • Increased firmware table buffer size

  • Enhanced GDDR driver with improved PHY wake-up sequencing and hang detection

Power Management

  • Re-enabled PHY powerdown for MRISC on Galaxy systems

  • Implemented cable fault low-power mode that minimizes power draw when 12V-2x6 cable is missing

  • Enhanced TDP throttler with configurable power limits

Testing & CI Improvements

  • Enhanced smoke tests with CONFIG_ASSERT=y in nightly CI for improved error detection

  • Added end-to-end tests for power management features including TDP limit messaging

  • Added unit tests for AICLK PPM, message queue handlers, and EEPROM operations

  • Enhanced GDDR status checking in reset tests for better reliability validation

  • Added test coverage for firmware bundle diff functionality and tensix disable features

API Changes

  • New throttler count SMC message to display how often each throttler has been activated

  • Added extensive Doxygen documentation for SMC message APIs including:

    • ForceVddHandler request structures

    • AICLK host message protocols

    • EEPROM read/write operations

    • Power domain and voltage monitoring messages

    • Temperature sensor reading interfaces

  • Enhanced telemetry APIs with GDDR BIST status reporting

  • Added cable power limit registers and fault status bits to status register interface

Scripts & Tooling

  • Added comprehensive Wormhole recovery scripts and Docker image with recovery assets

  • Enhanced Flash Loader Module (FLM) with:

    • W25Q64JW flash device support with variable address length

    • Status register read/write operations and block protect bit clearing

    • Write enable functionality for global lock/unlock commands

  • Added PyOCD utilities integration for improved debugging workflows

  • Enhanced device initialization with configurable init/deinit function pointers

  • Improved firmware bundle tooling with better diff support for unsigned bootfs entries

Grendel

New Features

  • Added OCCP (Open Chip Communication Protocol) library for standardized communication protocols

  • Added TT SMC remoteproc driver for remote processor management and lifecycle control

Drivers

  • Added Grendel SMC DMA driver with scatter/gather transfer support

  • Added Grendel SMC PLL clock control driver for dynamic frequency scaling

Testing & CI Improvements

  • Added comprehensive test coverage for new Grendel SMC drivers (DMA and clock control)

  • Added initial GitLab CI configuration for Grendel test execution

Migration guide

An overview of required and recommended changes to make when migrating from the previous v19.7.0 release can be found in 19.8 Migration Guide.

Full ChangeLog

The full ChangeLog from the previous v19.7.0 release can be found at the link below.

https://github.com/tenstorrent/tt-system-firmware/compare/v19.7.0…v19.8.0