AM273x MCU+ SDK  08.02.00
Release Notes 08.01.01

Attention
Also refer to individual module pages for more details on each feature, unsupported features, important usage guidelines.
Note
The examples will show usage of SW modules and APIs on a specific CPU instance and OS combination.
Unless noted otherwise, the SW modules would work in both FreeRTOS and NORTOS environment.
Unless noted otherwise, the SW modules would work on any of the CPU present on the SOC.
Unless noted otherwise, the SW modules would work on all supported EVMs

New in this Release

Feature Module
R5F (No-RTOS, FreeRTOS), C66x (No-RTOS, FreeRTOS), CPU/OS
LwIP with ethernet driver (ENET) for CPSW LwIP, ENET
UART, RTI (Timer), EDMA, EPWM, CBUFF Drivers
IPC, HWA, CSI2-RX, CRC, GPIO, MIBSPI Drivers
QSPI, Flash writer, MCAN, I2C , ESM, Watchdog, GPADC Drivers
ADCBUF (AWR294x Only) Drivers
ECAP (AM273x Only) Drivers
SBL booting R5F and C66x Bootloader

Device and Validation Information

SOC Supported CPUs EVM Host PC
AM273x R5F, C66x AM273x GP EVM (referred to as am273x-evm in code) Windows 10 64b or Ubuntu 18.04 64b

Tools, Compiler and Other Open Source SW Module Information

Tools / SW module Supported CPUs Version
Code Composer Studio R5F, C66x 11.1.0
SysConfig R5F, C66x 1.11.0 build, build 2225
TI ARM CLANG R5F 1.3.0.LTS
TI C6000 Compiler C66x 8.3.11
FreeRTOS Kernel R5F, C66x 10.4.3

Key Features

OS Kernel

OS Supported CPUs SysConfig Support Key features tested Key features not tested / NOT supported
FreeRTOS Kernel R5F, C66x NA Task, Task notification, interrupts, semaphores, mutexs, timers, event groups. ROV views in CCS IDE, Task load measurement using FreeRTOS run time statistics APIs. -
FreeRTOS POSIX R5F, C66x NA pthread, mqueue, semaphore, clock -
NO RTOS R5F, C66x NA See Driver Porting Layer (DPL) below -

Driver Porting Layer (DPL)

Module Supported CPUs SysConfig Support OS support Key features tested Key features not tested / NOT supported
Cache R5F, C66x YES FreeRTOS, NORTOS Cache write back, invalidate, enable/disable -
Clock R5F, C66x YES FreeRTOS, NORTOS Tick timer at user specified resolution, timeouts and delays -
CycleCounter R5F, C66x NA FreeRTOS, NORTOS Measure CPU cycles using CPU specific internal counters -
Debug R5F, C66x YES FreeRTOS, NORTOS Logging and assert to any combo of: UART, CCS, shared memory -
Heap R5F, C66x NA FreeRTOS, NORTOS Create arbitrary heaps in user defined memory segments -
Hwi R5F, C66x YES FreeRTOS, NORTOS Interrupt register, enable/disable/restore -
MPU R5F YES FreeRTOS, NORTOS Setup MPU and control access to address space -
Semaphore R5F, C66x NA FreeRTOS, NORTOS Binary, Counting Semaphore, recursive mutexs with timeout -
Task R5F, C66x NA FreeRTOS Create, delete tasks -
Timer R5F, C66x YES FreeRTOS, NORTOS Configure arbitrary timers -
Event R5F, C66x YES FreeRTOS Setting, getting, clearing, and waiting of Event bits -

SOC Device Drivers

Peripheral Supported CPUs SysConfig Support Key features tested Key features not tested / NOT supported
ADCBUF R5F, C66x YES Source selection, Set chirp thresholds, continuous mode, configure modes -
CBUFF R5F, C66x YES stream data over LVDS interface -
CRC R5F, C66x YES Two channels, 8, 16, 32 and 64 bit data size, CPU mode -
CSI-RX R5F, C66x YES Setup complexio, dphy, common and context settings, event callbacks -
ECAP R5F, C66x YES Frequency, Duty cycle, interrupt mode PWM mode not tested
EDMA R5F, C66x YES Basic memory copy, DMA/QDMA channels, Interrupt/Polled, Manual/Event trigger, Chaining -
EPWM R5F YES Frequency, Duty cycle, interrupt mode Tripzone, Deadband and Chopper module not tested
ESM R5F, C66x YES Group and Error number selection, Tested ESM notifier with watchdog module -
GPADC R5F, C66x YES 10-bit ADC, Tested single/multiple buffer and on board temperature sensor read -
GPIO R5F, C66x YES Basic input/output, GPIO as interrupt -
HWA R5F, C66x YES FFT, CFAR, compression/decompression and local maxima modules, Interrupt/Polled, Manual/DMA trigger -
I2C R5F, C66x YES Master mode, basic read/write, polling and interrupt mode Slave mode not supported. Driver not tested from C66x due to EVM limitations
IPC Notify R5F, C66x YES Low latency IPC between RTOS/NORTOS CPUs -
IPC Rpmsg R5F, C66x YES RPMessage protocol based IPC for all R5F, C66x running NORTOS/FreeRTOS -
MCAN R5F YES RX, TX, interrupt and polling mode -
MIBSPI R5F, C66x YES Master/Slave mode, basic read/write, Interrupt/Polled, icount enable/disable, CPU/DMA mode -
Pinmux R5F, C66x YES Tested with multiple peripheral pinmuxes -
QSPI R5F YES Read direct, Write indirect, Read/Write commands Interrupt mode not supported, Dual and Quad writes are not supported
SOC R5F, C66x YES Lock/unlock MMRs, get CPU clock, CPU name, clock enable, set frequency -
UART R5F, C66x YES Basic read/write, polling, interrupt mode, CPU/DMA mode -
WATCHDOG R5F, C66x YES Window size and Expiry time selections, Reset mode, Digital windowed -

Secondary Bootloader (SBL)

Module Supported CPUs OS support Key features tested Key features not tested / NOT supported
Bootloader R5FSS0-0 NORTOS Boot modes: QSPI, UART. R5F (Lockstep) and C66x core boot. RPRC, multi-core image format, Pll configuration. Dual Core R5 boot.

Board Device Drivers

Peripheral Supported CPUs SysConfig Support Key features tested Key features not tested
EEPROM R5F YES I2C based EEPROM -
Flash R5F YES QSPI based flash All vendor flash types not tested
LED R5F, C66x YES GPIO based LED control -

Networking

Module Supported CPUs SysConfig Support OS Support Key features tested Key features not tested
LwIP R5F NO FreeRTOS TCP/UDP IP networking stack, DHCP, ping, TCP iperf, TCP/UDP IP Other LwIP features, performance and memory optimizations pending, more robustness tests pending
Ethernet driver (ENET) R5F NO FreeRTOS Ethernet as port using CPSW; MAC loopback and PHY loopback Ethernet as switch

Fixed Issues

ID Head Line Module Applicable Releases Applicable Devices Resolution/Comments
MCUSDK-2301 Correct main task name from frertos_main to freertos_main Common 8.01.00 AM273x, AWR294x Fixed
MCUSDK-2244 Enable Enet documentation Enet 8.01.00 AM273x, AWR294x Fixed
MCUSDK-2191 CPSW example doesn't work with SBL CPSW 8.01.00 AM273x, AWR294x Fixed
MCUSDK-2151 I2C Probe does not display slave devices correctly I2C 8.01.00 AM273x, AWR294x Fixed
MCUSDK-2184 MCAN External Loopback Interrupt Mode Sample Application fails MCAN 8.00.02 AWR294x Fixed
MCUSDK-2176 MIBSPI Slave Read Fail MIBSPI 8.01.00 AWR294x Fixed

Known Issues

ID Head Line Module Applicable Releases Applicable Devices Workaround
MCUSDK-1889 HWA: Context switch tests fails from C66x HWA 8.00.01 AWR294x None
MCUSDK-1996 SBL: uniflash does not work if uart is configured in interrupt mode SBL 8.00.01 AM273x, AWR294x Use uart in polled mode
MCUSDK-2037 MIBSPI: Observing issues with SPI communication on Two-Chip cascade board MIBSPI 8.00.01 AM273x None. Issue is not seen when ccs log is enabled in the application.
MCUSDK-2044 ADCBUF: Continuous Mode Test Fails in sbl ADCBUF 8.00.02 AWR294x None
MCUSDK-2183 Streaming of data over Ethernet interface not stable ETHERNET 8.01.00 AM273x, AWR294x None
MCUSDK-2337 IPC RPMSG regression Fails with infinite timeout in Release Mode ETHERNET 8.01.00 AM273x use timeout value instead of SystemP_WAIT_FOREVER in RPMessage_send()

Limitations

ID Head Line Module Reported in Release Applicable Devices Workaround
PDK-8404 QSPI test failing at 80 Mhz QSPI 8.00.01 AM273x, AWR294x QSPI driver works at 40 Mhz

Upgrade and Compatibility Information

Attention
When migrating from Processor SDK RTOS, see Migration Guides for more details

This section lists changes which could affect user applications developed using older SDK versions. Read this carefully to see if you need to do any changes in your existing application when migrating to this SDK version relative to previous SDK version. Also refer to older SDK version release notes to see changes in earlier SDKs.

API Name Update

Module Old API New API Additional Remarks
WatchDog Watchdog_Params_init Watchdog_paramsInit -
CRC (API names) CRC* (eg CRCReadStaticRegs ) CRC_* (eg CRC_readStaticRegs ) All function name are updated to follow (Module)_(function) where first character after '_' is lowercase
CRC (Structure/Enum names) crc* (eg crcSignature_t ) CRC_* (eg CRC_Signature ) All structure name are updated to follow (Module)_(structure) where first character after '_' is uppercase
EDMA (API names) EDMA3* (eg EDMA3GetErrIntrStatus ) EDMA_* (eg EDMA_getErrIntrStatus ) All function name are updated to follow (Module)_(function) where first character after '_' is lowercase
EDMA EDMA3* (eg EDMA3_FIFO_WIDTH_8BIT ) EDMA* (eg EDMA_FIFO_WIDTH_8BIT ) -