AM273x MCU+ SDK  08.04.00
Release Notes 08.04.00

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 NO-RTOS 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
Syconfig support and flash driver redesign to enable new flash configuration OSPI
Optimized trigonometric function support on R5 core Common
McSPI Driver update for performance improvement McSPI
SBL support to configure R5 in lockstep or dualcore mode SBL
Simplified LwIP CPSW examples added for reference CPSW
CPSW Scatter-Gather and Interrupt pacing is enabled in enet driver and in referance example CPSW
CPSW driver memory footprint reduced by more than 40% CPSW
CPSW Layer-2 performance is benchmarked and added a reference example CPSW
CPSW driver support added for MDIO manual mode CPSW
CPSW ALE congurations are moved to SysConfig GUI CPSW
CPSW DSCP Priority mapping and Policer usecase is added in the CPSW example CPSW
Multi-core (R5) support added for CPSW driver CPSW

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 12.0.0
SysConfig R5F, C66x 1.13.0 build, build 2553
TI ARM CLANG R5F 2.1.1.LTS
TI C6000 Compiler C66x 8.3.12
FreeRTOS Kernel R5F, C66x 10.4.3
DSP LIB C66x 3.4.0.0

DSP LIB package is modified to fix the build in Linux environment from the base version dsplib_c66x_3_4_0_0

Attention
TI ARM CLANG 2.1.1.LTS is not part of CCS by default, Follow steps at TI CLANG Compiler Toolchain to install the compiler

Key Features

Experimental Features

Attention
Features listed below are early versions and should be considered as "experimental".
Users can evaluate the feature, however the feature is not fully tested at TI side.
TI would not support these feature on public e2e.
Experimental features will be enabled with limited examples and SW modules.
Feature Module
GUI for UART Uniflash Tool Bootloader

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, mutexes, timers, event groups. ROV views in CCS IDE, Task load measurement using FreeRTOS run time statistics APIs. -
FreeRTOS POSIX R5F, C66x NA pthread, queue, 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, safeRTOS, NORTOS Cache write back, invalidate, enable/disable -
Clock R5F, C66x YES FreeRTOS, safeRTOS, NORTOS Tick timer at user specified resolution, timeouts and delays -
CpuId R5F NA FreeRTOS, NORTOS Verify Core ID and Cluster ID that application is running -
CycleCounter R5F, C66x NA FreeRTOS, safeRTOS, NORTOS Measure CPU cycles using CPU specific internal counters -
Debug R5F, C66x YES FreeRTOS, safeRTOS, NORTOS Logging and assert to any combo of: UART, CCS, shared memory -
Heap R5F, C66x NA FreeRTOS, safeRTOS, NORTOS Create arbitrary heaps in user defined memory segments -
Hwi R5F, C66x YES FreeRTOS, safeRTOS, NORTOS Interrupt register, enable/disable/restore -
MPU R5F YES FreeRTOS, safeRTOS, NORTOS Setup MPU and control access to address space -
Semaphore R5F, C66x NA FreeRTOS, safeRTOS, NORTOS Binary, Counting Semaphore, recursive mutexes with timeout -
Task R5F, C66x NA FreeRTOS, safeRTOS Create, delete tasks -
Timer R5F, C66x YES FreeRTOS, safeRTOS, NORTOS Configure arbitrary timers -
Event R5F, C66x YES FreeRTOS, safeRTOS Setting, getting, clearing, and waiting of Event bits -
Queue R5F, C66x NA FreeRTOS, safeRTOS, NORTOS Enqueue, dequeue, status -

SOC Device Drivers

Peripheral Supported CPUs SysConfig Support DMA Supported Key features tested Key features not tested / NOT supported
ADCBUF R5F, C66x YES No Source selection, Set chirp thresholds, continuous mode, configure modes -
CBUFF R5F, C66x YES YES stream data over LVDS interface -
CRC R5F, C66x YES NA Two channels, 8, 16, 32 and 64 bit data size, CPU mode -
CSI-RX R5F, C66x YES NA Setup complexio, dphy, common and context settings, event callbacks -
ECAP R5F, C66x YES NA Frequency, Duty cycle, interrupt mode PWM mode not tested
EDMA R5F, C66x YES NA Basic memory copy, DMA/QDMA channels, Interrupt/Polled, Manual/Event trigger, Chaining -
EPWM R5F YES NA Frequency, Duty cycle, interrupt mode Tripzone, Deadband and Chopper module not tested
ESM R5F, C66x YES NA Group and Error number selection, Tested ESM notifier with watchdog module -
GPADC R5F, C66x YES NA 10-bit ADC, Tested single/multiple buffer and on board temperature sensor read -
GPIO R5F, C66x YES NA Basic input/output, GPIO as interrupt -
HWA R5F, C66x YES YES FFT, CFAR, compression/decompression and local maxima modules, Interrupt/Polled, Manual/DMA trigger -
I2C R5F, C66x YES No 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 NA Low latency IPC between RTOS/NORTOS CPUs -
IPC Rpmsg R5F, C66x YES NA RPMessage protocol based IPC for all R5F, C66x running NORTOS/FreeRTOS -
MCAN R5F YES NA RX, TX, interrupt and polling mode -
MIBSPI R5F, C66x YES YES Master/Slave mode, basic read/write, Interrupt/Polled, icount enable/disable, CPU/DMA mode -
MCASP R5F, C66x YES YES Master mode, transmit/receive, Interrupt/DMA, serializer config -
Pinmux R5F, C66x YES NA Tested with multiple peripheral pinmuxes -
QSPI R5F YES YES Read direct, Write indirect, Read/Write commands Interrupt mode not supported, Dual and Quad writes are not supported
SOC R5F, C66x YES NA Lock/unlock MMRs, get CPU clock, CPU name, clock enable, set frequency, SW Warm Reset, Address Translation -
UART R5F, C66x YES YES Basic read/write, polling, interrupt mode, CPU/DMA mode -
WATCHDOG R5F, C66x YES NA 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/Dual Core) and C66x core boot. RPRC, multi-core image format, Pll configuration. -

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, scatter-gather Other LwIP features, more robustness tests pending
Ethernet driver (ENET) R5F NO FreeRTOS Ethernet as port using CPSW; MAC loopback and PHY loopback, interrupt pacing, MDIO Manual Mode Ethernet as switch

Fixed Issues

ID Head Line Module Applicable Releases

Resolution/Comments

MCUSDK-4190 Fixed MAC address is hard-coded for CPDMA devices, this will cause issue when two boards are connected in the same network Enet 8.2.0 onwards Fixed
MCUSDK-6207 A53x, Linux references in documentation Common 8.3.0 onwards

Fixed

Known Issues

ID Head Line Module Applicable Releases

Workaround

MCUSDK-3897 MCASP Audio playback demo does not work in interrupt mode MCASP 8.03.00 onwards Use the McASP in DMA mode
MCUSDK-7811 CPSW: Ethernet Packet corruption occurs if CPDMA fetches a packet which spans across memory banks CPSW 8.03.00 onwards Ensure from application side single ethernet packet does not span across memory banks
MCUSDK-5873 FIQ handler data missing in HwIP_armv7r_handlers_nortos_asm.S file DPL 8.03.00 onwards

None

MCUSDK-3899 MIBSPI non-DMA mode transfer doesn't complete when used in mmWaveSDK MIBSPI 8.00.01 None. Issue is not seen in driver unit test
MCUSDK-7363 [enet] Documentation of file name incorrect in sysconfig generated file Enet 8.03.00 onwards

None

Limitations

ID Head Line Module Reported in Release Workaround
PDK-8404 QSPI test failing at 80 Mhz QSPI 8.00.01 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.

Compiler Options

Module Affected API Change Additional Remarks
- - Enabled copmpiler option -Oz and -flto for release mode build These option are enabled for Code size and performance optimization

SOC Device Drivers

Module Affected API Change Additional Remarks
SBL Bootloader_socCpuPowerOnReset Added argument to configure the R5 sub system to lockstep or dualcore mode

Function Bootloader_socCpuPowerOnReset() requires 2 arguments, cpuID and cpu operating mode