SimpleLink Low Power F3 Core SDK 9.21.00.28 Release Notes

Table of Contents

Introduction

This is a Production (GA) release of the Core SDK 9.21.00.28 for Low Power F3 devices.

Documentation

Open the Documentation Overview file in the docs/ folder for a full list of documentation.

What’s New

A summary of changes made in each release of this product can be found in the Core SDK Changelog.

Note that the Core SDK follows similar-but-not-always-aligned versioning with the LPF3 SDK. The Core SDK feeds multiple other SDKs, and as such, sometimes LPF3 SDK users will see multiple Core SDK version jumps between releases.

The following table helps users identify which Core SDK was included in each LPF3 SDK, and therefore which Changelog entries to review. Generally speaking larger M.mm version segments will contain the same features/fixes as smaller M.mm versions.

LPF3 SDK Version Core SDK Version Notes
7.10.00 7.11.01
7.20.00 7.20.00
7.20.01 7.20.01
7.40.00 7.40.02
8.10.00 8.10.01 Initial CCS Theia support
8.10.01 8.10.01
8.20.00 8.10.03
8.40.00 8.40.00 GCC 12
RNG health test
9.10.00 9.10.00 LTO enabled in all software libraries
VCE->APU renaming
Python version update
9.20.00 9.21.00

Note: the Versioning section below contains more details on the versioning schema used.

Upgrade and Compatibility Information

Host Support

See the SDK release notes for a description of which host operating systems are supported in this release.

Dependencies

See the SDK release notes for a description of which components and tools are required to work with this product.

Device Support

See the SDK release notes for a list of TI devices that are supported in this product.

Validation Information

The Core SDK was validated with the following components:

New Features

ID Summary
TIUTILS-167 Move Log level check into LogSink
TIDRIVERS-7687 Update UART2LPF3 to use driverlib API
TIDRIVERS-7626 Add device-support for CC2755R20
TIDRIVERS-7611 Add device-support for CC2765R10-Q1
TIDRIVERS-7523 Ensure CAN-FD configuration is set to initialization mode when closing driver
TIDRIVERS-7497 CAN: Implement workaround for errata SYS_211
TIDRIVERS-7492 Enable Secure Debug Manager in SysConfig for CC27XX Family
TIDRIVERS-7448 APU: List calling context limitations on all its public API functions
TIDRIVERS-7442 Enable the debug authentication option in Sysconfig for CC27xx devices
TIDRIVERS-7431 Update ClockPLPF3 implementation to use SysTimer driverlib module
TIDRIVERS-7403 Add CC2340R5MODA device support
TIDRIVERS-7364 Add TFM secure boot example support to boards.js for CC27xx
TIDRIVERS-7359 Store/restore SCB.AIRCR S/NS registers when entering/existing standby
TIDRIVERS-7357 FreeRTOS AppHooks: Remove toolchain-specific methods to indicate weak symbols
TIDRIVERS-7321 [CC27XX] Create .keystore section in GCC linker files
TIDRIVERS-7293 NVS section used in GCC linker file
TIDRIVERS-7286 Add LP-EM-CC2755P20 launchpad
TIDRIVERS-7284 Enable 64 DIOs in LPF3 GPIO driver
TIDRIVERS-7270 SysConfig 1.24: Device CC2340R5RHB is renamed to CC2340R5RHBQ1
TIDRIVERS-7264 Add LP_EM_CC2340R53MODA board support
TIDRIVERS-7253 Make Display SysConfig module lock the UART configuration it depends on
TIDRIVERS-7174 Integrate use of driverlib with updated folder structure to support CC27XXX20 devices
TIDRIVERS-7161 Improve FreeRTOS tick suppression in standby policy function
TIDRIVERS-7153 SPILPF3: Review and update the documentation in SPILPF3.h
TIDRIVERS-7123 CC27XX: Add AUX tempsense driver
TIDRIVERS-7114 CC27XX: Add S/NS support for Temperature and BatteryMonitor drivers
TIDRIVERS-6776 Add LP-EM-CC2755P10 board support
TIDRIVERS-6710 Reduce likelihood of incorrect ADC samples, create sample conditioning helper functions
TIDRIVERS-6667 Add Theia ROV support to display LogSinkBuf objects
TIDRIVERS-6609 [CC27XX] Change I2S driver to use AFOSC
TIDRIVERS-6489 Add all available LRFD clocks as power resources to CC23X0 and CC27XX
TIDRIVERS-6467 [LPF3] Disable Flash LDO in idle
TIDRIVERS-6444 Implement S/NS interface for CC27xx Flash driver
LPRFXXWARE-1121 [LPF3]: Create IOC driverlib module and update GPIO module to support 32+ GPIOs
LPRFXXWARE-1110 Add device-support for CC2755R20
LPRFXXWARE-1099 Port HAPI driverlib module to CC23X1
LPRFXXWARE-1098 Port debug driverlib module to CC23X1
LPRFXXWARE-1097 Port PMCTL driverlib module to CC23X1
LPRFXXWARE-1096 Port RTC driverlib module to CC23X1
LPRFXXWARE-1093 Port SysTimer driverlib module to CC23X1
LPRFXXWARE-1091 Port Interrupt driverlib module to CC23X1
LPRFXXWARE-1089 Port EVTSVT driverlib module to CC23X1
LPRFXXWARE-1086 Set up initial infrastructure for CC23x1
LPRFXXWARE-1081 CLKCTL: Fix compilation warning caused by missing DRIVERLIB_DEBUG ifdef
LPRFXXWARE-1079 CC27xx: Add missing ‘clobbers’ to the inlined assembly in HWREG_READ_LRF macros
LPRFXXWARE-1055 Create SysTimer driverlib module for LPF3 devices
LPRFXXWARE-1053 Update FCFG layout
LPRFXXWARE-1001 CC27XXX20: Create initial release
LPRFXXWARE-971 Distribute SVD files as part of driverlib
LPRFXXWARE-906 CPUDelay: Simplify by making GCC use the same implementation as TICLANG
LPRFXXWARE-880 CC23xx/CC27xx/CC283x: Inconsistent acronym capitalization in function names
LPRFSEC-256 Enable usage of hash length > curve length in ECDSA Driver
LPRFSEC-231 Add LAES support for key blobs for AES-CCM
LPRFSEC-229 PSA APIs accept unaligned addresses
LPRFSEC-215 Unenforce psa_set_key_bits() before psa_import_key()
LPRFSEC-212 Support concurrent PSA drivers for non-AES + AESECB
LPRFSEC-208 Remove dependency on KeyStore&mbedTLS headers from crypto driver headers
LPRFSEC-202 Update CC35XX driverlib macro usage
LPRFSEC-201 Allow creation of HSM Asset Store keys without key ID input
LPRFSEC-200 Move HSMXXF3_accessSemaphore to drivers
LPRFSEC-195 Rename HSMLPF3_provisionHUK() to HSMXXF3_provisionHUK()
LPRFSEC-194 Enable various mbedTLS SW Crypto algorithms via PSA
LPRFSEC-193 Reduce KeyStore DRAM usage
LPRFSEC-185 Port TI PSA Crypto Layer for mbedTLS 3.6.3 to CC27XX
LPRFSEC-180 Port tfm_enabled PSA Crypto to use mbedTLS and TI PSA layer
LPRFSEC-178 Improve CMake build speed
LPRFSEC-168 Add PSA Crypto examples for TF-M
LPRFSEC-161 Add support for tfm_get_version()
LPRFSEC-155 Update to support driverlib with CC27xx 1M/2M
LPRFSEC-154 Remove SysConfig-generated KeyStore defines for TFM-enabled builds
LPRFSEC-153 Add example for PSA attestation for CC27xx
LPRFSEC-150 Move FLIH functions from PSACrypto_s.c to crypto_sp_interrupts.c for CC27xx
LPRFSEC-149 Add system driver init to crypto partition for CC27xx
LPRFSEC-107 Enable tfm_empty example for CC27xx
LPRFSEC-90 Add example project for PSA Sign and Verify APIs
LPRFSEC-82 Allocate AES DMA channels and DMA Control Tables entries using SysConfig
LPRFSEC-81 Add TFM support for LPF3 HSM ECC params
LPRFSEC-66 Update psa_generate_key to support ECC keys
LPRFSEC-43 Implement IAK generation during PSA Crypto init
LPRFSEC-13 Add configurable ITS start address
LPRFSEC-11 Add PSA Crypto NS client interface to CC27xx driver library build
LPRFSEC-8 Implement Secure service and Nonsecure interface for PSA Crypto API for CC27xx
HSM_DDK-107 Remove enforcement of key_bits in key creation besides generate_key()
HSM_DDK-102 Enable creation of Asset Store keys w/out key ID input
FREERTOS-49 Display hexadecimal formatted addresses for tasks in other ROV modules
FREERTOS-47 Clarify ROV Task BlockedOn reason when Queue object tracking is disabled

Fixed Issues

ID Summary
TIUTILS-180 tilogger tool fails due to deprecated dependency (setuptools)
TIUTILS-165 tilogger tool fails due to deprecated dependency (click)
TIUTILS-158 Log.h module Fails to link when used in C++ context
TIRTOS-2256 SysConfig invocation in IAR is incorrect
TIDRIVERS-7793 Fix links in CC2340R5 WCSP and Q1 board.html files
TIDRIVERS-7792 Fix link in CC2340R53 board.html
TIDRIVERS-7743 Remove preliminary warning in APU driver
TIDRIVERS-7714 Incorrect Result Size Calculation in APU Matrix Multiplication
TIDRIVERS-7698 [rov_theia] Exception view requires await to ensure register fetch happens in time
TIDRIVERS-7633 Missing semaphore destruct in CANCC27XX_close
TIDRIVERS-7542 Race condition can cause erroneous message lost when handling Rx FIFO in CAN driver
TIDRIVERS-7434 Secure Boot post-build step incompatible with Linux
TIDRIVERS-7428 CC27xx SPI driver shall use <= 3/4 FIFO level for DMA burst mode for Tx Transfer
TIDRIVERS-7427 APU driver doesn't function properly after standby
TIDRIVERS-7410 [CC27xx] APU bus fault when mixing pointers inside and outside APU
TIDRIVERS-7409 CC2340R5YBG incorrect SRAM size
TIDRIVERS-7404 exception sysconfig : can't config busFault and usageFault custom handlers
TIDRIVERS-7396 Input buffer is not disabled when DIO is used for analog function
TIDRIVERS-7379 Typo in PowerLPF3_PERIPH_LFRD_* power resource names (LFRD should be LRFD)
TIDRIVERS-7362 S/NS power driver is checking pending S and pending NS interrupts, but the field used is not banked.
TIDRIVERS-7361 S/NS standby policy can enter standby while a NS interrupt is pending
TIDRIVERS-7162 UART2: Remove preliminary API warning
TIDRIVERS-7095 Fix CC27XX HwiP priority availability
TIDRIVERS-7087 GPIO PULL configuration does not work for outputs in sysconfig
TIDRIVERS-6928 Spurious EOT handling in Interrupt Handler Causes Long “busy” Wait and Incorrect Event Callback Behavior
TIDRIVERS-6925 Incorrect fixed-point arithmetic in Temperature driver
TIDRIVERS-6674 [CC35XX] UART receive operation can miss bytes
TIDRIVERS-4959 SysConfig ConfigDoc.html generation broken
LPRFXXWARE-1126 Add API to read out FCFG MAC address
LPRFXXWARE-1103 CC27XXX20 hapi.h does not include all 4 banks
LPRFXXWARE-1069 debug.h files are missing C-binding
LPRFSEC-250 PSA EDDSA+AES CBC,CCM,GCM,CMAC,CTR lack concurrent operation support
LPRFSEC-243 PSA memory leaks after concurrent operation support
LPRFSEC-219 psa_xxx_abort() fails before any call to psa_xxx_setup()
LPRFSEC-216 ECDSA verification fails with PSA_ALG_ECDSA_ANY
LPRFSEC-177 Disabling ECDSA and SHA2 for TF-M build causing build error
LPRFSEC-151 Fix set and release Power constraint for RNG, TRNG drivers
LPRFSEC-140 Curve25519 order is incorrect
LPRFSEC-109 Update links for Sysconfig Configuration Options
FREERTOS-48 ROV Task module does not find blocked upon kernel object
FREERTOS-8 Tasks view in ROV for FreeRTOS does not show if a task is blocked on a semaphore or mutex

Known Issues

ID Summary
TIDRIVERS-7475 I2S driver should not be used simultaneously with CAN or APU driver
TIDRIVERS-7416 The Power driver does not handle SysTimer channel 5 for CC27XX
TIDRIVERS-7244 Changing the muxing on an IO can cause glitches under some conditions
TIDRIVERS-7234 FPU registers not saved/restored around standby for NoRTOS/CM33
TIDRIVERS-7016 AESCCM/AESGCM driver do not support segmented finalize with no input when using HSM engine for CC27XX devices
TIDRIVERS-6863 JSON library unstable for gcc 12.3
TIDRIVERS-6674 [CC35XX] UART receive operation can miss bytes

Customer Support

Versioning

This product’s version follows a version format, M.mm.pp.bb, where M is a single digit Major number, mm is 2 digit minor number, pp is a 2 digit patch number, and bb is an unrestricted set of digits used as an incrementing build counter.

Note that sometimes documentation will exclude the bb build segment as during development it’s often unknown what the final build number will be(!), and external releases will all have a unique M.mm.pp.

Prior Release Changes

A summary of changes made in previous releases of this product can be found in the product Change Log.