- 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 explicitly noted otherwise, the SW modules would work in both FreeRTOS and no-RTOS environment.
Device and Validation Information
SOC | Supported CPUs | EVM | Host PC |
AM62P | MCU R5F, WKUP R5F | SK-AM62P-LP EVM (referred to as am62px-sk in code) | Windows 10 64b or Ubuntu 22.04 64b |
Features Added in This Release
Feature | Module |
ECDSA support on SBL | SBL |
Optimizations on ethfw init time | EthFW |
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 |
Ethernet traffic sharing accross multiple cores, called Ethernet Firmware | Networking |
Dependent Tools and Compiler Information
- Attention
- It is recommended to use the TIFS version provided with the release for ensuring compatibility between TIFS and device manager. Using the TIFS from different MCU+SDK release is not recommended and may cause TIFS/ DM functionality to break.
Tools/Components | Supported CPUs | Version |
Code Composer Studio | MCU-R5F, WKUP-R5F | 20.2.0 |
SysConfig | MCU-R5F, WKUP-R5F | 1.24.0, build 4150 |
TI ARM CLANG | MCU-R5F, WKUP-R5F | 4.0.1.LTS |
GCC AARCH64 | A53 | 9.2-2019.12 |
FreeRTOS Kernel | MCU-R5F, WKUP-R5F | 11.1.0 |
SDK Components
SYSFW / TIFS
Version | 11.01.05d |
Release Notes | LINK |
User Guide | LINK |
Key Features
OS Kernel
OS | Supported CPUs | SysConfig Support |
FreeRTOS Kernel | MCU-R5F, WKUP-R5F | NA |
FreeRTOS POSIX | MCU-R5F | NA |
No RTOS | MCU-R5F, WKUP-R5F | NA |
Driver Porting Layer (DPL)
Module | Supported CPUs | SysConfig Support | OS support |
Address Translate | MCU-R5F, WKUP-R5F | Yes | FreeRTOS, NORTOS |
Cache | MCU-R5F, WKUP-R5F | Yes | FreeRTOS, NORTOS |
Clock | MCU-R5F, WKUP-R5F | Yes | FreeRTOS, NORTOS |
CycleCounter | MCU-R5F, WKUP-R5F | NA | FreeRTOS, NORTOS |
Debug | MCU-R5F, WKUP-R5F | Yes | FreeRTOS, NORTOS |
Heap | MCU-R5F, WKUP-R5F | NA | FreeRTOS, NORTOS |
Hwi | MCU-R5F, WKUP-R5F | Yes | FreeRTOS, NORTOS |
MPU | MCU-R5F, WKUP-R5F | Yes | FreeRTOS, NORTOS |
Semaphore | MCU-R5F, WKUP-R5F | NA | FreeRTOS, NORTOS |
Task | MCU-R5F, WKUP-R5F | NA | FreeRTOS |
Timer | MCU-R5F, WKUP-R5F | Yes | FreeRTOS, NORTOS |
Secondary Bootloader (SBL)
SBL Mode | Supported CPUs | SysConfig Support | PHY Support | DMA Support | OS support |
OSPI NOR | WKUP-R5F | Yes | Yes | Yes | NORTOS |
EMMC | WKUP-R5F | Yes | NA | NA | NORTOS |
UART | WKUP-R5F | Yes | NA | No | NORTOS |
SDL
SDL Module | Supported CPUs | SysConfig Support |
MCRC | MCU-R5F | No |
ESM | MCU-R5F | No |
VTM | MCU-R5F | No |
DCC | MCU-R5F | No |
ECC | MCU-R5F | No |
RTI | MCU-R5F | No |
POK | MCU-R5F | No |
STOG | MCU-R5F | No |
MTOG | MCU-R5F | No |
PBIST | MCU-R5F | No |
LBIST | MCU-R5F | No |
ROM_CHECKSUM | MCU-R5F | No |
Networking
Module | Supported CPUs | SysConfig Support | OS Support | Key features tested | Key features not tested |
TSN | WKUP-R5F | NO | FreeRTOS | gPTP IEEE 802.1 AS-2020 compliant gPTP stack, End Nodes and Bridge mode support, YANG data model configuration | Multi-Clock Domain |
LwIP | WKUP-R5F | YES | FreeRTOS | TCP/UDP IP networking stack with and without checksum offload enabled, TCP/UDP IP networking stack with server and client functionality, basic Socket APIs, netconn APIs and raw APIs, DHCP, ping, TCP iperf, scatter-gather, DSCP priority mapping, LwIP bridge, shared memory driver | Other LwIP features |
Ethernet driver (ENET) | WKUP-R5F | YES | FreeRTOS | Ethernet as port using CPSW, MAC loopback and PHY loopback, Layer 2 MAC, Packet Timestamping, CPSW Switch, Policer and Classifier, MDIO Manual Mode, CBS (IEEE 802.1Qav) on CPSW, IET (IEEE 802.1Qbu) on CPSW, Strapped PHY (Early Ethernet), cut through switch on CPSW | RMII mode |
SOC Device Drivers
- Note
- See the updated MCASP usage guidelines in MCASP for changes in MCASP driver
Peripheral | Domain | Supported CPUs | SysConfig Support |
DDR | Main | WKUP-R5F | Yes |
ECAP | Main | MCU-R5F | Yes |
EPWM | Main | MCU-R5F, WKUP-R5F | Yes |
DSS | Main | WKUP-R5F | Yes |
GPIO | MCU | MCU-R5F, WKUP-R5F | Yes |
Main | MCU-R5F, WKUP-R5F | Yes |
I2C | Main | MCU-R5F, WKUP-R5F | Yes |
MCU | MCU-R5F, WKUP-R5F | Yes |
Wakeup | MCU-R5F, WKUP-R5F | Yes |
IPC | Main | MCU-R5F, WKUP-R5F | Yes |
MCAN | MCU | MCU-R5F | Yes |
MCASP | Main | WKUP-R5F | Yes |
MCSPI | Main | MCU-R5F, WKUP-R5F | Yes |
MCU | MCU-R5F, WKUP-R5F | Yes |
Pinmux | Main | MCU-R5F, WKUP-R5F | Yes |
MCU | MCU-R5F, WKUP-R5F | Yes |
Wakeup | MCU-R5F, WKUP-R5F | Yes |
SOC | NA | MCU-R5F, WKUP-R5F | Yes |
SCIClient | NA | MCU-R5F, WKUP-R5F | Yes |
UART | Main | MCU-R5F, WKUP-R5F | Yes |
MCU | MCU-R5F, WKUP-R5F | Yes |
Wakeup | WKUP-R5F | Yes |
Fixed Issues
ID | Head Line | Module | Applicable Releases |
EXT_SITMPUSW-155 | eMMC Driver Error Recovery Recursion can lead to System Crashes | eMMC | 11.00.00 |
EXT_SITMPUSW-153 | eMMC Driver Error Interrupt Flags accessed in Wrong Register | eMMC | 09.01.00 |
EXT_SITMPUSW-110 | eMMC Init Code Missing DLL Register Settings needed for Initial Legacy SDR Mode Phase | eMMC | 09.01.00 |
EXT_SITMPUSW-113 | eMMC PHY I/O Calibration not getting executed during eMMC boot | eMMC | 09.01.00 |
EXT_SITMPUSW-125 | MMCSD driver uses infinite loop instead of timeout for checking fields of PRESENTSTATE register | eMMC | 09.01.00 |
EXT_SITMPUSW-123 | MMCSD driver does not follow the SWITCH command sequence correctly | eMMC | 09.01.00 |
EXT_SITMPUSW-84 | MMCSD error recovery sequence isn't implemented correctly | eMMC | 10.01.00 |
EXT_SITMPUSW-156 | Sciserver: gSecHeaderSizeWords variable is not thread safe | SCI Server | 09.01.00 |
EXT_SITMPUSW-157 | gMemBootloaderConfig in the bootloader driver is not thread safe | SBL | 09.01.00 |
EXT_SITMPUSW-158 | OSPI_flashExecCmd has a couple of checks where the code may get stuck | OSPI | 09.01.00 |
EXT_SITMPUSW-160 | RSA PSS signing in the appimage signing script is broken | Scripts | 09.01.00 |
EXT_SITMPUSW-161 | Possibility of different sequence id initialization in a multi thread environment | DM | 09.01.00 |
EXT_SITMPUSW-162 | Sciclient, update the context ID check in sciclient ISR | DM | 09.01.00 |
Known Issues
ID | Head Line | Module | Reported in release | Workaround |
EXT_SITMPUSW-1085 | Flash_eraseSector and Flash_norOspiEraseSector does not erases the mentioned sector. | Flash | 11.00.00 | No known workaround |
EXT_SITMPUSW-28 | Outstanding mailbox messages prevent suspend | IPC | 08.03.00 | No known workaround |
EXT_SITMPUSW-109 | Wrong comments on HwiP_inISR() API | DPL | 11.00.00 | No known workaround |
EXT_SITMPUSW-78 | MMCSD Sysconfig provides options to configure PHY type | MMCSD | 11.00.00 | No known workaround |
EXT_SITMPUSW-124 | EXTCSD HS_TIMING register is set incorrectly at certain places in the driver | MMCSD | 11.00.00 | No known workaround |
EXT_SITMPUSW-126 | Timing issues with MMCSD host controller driver | MMCSD | 11.00.00 | No known workaround |
EXT_SITMPUSW-127 | Incorrect handling of the CAPABILITIES register in the eMMC initialization | MMCSD | 11.00.00 | No known workaround |
EXT_SITMPUSW-128 | EMMC timiing parameters to be changed based on SOC and MMC instance | MMCSD | 11.00.00 | No known workaround |
EXT_SITMPUSW-137 | Random CRC errors observed for eMMC HS400 mode on random reset test | MMCSD | 11.00.00 | No known workaround |
EXT_SITMPUSW-138 | MMCSD_read & MMCSD_write function are not designed simple & readable | MMCSD | 11.00.00 | No known workaround |
EXT_SITMPUSW-139 | Comment and Implementation does not match in the MMCSD_retune | MMCSD | 11.00.00 | No known workaround |
EXT_SITMPUSW-117 | Linux Kernel IPC Examples are broken | IPC | 11.00.00 | Change ti.ipc4.ping-pong to rpmsg-client-sample in the example |
EXT_SITMPUSW-121 | FORCE bit not book keeped properly for MCSPI DMA mode of operation | MCSPI | 11.00.00 | No known workaround |
EXT_SITMPUSW-135 | RTC Test application failing intermittently | RTC | 11.00.00 | No known workaround |
EXT_SITMPUSW-159 | SBL SD is broken on AM62P 11.1.1 | SD | 11.01.01 | No known workaround |
EXT_EP-12277 | AM62Px: ECC: SDL_MCAN1_MCANSS_MSGMEM_WRAP_ECC_AGGR aggregator is failing | SDL | 10.01.00 | No known workaround |
EXT_EP-12279 | CSI RX ECC aggregators are failing on AM62P/AM62X | SDL | 09.01.00 | No known workaround |
EXT_EP-12280 | Running MCU LBIST on SBL causes JTAG connection issues to MCU R5F - After running MCU LBIST, not able to connect to any core through JTAG on AM62px | SDL | 09.00.00 | No known workaround |
EXT_EP-12276 | ECC: Firewall related aggregators failures - ECC Aggregators SDL_SA3_SS0_SA3SS_AM62A_DMSS_ECCAGGR, SDL_SA3_SS0_SA3SS_AM62A_SA_UL_ECC_AGGR fail because of firewall access issues faced by SDL | SDL | 10.01.00 | No known workaround |
Limitations
S.No | Head Line | Module |
1 | The ROM startup model for runtime initializations in TI ARM CLANG is not supported/tested in the SDK | NA |
2 | LPM is not supported with SBL boot flow. It is supported only with SPL boot flow. | Bootloader |
3 | The EVM is limited to only one MAC address in the EEPROM, applications requiring multiple MAC addresses should enable and configure manual MAC address entry in Sysconfig. | Networking |
Upgrade and Compatibility Information
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.
The below table captures the list of migration document sections when migrating from one version to another. The migration for a partcluar module will be applicable, if you are migrating from older version listed to newer version listed on the table below.
Networking
Module | Affected API | Change |
TSN | notify_linkchange | notify_linkchange function is renamed to cb_lld_notify_linkchange , include path <tsn_combase/tilld/cb_lld_ethernet.h> in the file that uses cb_lld_notify_linkchange . |