2.1. Release Notes

2.1.1. Overview

The Processor Software Development Kit (Processor-SDK) for Linux provides a fundamental software platform for development, deployment and execution of Linux based applications and includes the following:

  • Bootloaders, Linux Kernel & Filesystem

  • SDK installer

  • Setup scripts

  • Demo applications

  • Documentation

Note

For building some of the RTOS-based demonstrations, you should also download Processor SDK RTOS installer. For more information, refer to <PSDKRA install path>/index.html.

2.1.2. Licensing

Please refer to the software manifest, which outlines the licensing status for all packages included in this release. The manifest can be found on the SDK download page or in the installed directory as indicated below. In addition, see Processor SDK Linux GPLv3 Disclaimer.

2.1.3. Documentation

  • Processor SDK Linux Software Developer’s Guide: Provides information on features, functions, delivery package and, compile tools for the Processor SDK Linux release. This also provides detailed information regarding software elements and software infrastructure to allow developers to start creating applications.

  • Processor SDK Linux Getting Started Guide: Provides information on getting the software and running examples/demonstrations bundled in the SDK.

  • Software Manifest: Provides license information on software included in the SDK release. This document is in the release at [INSTALL-DIR]/docs.

  • EVM Quick Start Guide: Provides information on hardware setup and running the demonstration application that is loaded on flash. This document is provided as part of the EVM kit.

2.1.4. Supported Platforms

See here for a list of supported platforms and links to more information.

2.1.5. Release 08.04.00

Released September 2022

What’s New

Processor SDK 8.4 Release has following new features:

  • Native Linux networking (CPSW)

  • OSPI1 & Hyperflash boot

2.1.6. Build Information

2.1.6.1. U-Boot

Head Commit: a169f4261024397dd3ddb944decc1601a623df2a HACK: j721s2: QoS workaround for GPU cache incoherency
Date: 25 Jul 2022 06:28 PM CDT
uBoot Version: 2021.01
uBoot Description: 08.04.00.005
Clone: git://git.ti.com/ti-u-boot/ti-u-boot.git
Branch: ti-u-boot-2021.01
uBoot Tag: 08.04.00.005
Compiler Information: aarch64-none-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10))

Note:

meta-psdkla Yocto layer contains additional patches for U-Boot here.

2.1.6.2. Kernel

Linux Kernel

Head Commit: 95b90aa828165df6c45d6bb0e1cce905e83a66a7 Merged TI feature connectivity into ti-linux-5.10.y
Date: 22 Jul 2022 02:21 PM CDT
Kernel Version: 5.10.120
Kernel Description: 08.04.00.005
Clone: git://git.ti.com/ti-linux-kernel/ti-linux-kernel.git
Branch: ti-linux-5.10.y
Tag: 08.04.00.005
Kernel defconfig: ti_sdk_arm64_release_defconfig
Compiler Information: arm-none-linux-gnueabihf-gcc (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)) 9.2.1 20191025

Real Time (RT) Linux Kernel

Head Commit: adb96c641cb03198db729962eb348ca1a16978e2 Merged TI feature ti_linux_base_rt into ti-rt-linux-5.10.y
Date: 22 Jul 2022 02:57 PM CDT
Kernel Version: 5.10.120
Kernel Description: 08.04.00.005
Clone: git://git.ti.com/ti-linux-kernel/ti-linux-kernel.git
Branch: ti-rt-linux-5.10.y
Tag: 08.04.00.005
Kernel defconfig: ti_sdk_arm64_release_defconfig
Compiler Information: arm-none-linux-gnueabihf-gcc (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)) 9.2.1 20191025

Note:

meta-psdkla Yocto layer contains additional patches for Linux Kernel here.

2.1.6.3. Yocto

meta-ti

Head Commit: 762f4908189fcd5f62cb259767768534264d7702 linux-ti-staging-rt: Bump to 08.04.00.005 release
Date: 2022-07-26
Version: dunfell-3.1
Clone: git://git.yoctoproject.org/meta-ti
Branch: dunfell
Release Tag: 08.04.00.005

meta-arago

Head Commit: 28ab4e60678f0d54f552c3c7606ad76244dd0b5c ltp-ddt: Bump to 08.04.00.005 release
Date: 2022-07-26
Version: 2021.09
Clone: git://git.yoctoproject.org/meta-arago
Branch: dunfell
Release Tag: 08.04.00.005

meta-psdkla

Head Commit: 53219eedfbf59b5ee44910d260215a9a0d876109 j721e-sk: Adding systemd service: script to fix PMIC issue
Date: 2022-08-26
Clone: git://git.ti.com/jacinto-linux/meta-psdkla.git
Branch: master

2.1.7. Issues Tracker

2.1.7.1. Issues opened in previous releases that were closed on this release

Record ID

Title

LCPD-28094

SK-TDA4VM fails to boot with recent daily builds

LCPD-28034

J7ES/J721e: Issue in OSPI driver with Cypress flash

LCPD-27107

Upstream: Move ARM64 stack pointer for all K3 devices

LCPD-26641

K3: Move stack initialization address in arm64

LCPD-25661

GPU driver DDK 1.13 not supported on Linux kernel 5.10

LCPD-25535

UBoot: customized ${optargs} doesn’t take affect on K3 devices

LCPD-25502

J721e/J7200/J7AEP: Add the missing UART instances clock/dev data

LCPD-25491

j721e-idk-gw: CPSW2G Promisc failure

LCPD-25317

A72 SPL: A72 SPL memcpy sluggish with 8.0/8.1 SDK

LCPD-25305

J721e/J7200: Populate missing IDs in the j72xx_dst_ep_map

LCPD-25075

J721E: revE8 SoM board doesn’t boot consistently

LCPD-24871

J721E-SK: SPL: DFU boot test failed

LCPD-24511

ARM: A72/53 L1 data cache and L2 cache set counts wrong

LCPD-24507

U-Boot command “saveenv” doesn’t save env

LCPD-24315

ufs@4e84000: fix warning

LCPD-24290

Decoder + kmssink elements generates pink and green frames blinking

LCPD-24283

CSI2 10 bit raw capture does not work

LCPD-24274

PCIe: Link up failure when unused lanes are not assigned to PCIe Controller

LCPD-24231

J721e: U-boot: QSPI: Read performance very low with 7.x & 8.0 SDK

LCPD-24115

j721e-idk-gw default mtdparts value in U-BOOT is wrong

LCPD-23002

wic images for K3 HS images are broken

LCPD-22964

U-Boot: PLL POSTDIV1 and POSTDIV2 clock parenting is reversed

LCPD-22861

Missing documentation for HS devices

LCPD-19858

OE: OPTEE label used in SDK is old and wrong

LCPD-16591

PCIe wifi ping stress test failed


2.1.7.2. Issues found and closed on this release that may be applicable to prior releases

Record ID

Title

LCPD-28419

Linux: All: AM65 CPSW driver fails to build w/o PHYLINK=y

LCPD-28361

RMII mode not working with am65-cpsw driver

LCPD-28340

Yocto: viddec-test and videnc-test recipes are IMG encoder specific - disable for j721s2/am62a etc

LCPD-28325

kernel crashes if CONFIG_DEBUG_FS is not set

LCPD-28316

Documentation for tidec_decode should clearly limit the support to raw streams (no container formats)

LCPD-28308

u-boot: build broken for j721e_hs_evm_a72_defconfig

LCPD-28227

v5.19-rc1: devm_spi_release_controller refcount issue

LCPD-28178

wic images for K3 HS images are broken


2.1.7.3. Errata Workarounds Available in this Release

Record ID

Title

LCPD-24274

PCIe: Link up failure when unused lanes are not assigned to PCIe Controller

LCPD-19965

OSPI PHY Controller Bug Affecting Read Transactions

LCPD-19068

DSS: Disabling a layer connected to Overlay may result in synclost during the next frame

LCPD-19047

USB: Race condition while reading TRB from system memory in device mode

LCPD-18980

PCIe: Gen2 capable endpoint devices always enumerate as Gen1

LCPD-17220

U-Boot Hyperbus: Hyperflash reads limited to 125MHz max. frequency

LCPD-16605

MMC: MMC1/2 Speed Issue


2.1.7.4. SDK Known Issues

Record ID

Title

Workaround

LCPD-28474

libthread_db and libpthread version mismatch does not allow GDB debug of multi-thread

LCPD-28317

GStreamer pipeline with decoder and fakesink causes kernel crash

LCPD-28315

tidec_decode causes a kernel crash when used with container fileformats

LCPD-28123

Encoder framerate drops below 30FPS for 2 or more channels of 1920x1080

LCPD-28118

RGBA Encode throws timeout error for 720x512 resolution

LCPD-28019

TDA4VM: Kernel panic caused by H265 decoder crash

LCPD-27522

Multi Stream decode fails

LCPD-25663

Remove old IMG demo binaries

LCPD-25662

Remove SGX PVR tools from KS3 devices

LCPD-25583

H264 Encode followed by decode not working for all resolutions in Gstreamer

LCPD-25538

Unable to extract header info with Decoder Standalone Test application

LCPD-25332

J721e Failing Video test

LCPD-25330

Video seek feature breaks with buffer import patch

LCPD-25221

j721e-idk-gw failing Glmark2-DRM Test (Impact 1)

LCPD-24733

Gstreamer video decode test failing for H.264

LCPD-24619

Bitbake fails in different timezone

LCPD-24475

Performance of H.265 decoder is poor

LCPD-24099

v4l2h264dec, v4l2h264enc, v4l2h265dec: Codec Allocates much more space than required in Linux

LCPD-22972

j721e-idk-gw GLBenchmark GLB25_EgyptTestStandardOffscreen_inherited test

LCPD-22921

j721e PVR profiling with PVRPerfServer test is failing

LCPD-19948

Yocto: stream recipe is incorrect

LCPD-19894

UYVY texture test fails due to internal data stream error

LCPD-19716

GFX_XS_FUNC_UYVY_TEXTURE test fails

LCPD-16531

video decode: vxd_dec warnings displayed at end of gstreamer hevc playback to kmssink for certain video

LCPD-16454

DSS underflows with 1080p/2.5k display on inmate cell

LCPD-16366

RGX kick test fails when 32 sync dependencies are set for each command


2.1.7.5. U-Boot Known Issues

Record ID

Title

Workaround

LCPD-28387

J721e/J7200/J721s2: Add the missing UART instances clock/dev data

LCPD-28206

j721: sdhci0: Capabilities offered in U-Boot Vs Kernel dts are different

LCPD-24108

U-Boot: TISCI config ring fail traces seen in OSPI boot mode on J721E

LCPD-22904

U-boot: Update EMIFtool for i2244:DDR: Valid stop value must be defined for write DQ VREF training

LCPD-22512

Update dfu_alt_info_ospi to include flashing of PHY tuning data

LCPD-22452

u-boot README doesn’t have eMMC specific documentation for J7ES

LCPD-22451

Documentation on J7ES Boot flow refers to AM65xx Boot flow in the u-boot user guide

LCPD-19871

U-boot: Documentation: Combined Boot flow and SPL Rearch

LCPD-19776

j7: uboot: some socketed evms fail to boot

LCPD-17789

UBOOT J7: Could not see UFS device by scsi scan

LCPD-17523

A72-SPL - Support to dump EEPROM to shared memory


2.1.7.6. Linux Kernel Known Issues

Record ID

Title

Workaround

LCPD-28663

Pauses in video being displayed when input video is read from SD card

LCPD-28502

MMC I/O latency is causing audio UNDERRUN issues

LCPD-28480

J721E: USB super speed gadget mode: PC does not detect device

LCPD-28385

SPI Master RX Transfer Hangs in Full Duplex Mode with UDMA

LCPD-28314

SDK: CPSW9G: GESI Card interface eth1: packet loss observed

LCPD-28247

J721e: Ethernet driver crash while running iperf3 after about 6+ hrs

LCPD-28182

Add support for simultaneous use of RPi camera and Rpi extension header

LCPD-28087

emmc: using RPMB panicks the TA on High speed mode

LCPD-26728

J721e: Watchdog reset fails on newer SoMs

LCPD-25629

networking - dunfell systemd behaves differently than older SDK’s

LCPD-25512

TSN (EST) : Reduced Bandwidth observed on ports 5002, 5003 with increase in test bandwidth

LCPD-25469

j721e USB OTG HOST regressions on eptf126

LCPD-25321

Docs: J721E: Improve the IPC chapter for ti-rpmsg-char

LCPD-25187

ATF: Support PSCI call for system reset

LCPD-25112

Ethernet driver not gating its clock when interface is down

LCPD-24798

j721e-idk-gw, j7200-evm UART tests fail (Impact 3.0)

LCPD-24725

PCIE RC Link fails when linux prints are made quiet

LCPD-24677

j721e-idk-gw PCI WIFI Tests Fail due to iperf issues(Impact 1)

LCPD-24595

j721e-idk-gw USB Suspend/Resume with RTC Wakeup fail (Impact 1)

LCPD-24589

no new usb reported on host after g_multi

LCPD-24502

j721e-evm-ivi Universal Planes fails (Impact 1)

LCPD-24491

Docs: MMC/SD supported modes not documented properly for J721E/J7200

LCPD-24456

Move IPC validation source from github to git.ti.com

LCPD-24198

J721e-sk stress boot test fails

LCPD-24142

J721e: Issue with OSPI probe in kernel when booting from OSPI boot mode

LCPD-24125

j721e-idk-gw all LE play + record tests fail (Impact 7.0)

LCPD-23010

j721e-idk-gw stress boot test files

LCPD-22760

k3conf: Register read leads to kernel crash

LCPD-22715

i2232: DDR: Controller postpones more than allowed refreshes after frequency change

Workaround 1: Disable dynamic frequency change by programing DFS_ENABLE = 0

DFS_ENABLE = 0

Workaround 2: If switching frequency, program the register field values as follows:

if (old_freq/new_freq >= 7) {
   if (PBR_EN==1) {  // Per-bank refresh is enabled
         AREF_HIGH_THRESHOLD = 19
         AREF_NORM_THRESHOLD = 18
         AREF_PBR_CONT_EN_THRESHOLD = 1
         AREF_CMD_MAX_PER_TREF = 8
   }
   else {  // Per-bank refresh is disabled
         AREF_HIGH_THRESHOLD = 18
         AREF_NORM_THRESHOLD = 17
         AREF_CMD_MAX_PER_TREF = 8
   }
} else {
   AREF_HIGH_THRESHOLD = 21
   AREF_CMD_MAX_PER_TREF = 8
}

LCPD-22513

Update SDK doc to include OSPI flashing instruction using dfu-util

LCPD-22487

USB: usb0 doesn’t work properly in host only mode

LCPD-22339

PCI-E USBCARD, ETHCARD don’t indicate 2-lane support with lspci

LCPD-20653

ltp: kernel syscall tests fail

LCPD-20290

CPSW Performance regression on j721e-idk-gw

LCPD-20240

MMC Modular testcase regression

LCPD-19792

j721e boot fails sometimes due to EL1 exception

LCPD-19659

Doc: PCIe: Update documentation to indicate how to move to compliance mode

LCPD-19084

Few SD cards not enumerating in Kernel with Alpha EVM

LCPD-19068

DSS: Disabling a layer connected to Overlay may result in synclost during the next frame

LCPD-18860

isolcpus in the command line is not honored

LCPD-18790

eMMC tests failed on J7 rev E2 EVM

LCPD-18684

syscalls sync failures: fdatasync03, fsync04, sync03, syncfs01, sync_file_range02

LCPD-18258

IPSEC perfomance failures

LCPD-17814

Kingston 16G card could not boot to uboot prompt

LCPD-17798

2020 LTS: INTA/INTR smp_affinity failure and IRQ allocation issues.

LCPD-17794

ext4write failed to write firmware to SD card

LCPD-17673

No software documentation for the Timer module

LCPD-17543

Some cpuhotplug tests failed

LCPD-17421

CPSW9G: Can’t bring up interface over NFS

LCPD-17284

remoteproc/k3-r5: Cores are started out-of-order when core 0 file size >> core 1 file size

LCPD-17172

Uboot USBhost: Sandisk Extreme USB 3.0 msc stick could not be detected at second time

LCPD-17171

Uboot dhcp occasionally failed

LCPD-17113

[Cpsw9g][VirtualDriver][VirtualMAC] rpmsg_kdrv_switch is not autoloaded

LCPD-17017

J7: DSS underflows seen on various use cases

LCPD-17006

4k DP Display Shows Blank Screen sometimes when booting

LCPD-16640

PCIe RC: GIC ITS misbehaves when more than 4 devices use it simultaneously

LCPD-16545

remoteproc/k3-r5f: PDK IPC echo_test image fails to boot up in remoteproc mode on second run

LCPD-16535

remoteproc/k3-dsp: PDK IPC echo test binaries fails to do IPC in remoteproc mode on second run

LCPD-16505

Wrong clock rate is reported for 157:400, 157:401 (HSDIVIDER after PLL4 and 15)

LCPD-16454

DSS underflows with 1080p/2.5k display on inmate cell

LCPD-16396

J721E: RC: Unsupported request in configuration completion packets results in an abort

Workaround for Multifunction: Configure all the physical functions supported by the endpoint. For configuring all the 6 functions of PCIe controller instance ‘1’ in J721E, the following can be used. mount -t configfs none /sys/kernel/config; cd /sys/kernel/config/pci_ep/; mkdir functions/pci_epf_test/func1; echo 0x104c > functions/pci_epf_test/func1/vendorid; echo 0xb00d > functions/pci_epf_test/func1/deviceid; echo 1 > functions/pci_epf_test/func1/msi_interrupts; echo 16 > functions/pci_epf_test/func1/msix_interrupts; ln -s functions/pci_epf_test/func1 controllers/d800000.pcie-ep/; mkdir functions/pci_epf_test/func2; echo 0x104c > functions/pci_epf_test/func2/vendorid; echo 0xb00d > functions/pci_epf_test/func2/deviceid; echo 1 > functions/pci_epf_test/func2/msi_interrupts; echo 16 > functions/pci_epf_test/func2/msix_interrupts; ln -s functions/pci_epf_test/func2 controllers/d800000.pcie-ep/; mkdir functions/pci_epf_test/func3; echo 0x104c > functions/pci_epf_test/func3/vendorid; echo 0xb00d > functions/pci_epf_test/func3/deviceid; echo 1 > functions/pci_epf_test/func3/msi_interrupts; echo 16 > functions/pci_epf_test/func3/msix_interrupts; ln -s functions/pci_epf_test/func3 controllers/d800000.pcie-ep/; mkdir functions/pci_epf_test/func4; echo 0x104c > functions/pci_epf_test/func4/vendorid; echo 0xb00d > functions/pci_epf_test/func4/deviceid; echo 1 > functions/pci_epf_test/func4/msi_interrupts; echo 16 > functions/pci_epf_test/func4/msix_interrupts; ln -s functions/pci_epf_test/func4 controllers/d800000.pcie-ep/; mkdir functions/pci_epf_test/func5; echo 0x104c > functions/pci_epf_test/func5/vendorid; echo 0xb00d > functions/pci_epf_test/func5/deviceid; echo 1 > functions/pci_epf_test/func5/msi_interrupts; echo 16 > functions/pci_epf_test/func5/msix_interrupts; ln -s functions/pci_epf_test/func5 controllers/d800000.pcie-ep/; mkdir functions/pci_epf_test/func6; echo 0x104c > functions/pci_epf_test/func6/vendorid; echo 0xb00d > functions/pci_epf_test/func6/deviceid; echo 1 > functions/pci_epf_test/func6/msi_interrupts; echo 16 > functions/pci_epf_test/func6/msix_interrupts; ln -s functions/pci_epf_test/func6 controllers/d800000.pcie-ep/; echo 1 > controllers/d800000.pcie-ep/start; echo 1 > /sys/bus/pci/devices/0000:00:00.0/remove; echo 1 > /sys/bus/pci/rescan; Workaround for switch card: No workarounds available.

LCPD-16208

FIFO Underflows during video playback on 4k panel


2.1.7.7. Linux RT Kernel Known Issues

There are no known issues in this release in the Linux RT Kernel.

2.1.8. Change Requests

2.1.8.1. SDK features descoped from 8.4 release

ID

Head Line

Original Fix Version

New Fix Version

JACINTOREQ-4930

k3conf Doc and Test Modify

08.04.00

08.05.00

2.1.8.2. SDK features descoped from 8.0 release

ID

Head Line

Original Fix Version

New Fix Version

JACINTOREQ-1559

Linux H264 decoder support

08.00.00

08.01.00

JACINTOREQ-1485

Linux writeback pipeline support

08.00.00

None

JACINTOREQ-1444

Vision apps inclusion in yocto build

08.00.00

None

2.1.8.3. SDK features present in 7.0 that were descoped in 7.1

Feature

Comments

HS support

Restored in 7.3

SPL/Uboot boot modes restricted to SD card boot mode

Restored in 7.3

1s Linux boot

Descope for support of native H264 encode/decode

Use R5F based driver with OpenVX as interface. H.264 decoder support restored in 7.3

GPU compression

SA2UL driver optimization

Display Sharing

Display sharing demo available in SDK v6.1

Virtualization (Jailhouse hypervisor/IPC virtualization/CPSW9G virtualization)

Does not affect 3P virtualization solutions. Basic Jailhouse demo can be seen in SDK 7.0

2.1.9. Installation and Usage

The Software Developer’s Guide provides instructions on how to setup your Linux development environment, install the SDK and start your development. It also includes User’s Guides for various Example Applications.


2.1.10. Host Support

For the specific supported hosts for current SDK, see this page.

Note

Processor SDK Installer is 64-bit, and installs only on 64-bit host machine.