F29H85x-SDK  26.01.00
 
Release Notes 26.00.00

F29H85X-SDK is the Core SDK providing collection of all foundational software components required to accelerate application development . It includes device-specific drivers, bit-fields, libraries (math, DSP, Control, Calibration, Communication, Flash API and Security client), peripheral examples, utilities, hardware files, and documentation. Application specific software and hardware files are delivered through additional Software Development Kits (SDK). For more information, visit F29-SDK

Note
This release is a STS (Short Term Support) release targeted for F29H85X-SDK.

Device Support

The following devices are supported with this release

What is Supported

  • Highlights
    • SSU tool enhancements and documentation updates
    • RAM based UART SBL support for F29P32X variant
    • Digital power libs and examples
    • Edge AI examples expansion
    • Device Agent Protocol (DAP) for communicating with Edge AI Studio
    • Support for Accelerometer and Temperature sensors
    • Safety Qualification for SDL modules
    • SDL Integrated Example
    • Link Time Optimization (LTO) compiler option enabled for few examples
    • Seccfg program example in BANKMODE 0
    • Bank management program example
    • SSU multi core example to support 2 stage bootloaders
    • RTDMA 64-bit data access example
    • Digital Power Solutions examples
      • Grid fault
      • FET Temp Prediction
  • Examples
    • Edge AI
      • Accelerometer data capture with preview
      • Blower Imbalance
      • Fan Blade Anomaly Detection
      • Forecasting PMSM Rotor Temp
      • Generic Timeseries Anomaly Detection
      • Generic Timeseries Forecasting
      • Generic Timeseries Regression
      • HVAC Indoor Temp Forecast
      • Temp Data Capture
      • Torque Measurement
      • Washing Machine Load Weighing
    • Driverlib
      • Multicore
        • SSU example for 2 stage bootloaders
        • SSU example for 2 stage bootloaders without application certificate
        • IPC example for GPIO read on CPU3
      • Singlecore
        • Seccfg program example in BANKMODE 0
        • Bank management program example
        • RTDMA 64-bit data access example
    • Rtlibs
      • Power Measurements
      • SFRA
      • SPLL
      • Utilities
      • Datalog
      • Emavg
      • Rampgen
    • SDL
      • Integrated Example
    • Solution
      • Digital Power
      • Grid fault
      • FET Temp Prediction
  • Syscfg
    • SSU tool enhacements
    • Support for custom bootloader
    • Enable/Disable CPU3 certificate generation
    • Clocktree update based on Syscfg version 1.27
    • The SYSCLKDIV is fixed at 2
    • GPN variant database updated based on TI OTP spec version 2.5
    • EPWM6 is enabled for F29P32X variants
  • Libraries
    • Device Agent Protocol (DAP)
    • Accelerometer and Temp Sensor (tida_010997)
    • Updated Flash Lib (F29H85x_NWFlashAPI_v21.00.01.lib) corresponding to the updated FlashTech header.

What Is NOT Supported

  • Link Time Optimization (LTO) compiler option for all the libraries and examples
Note
The Source code included in SDK is developed as per TI Base Quality process and the below mentioned reports are included:
  • Misra-C report for SDK and SDL
  • Test Reports for SDK and SDL

Fixed Issues

Fixed Issues

Issue ID Issue Description
C29SDK-1305 CMPSS Blanking window Sysconfig Bug
C29SDK-1245 SysCtl delay function does not work as expected when SSU is enabled
C29SDK-1275 SSU Tool - CPU3 needs to be able to read CPU1 Flash APR
C29SDK-1098 XTAL clock configuration in SSUMODE2 creates NMI
C29SDK-1246 SSU Tool: Secure versus Unsecure Cross-Stack Calls
C29SDK-1110 SSU Tool: Memory region name changes not reflected in Load Memory options
C29SDK-1255 SSU tool: CommonCode APRs Secure Group gets appended with _COMMONCODE
C29SDK-1268 Incorrect linker cmd file for f29p32x for flash/ram
C29SDK-1258 SSU Tool - Cannot allocate dataAPR RW to CPA RAM
C29SDK-1252 SSU Tool: P58X and P32X GPN variants generate CPU3 seccfg
C29SDK-1114 SSU Tool: APR size change removes Customize APR selection
C29SDK-1106 SSU Tool: Sections using non-existent APRs silently fail
C29SDK-1164 Inline assembly function in sysctl.c causing issue during LTO
C29SDK-1181 Incorrect APR creation
C29SDK-1289 SSU Tool: Need ability to enable all of the peripherals
C29SDK-1292 SSU Tool: Removing all sections on CPU3 causes an error
C29SDK-1222 RTlib CRC doesn't support Result reflected and Final XOR
C29SDK-1293 SSU Tool: CPU3 can be given write access to CPU1 RAM
C29SDK-1310 For Timer2 module, when SYSCLK clock source is selected, pre-scale should be bypassed
C29SDK-1249 Common Code LINK - Generate Linker Errors
C29SDK-1168 Sysconfig incorrectly adds call to PMIC_configure() in board.c before FreeRTOS starts
C29SDK-1145 SSU Tool: Need errors for old APR references
C29SDK-1123 SSU Tool: Data RAM defaults to CDA instead of LDA
C29SDK-1302 SSU Tool: STACK1 APR in LDA causes FLASHCOVER_REGION APR Failure
C29SDK-1086 Missing support for MPU
C29SDK-1277 FreeRTOS overwrites Timer ISR created by DPL
C29SDK-1257 SSU Tool: EPWM_XLINK should not be part of peripheral list
C29SDK-1226 RWAIT of 1 needs to have Block Cache Disabled
C29SDK-1276 PLL SYSCLK should divide by 1, not 2
C29SDK-1279 CMPSS Sysconfig DF reset bug
C29SDK-1224 CLK settings are getting set after FlashInit()
C29SDK-1092 SECCFG: Update Owner Link
C29SDK-1102 Peripheral_frame_mapping.h should be same across all CPU projects in case of Multicore project
C29SDK-1103 Add LPOST and MPOST status check API's
C29SDK-1090 Missing ADC SOC trigger configuration for eCAP
C29SDK-1250 ESM High Priority Watchdog View is incorrect it should be enabled by default
C29SDK-1236 SSU Tool: RO APRs don't have Commoncode link API
C29SDK-1171 Invalid channels in sysconfig of P32x and H58x devices
C29SDK-1104 SysCfg doesn't load for epwm_ex1_cpu1_cpu3_framesel_multi project
C2000DL-874 SDL CMPSS: Loopback function skips part of test
C2000DL-875 SDL DAC & CMPSS: Error calculation issue
C2000DL-896 SDL_ECAP_init() hardcoded settings to be made configurable
C2000DL-930 SDL MEMSS, PIPE, SIC: Error aggregator CPU source calculation issue
C2000DL-931 SDL ESM: NMI workaround triggered for too many events
C2000DL-932 Remove SDL_ADC_setINLTrim and SDL_ADC_setOffsetTrim APIs from SDL_ADC_init()
C2000DL-935 SDL: Add ADC trim init to all examples that call SDL_ADC_init()
C2000DL-868 SDL_SIC_RTDMA_DW_emulateFault is failing for flash configuration
C2000DL-937 SDL_MEMSS_handleESMIntr won't handle interrupt without NMI workaround
C2000DL-943 SDL_MEMSS_testECCInjection issues
C2000DL-946 SDL ESM: Remove ECAT_LP_ERR
C2000DL-929 SDL ESM: Multiple issues with sdl_esm_mmrparity_example
C2000DL-928 SDL SIC: PIPE ECC self-test should disable interrupts
C2000DL-980 SDL_SYSCTL_checkMCD() needs to clear SDL_SYSCTL_mcdDetect flag
C2000DL-983 SDL CMPSS: Max CMPSS instance should be 12

Known Issues And Limitations

There are few limitations and known issues associated with this release

Limitations

Description Workaround
FreeRTOS: Support for task-specific FPU register saves has been removed. FPU registers are now always saved for all tasks. Any usage of vPortTaskUsesFPU() can be omitted.
Only Windows build is supported for the the Transfer examples. None.
SDL: The sdl_dcc_example has a dependency on a SYSCLK configured using a clock source of a 25 MHz X1 which is not available on some EVMs. To run the example, you will either need a newer version of the SOM (such as MCU144A-003) with X1 connected, or your own board with a similar external oscillator setup. Without this hardware dependency, you can update the .syscfg file with alternative SYSCLK settings and adjust the tests in the DCC_Test_UseCaseArray in sdl_dcc_example.h to use the 10 MHz INTOSC2 instead of XTAL or remove the XTAL test cases altogether.
Link Time Optimization (LTO) compiler option is enabled only for WADI examples. None.
SDL: Makefile build for 'integrated_example' is not supported. None.

Known Issues

Issue ID Issue Description Workaround
C2000DL-981 SDL: Some tests fail when .lib is built with -Og. By default the Debug and Release builds of the SDL library use -O1 and -O2 optimization levels respectively. If you try to rebuild them to -Og, you may see some test failures, so it is not recommended.
C2000DL-987 SDL: F29P32x integrated example calls unsupported functions. Comment out tests for buffered DAC and functions like SDL_LCM_enableLockstep() as they are not supported on F29P32x devices. In a future release, these will be filtered out.
C2000DL-993 SDL_ESM_SAFETYAGGR_enableEDCIntr (and disable) write incorrect bits Instead of using provided enum type, use an integer value for the instance parameter that will write to the correct field, such as 1 for SYSTEM instance, 2 for CPU1 instance, and so on.
CODEGEN-15386 Compiling code with LTO enabled and -O3 optimization level may fail with 'error: ran out of registers' error. Fix will be available in compiler ver 3.0.0.LTS.
C29SDK-1105 Migrating 'led_ex1_blinky' from SOM board to Launchpad board errors out in GPIO and JTAG syscfg. Clear error in GPIO and JTAG pinmux configurations.
Pull up for unbonded (without connection) GPIOs is not enabled. Below mentioned driverlib routine is provided which should be called in the application initialization sequence
  • BOOTROM_enablePullupUnbondedGpio()
  • The 'emulate_device_ex2_f29p32x' example is updated to include above mentioned function call

Compatibility Information

Module Description
Driverlib

The interface of the following clock configurations driver functions are modified

  • SysCtl_setClock
    • One new argument (oscClk) added
      • eg, SysCtl_setClock( SYSCTL_OSCSRC_OSC2, SYSCTL_PLL_ENABLE, SYSCTL_REFDIV_1, SYSCTL_IMULT_40, SYSCTL_ODIV_2, SYSCTL_SYSDIV_1, DCC1_BASE, DEVICE_OSCSRC_FREQ);
  • SysCtl_selectOscSource
    • Two new arguments (oscClk and dccBase) added
      • eg, SysCtl_selectOscSource(SYSCTL_OSCSRC_OSC1, DEVICE_OSCSRC_FREQ, DCC1_BASE);

SSU Tool Remove the following configurations from the project syscfg file if present
  • System_Security.LINK2.Link.codeAPRs = [{}];
  • System_Security.SECCFG_UPDATE_LINK = null;
  • System_Security.ZONE1_UPDATE_LINK = null;
  • System_Security.ZONE2_UPDATE_LINK = null;
  • System_Security.ZONE3_UPDATE_LINK = null;
SSU Tool If EPWM_XLINK is listed as one of the assigned options in the lines below, remove it:
  • System_Security.LINK*.periphs_ro
  • System_Security.LINK*.periphs_rw

Release Types

F29H85X-SDK releases follow a tiered support model with three release types: Early Adopter (EA), Short Term Support (STS), and Long Term Support (LTS). Each release type serves different customer needs and provides varying levels of support, quality assurance, and maintenance.

How to Identify Release Type

The release type for each F29H85X-SDK release can be identified through the following methods:

  • Release Notes Introduction Section: Every release note’s Introduction section will specify the release type (EA, STS, or LTS) for that particular release.

EA (Early Adopter)

Early Adopter releases are intended for customers who want early access to new features and capabilities before they are fully validated. These releases allow customers to evaluate new functionality and provide feedback during the development cycle.

Example Use Cases:

  • Early evaluation of new features
  • Proof-of-concept development
  • Providing feedback to the development team
  • Planning for future integration

STS (Short Term Support)

Short Term Support releases provide a stable platform with validated features suitable for development and integration activities. These releases offer improved quality assurance compared to EA releases but are not intended for production deployment.

Example Use Cases:

  • Development and integration activities
  • System validation and testing
  • Pre-production evaluation
  • Feature completeness verification

LTS (Long Term Support)

Long Term Support releases are production-ready releases that provide the highest level of quality assurance, safety certification support, and long-term maintenance. These releases are recommended for production deployment in automotive and safety-critical applications.

Example Use Cases:

  • Production deployment
  • Safety-critical applications
  • Automotive production systems
  • Applications requiring long-term stability and support

Release Type Comparison

Topic EA (Early Adopter) STS (Short Term Support) LTS (Long Term Support)
Quality Baseline Quality Baseline Quality (new features) Functional Safety (if applicable)
Testing Best Effort >95% pass >95% pass
Safety CSP NA NA Yes (if FSQ)
Safety Certification NA NA Yes (Internal / External)
Maintenance No No Will maintain until next LTS release
Bug Fix / Patch Release No Bugs that are prioritized will be fixed in the next release; no backporting to STS releases Bug fixes on the LTS maintenance branch will be prioritized based on the severity of the bug
Feature Addition Yes Yes New features will be added in an LTS release, but post LTS release, new features will not be backported to the LTS maintenance branch
Production Ready No Not recommended for Production Recommended for Production

Software Bill of Materials

Component Type Component Name Production or Reference Process Compliance Certification Distribution Comments
Documentation ${COM_TI_MCU_SDK_INSTALL_DIR}/docs/* Reference Baseline Quality No ti.com
Examples ${COM_TI_MCU_SDK_INSTALL_DIR}/examples/* Reference Demo Quality No ti.com
Drivers ${COM_TI_MCU_SDK_INSTALL_DIR}/source/* Reference Baseline Quality No ti.com
Tools ${COM_TI_MCU_SDK_INSTALL_DIR}/tools/* Reference Demo Quality No ti.com
Examples ${COM_TI_MCU_SDK_INSTALL_DIR}/solutions/digital_power/* Reference Demo Quality No ti.com

Dependencies

This release has dependency on the following tools.