OS | Supported CPUs | SysConfig Support | Key features tested | Key features not tested / NOT supported |
FreeRTOS Kernel | R5F, M4F, A53 | NA | Task, Task notification, interrupts, semaphores, mutexes, timers, event groups. ROV views in CCS IDE, Task load measurement using FreeRTOS run time statistics APIs. | Only single core A53 FreeRTOS is supported. Second core is NOT used. |
FreeRTOS SMP Kernel | A53 | 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, M4F, A53 | NA | pthread, mqueue, semaphore, clock | - |
NO RTOS | R5F, M4F, A53 | NA | See Driver Porting Layer (DPL) below | Only single core A53 NORTOS is supported. Second core is NOT used. |
Module | Supported CPUs | SysConfig Support | OS support | Key features tested | Key features not tested / NOT supported |
Address Translate | M4F | YES | FreeRTOS, NORTOS | Use RAT to allow M4F access to peripheral address space | - |
Cache | R5F, A53 | YES | FreeRTOS, NORTOS | Cache write back, invalidate, enable/disable | - |
Clock | R5F, M4F, A53 | YES | FreeRTOS, 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, M4F, A53 | NA | FreeRTOS, NORTOS | Measure CPU cycles using CPU specific internal counters | - |
Debug | R5F, M4F, A53 | YES | FreeRTOS, NORTOS | Logging and assert to any combo of: UART, CCS, shared memory | - |
Heap | R5F, M4F, A53 | NA | FreeRTOS, NORTOS | Create arbitrary heaps in user defined memory segments | - |
Hwi | R5F, M4F, A53 | YES | FreeRTOS, NORTOS | Interrupt register, enable/disable/restore | - |
MPU | R5F, M4F | YES | FreeRTOS, NORTOS | Setup MPU and control access to address space | - |
MMU | A53 | YES | NORTOS | Setup MMU and control access to address space | - |
Semaphore | R5F, M4F, A53 | NA | FreeRTOS, NORTOS | Binary, Counting Semaphore, recursive mutexs with timeout | - |
Task | R5F, M4F, A53 | NA | FreeRTOS | Create, delete tasks | - |
Timer | R5F, M4F, A53 | YES | FreeRTOS, NORTOS | Configure arbitrary timers | - |
Event | R5F, M4F | YES | FreeRTOS | Setting, getting, clearing, and waiting of Event bits | - |
Peripheral | Supported CPUs | SysConfig Support | DMA Supported | Key features tested | Key features not tested / NOT supported |
ADC | R5F | YES | Yes | Single conversion (one-shot mode), interrupt mode, DMA mode | Continuous conversion not tested |
CRC | R5F | YES | No | CRC in full CPU mode | - |
DDR | R5F | YES | No | Tested LPDDR4 at 400MHz frequency. | - |
ECAP | R5F | YES | No | Frequency, Duty cycle, interrupt mode | - |
EPWM | R5F | YES | No | Different Frequency, Duty cycle, interrupt mode, Deadband and chopper module | Tripzone module not tested |
EQEP | R5F | YES | No | Signal Frequency and Direction, interrupt mode | - |
FSI (RX/TX) | R5F | YES | No | RX, TX, polling, interrupt mode, single/dual lanes | - |
GPIO | R5F, M4F, A53 | YES | No | Basic input/output, GPIO as interrupt | GPIO as interrupt is not tested for A53. |
GTC | R5F, A53 | NA | No | Enable GTC, setting FID (Frequency indicator) | - |
I2C | R5F, M4F, A53 | YES | No | Controller mode, basic read/write, polling and interrupt mode | Target mode not supported. M4F not tested due to EVM limitation |
IPC Notify | R5F, M4F, A53 | YES | No | Low latency IPC between RTOS/NORTOS CPUs | - |
IPC Rpmsg | R5F, M4F, A53 | YES | No | RPMessage protocol based IPC for all R5F, M4F, A53 running NORTOS/FreeRTOS/Linux | - |
MCAN | R5F | YES | No | RX, TX, interrupt and polling mode | - |
MCSPI | R5F, M4F | YES | Yes | Controller/Peripheral mode, basic read/write, polling, interrupt and DMA mode | - |
MDIO | R5F | NA | No | Register read/write, link status and link interrupt enable API | - |
MMCSD | R5F | YES | Yes | Raw read/write and file I/O on MMCSD0 eMMC, and MMCSD1 SD. eMMC tested till HS SDR mode (8-bit data, 52 MHz), SD tested till SD HS mode (4-bit, 25 MHz) | Interrupt mode not tested |
OSPI | R5F | YES | Yes | Read direct, Write indirect, Read/Write commands, DMA for read, PHY Mode | Interrupt mode not supported |
PCIe | R5F | YES | No | Buffer Transfer between EP and RC modes. Legacy interrupt | MSI and MSIx capability |
Pinmux | R5F, M4F, A53 | YES | No | Tested with multiple peripheral pinmuxes | - |
PRUICSS | R5F | YES | No | Tested with Ethercat, EtherNet/IP, IO-Link, ICSS-EMAC, HDSL, EnDat | - |
SOC | R5F, M4F, A53 | YES | No | lock/unlock MMRs, get CPU clock, CPU name, clock enable, set frequency, SW Warm/POR Reset, Address Translation | - |
Sciclient | R5F, M4F, A53 | YES | No | Tested with clock setup, module on/off | - |
SPINLOCK | R5F, M4F, A53 | NA | No | Lock, unlock HW spinlocks | - |
UART | R5F, M4F, A53 | YES | Yes | Basic read/write, polling, interrupt mode, | HW flow control not tested. DMA mode not supported |
UDMA | R5F, A53 | YES | Yes | Basic memory copy, SW trigger, Chaining | - |
WDT | R5F, A53 | YES | No | Interrupt after watchdog expiry | Reset not supported |
Module | Supported CPUs | SysConfig Support | OS Support | Key features tested | Key features not tested |
TSN | 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 | 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 | Other LwIP features |
Ethernet driver (ENET) | 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 |
Mbed-TLS | R5F | NO | FreeRTOS | Tested software cryptography after porting, used mbedTLS with LwIP to implement HTTPS server | Hardware offloaded cryptography |
ID | Head Line | Module | Applicable Releases | Applicable Devices | Resolution/Comments |
SYSFW-6763 | TISCI_MSG_SET_DEVICE_RESETS message returns success for invalid device reset range | SYSFW | 07.03.00 onwards | AM64x, AM243x | The parameter range is validated now |
SYSFW-6941 | TISCI_MSG_SYS_RESET fails for negative testcase | SYSFW | 07.03.00 onwards | AM64x, AM243x | The parameter range is validated now |
SYSFW-7056 | Implement New PLL sequence Proposed by HW team | SYSFW | 07.03.00 onwards | AM64x, AM243x | PLL sequence in DMSC firmware updated |
SYSFW-6892 | TISCI Clock api returns success for invalid Clock ID | SYSFW | 07.03.00 onwards | AM64x, AM243x | TISCI message with invalid clock id now returns NAK |
SYSFW-6903 | REF_DEF Value must be 1 for proper PLL operations | SYSFW | 07.03.00 onwards | AM64x, AM243x | PLLs which had REF_DIV greater than 1 were updated to be 1 |
PROC_SDL-6445 | ECC error injection test fails for VTM aggregator from R5F domain. | SDL | 9.2.0 onwards | AM64x, AM243x | Test passes now |
PROC_SDL-7048 | DCC: SDL_DCC_getStatus() does not return correct status of DONE and ERR pending interrupts | SDL | 9.2.0 onwards | AM64x, AM243x | Correct status of pending interrupts returned now |
MCUSDK-2336 | SysConfig crashes if many GPIOs are added | GPIO | 08.01.00 onwards | AM64x, AM243x | Sysconfig device data is fixed |
MCUSDK-11247 | Delay missing after setting FIFO CLEAR bit | UART | 08.06.00 onwards | AM64x, AM243x | Wait is added till the FIFO to become empty |
MCUSDK-11942 | The McSPI driver does not output CLK when it is set to RX only mode and data size is not 8 bit | McSPI | 09.00.00 onwards | AM64x, AM243x | Updated the documentation on how to set txBug and rxBuf size |
MCUSDK-12173 | The MCU+ SDK uses the incorrect ROM degenerate key to sign the ROM certificates for GP/HS-FS devices. This results in the ROM skipping the integrity check | Build | 08.06.00 onwards | AM64x, AM243x | Update the ROM degenerate key used |
MCUSDK-12281 | Bootloader profile numbers for System_init are incorrect | Build | 09.00.00 onwards | AM64x, AM243x | Removing the CycleP_counterInit() from system_init() for bootloaders |
MCUSDK-12347 | SysCfg for System examples generating code in single context mode | Build | 09.00.00 onwards | AM64x, AM243x | For the induvidual projects in the system projects, do not call sysconfig to generate files |
MCUSDK-12594 | API to enable/disable writes to tripzone | EPWM | 09.00.00 onwards | AM64x, AM243x | APIs added to write to trip zone registers |
MCUSDK-12647 | MCAN_txBufAddReq API does read-modify-write to TXBAR register | MCAN | 09.00.00 onwards | AM64x, AM243x | Update the API to do direct write to TXBAR register |
MCUSDK-12658 | McSPI LLD multiple instance build issue is resolved | MCSPI | 09.00.00 onwards | AM64x, AM243x | Fixed the sysconfig generated files for McSPI LLD |
MCUSDK-12729 | K3-resource partition tool is not generating the required rm-cfg.yaml and tifs-cfg.yaml | K3-Resource_partition tool | 09.01.00 onwards | AM64x | Fixed the toll to generate yaml instead of .c files |
MCUSDK-12776 | OTP examples are not working | Linker | 09.01.00 onwards | AM64x | Used the correct entry point in the memory configurator |
MCUSDK-12823 | Read cancel API flushes out the characters while cancelling the read | UART | 09.01.00 onwards | AM64x, AM243x | Remove RX fifo flush when UART_read times out |
MCUSDK-13064 | PHY tuning algorithm updates for robusteness | OSPI | 09.01.00 onwards | AM64x, AM243x | Update PHY tuning algorithm |
MCUSDK-12526 | ICSSG Firmware is not updating the Host Port statistics | Ethernet | 09.01.0 onwards | AM64x, AM243x | - |
MCUSDK-11421 | enet_layer2_icssg example crashing while exiting | Ethernet | 08.06.00 onwards | AM64x, AM243x | - |
MCUSDK-12526 | ENET ICSSG: Host port (PA) statistics is broken for ICSSG MAC mode | Ethernet | 09.01.00 onwards | AM64x, AM243x | - |
MCUSDK-12597 | am243x/am64x: ENET: Memory Init and De-init flow is not complete on ICSSG | Ethernet | 09.01.00 onwards | AM64x, AM243x | - |
MCUSDK-12923, MCUSDK-12950 | ENET: RMII pinmux settings miss some pins in syscfg GUI | Ethernet | 08.06.00 onwards | AM64x | - |
ID | Head Line | Module | Applicable Releases | Applicable Devices | Workaround |
MCUSDK-626 | DMA not working with ADC FIFO 1 | ADC | 7.3.0 onwards | AM64x, AM243x | Use ADC FIFO 0
|
MCUSDK-2113 | [Docs] Sysfw RM/PM documentation doesn't specify AM243x | Docs | 8.0.0 onwards | AM243x | - |
MCUSDK-2715 | PKA ECDSA sign verify is not working for P-521 and BrainPool P-512R1 curves | SECURITY | 8.2.0 onwards | AM64x, AM243x | - |
MCUSDK-6262 | [AM243X] : MMCSD read io example is not functional on eMMC if the APP_MMCSD_START_BLK is changed for MMCSD_write and MMCSD_read | MMCSD | 8.3.0 owards | AM243x, AM64x | - |
MCUSDK-8842 | OSPI Writes fail with multi threaded applications | OSPI | 8.4.0 | AM64x, AM243x | - |
MCUSDK-8938 | Last 512KB of memory is not accessible in dev boot mode flow | SBL | 8.4.0 | AM64x, AM243x | Use other boot modes |
mbedTLS-advisory
MCUSDK-9082 | MbedTLS - RSA exploit by kernel-privileged cache side-channel attackers | Mbed-TLS | 8.6.0 | AM64x, AM243x, AM263X, AM273X | - |
MCUSDK-10691 | flash sequence does not work for MX25U51245G (4-4-4 mode) | Flash | 8.6.0 | AM64x, AM243x | - |
MCUSDK-10939 | PCIe MSI error when connected to Linux Root Complex | PCIe | 8.6.0 | AM64x, AM243x | - |
MCUSDK-11028 | PCIe as End Point throwing error when changing BAR aperture | PCIe | 8.6.0 | AM64x, AM243x | - |
MCUSDK-11507 | ENET: CPSW MAC port is stuck forever and dropping all the Rx/Tx packets with reception of corrupts preamble. | CPSW | 8.2.0 onwards | AM64x, AM243x | Disable hostRxTimestampEn flag in CPSW CPST configuration. This does not impact the CPTS Rx or Tx Timestamp Events for PTP packets and is orthogonal feature. |
MCUSDK-11652 | PCIE benchmarking is not working for (variable) BUF_SIZE = 0x40 | PCIe | 8.6.0 onwards | AM64x, AM243x | - |
MCUSDK-11730 | A wrong counter is used for Event 2 in PMU configuration | PMU | 9.0.0 onwards | AM64x, AM243x | - |
MCUSDK-12984 | McSPI LLD Read and write APIs not working | McSPI | 9.1.0 onwards | AM64x, AM243x | Use MCSPI_transfer() APIs |
MCUSDK-13120 | Pcie_legacy_irq example is broken | PCIE | 9.0.0 onwards | AM64x, AM243x | - |
MCUSDK-3626 | Enet: Phy tuning is not done correctly on AM64x/AM243x and AM263x platforms | Enet | 8.1.0 onwards | AM64x, AM243x | PHY delay is not tuned but set to value based on limited testing on a small set of boards.If packet drops are still seen, we can force the phy to set to 100mbps.Make below change in application code: linkCfg->speed = ENET_SPEED_100MBIT; linkCfg->duplexity = ENET_DUPLEX_FULL; |
MCUSDK-8376 | LWIP web server application crashes in server stress test | Enet, LWIP | 8.3.0 onwards | AM64x, AM243x | - |
MCUSDK-9739 | AM64B SK loss of packet on using CPSW switch | Networking | 8.5.0 | AM64x | - |
MCUSDK-10679 | CPSW UDP Iperf test instability on AM243x | Networking | 8.6.0 | AM64x, AM243x | - |
PINDSW-6452 | ICSSG based standard Ethernet drops packets, limits TCP throughput to 600M | Ethernet | AM64x, AM243x | 08.06.00 onwards | - |
MCUSDK-8376 | LWIP web server application crashes in server stress test | Ethernet | AM64x, AM243x | 09.00.00 onwards | - |
MCUSDK-13138 | AM243x/ AM64x: ENET: gPTP in ICSSG Mac mode (dual mac) doesn't work on Mac Port 2 | Ethernet | AM64x, AM243x | 09.01.00 onwards | - |
SYSFW-6432 | Set device API doesn't return Error when PD is in transition state | SYSFW | AM64x, AM243x | 07.03.00 onwards | - |
SYSFW-6426 | Ownership of a firewall region can be transferred to an invalid host | SYSFW | AM64x, AM243x | 07.03.00 onwards | - |
ID | Head Line | Module | SDK Status |
i2278 | MCAN: Message Transmit order not guaranteed from dedicated Tx Buffers configured with same Message ID | MCAN | Open |
i2279 | MCAN: Specification Update for dedicated Tx Buffers and Tx Queues configured with same Message ID | MCAN | Open |
i2310 | USART: Erroneous clear/trigger of timeout interrupt | UART | Implemented |
i2311 | USART: Spurious DMA Interrupts | UART | Implemented |
i2312 | MMCSD: HS200 and SDR104 Command Timeout Window Too Small | MMCSD | Open |
i2313 | GPMC: Sub-32-bit read issue with NAND and FPGA/FIFO | GPMC | Implemented |
i2326 | PCIe: MAIN_PLLx operating in fractional mode, which is required for enabling SSC, is not compliant with PCIe Refclk jitter limits | PCIe | Open |
i2329 | MDIO interface corruption, | CPSW, ICSSG | Open |
i2331 | CPSW: Device lockup when reading CPSW registers | CPSW, SBL | Implemented |
i2345 | CPSW: Ethernet Packet corruption occurs if CPDMA fetches a packet which spans across memory banks | CPSW | Implemented |
i2401 | CPSW: Host Timestamps Cause CPSW Port to Lock up | CPSW | Open |
i2402 | CPSW: Ethernet to Host Checksum Offload does not work | CPSW | Open |
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.