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.02.00

Released March 2022

What’s New

Processor SDK 8.2 Release has following new features:

  • QSGMII in CPSW9G using virt-net (simultaneously work with PCIe using SERDES sharing feature)

  • Video Encode

2.1.6. Build Information

2.1.6.1. U-Boot

Head Commit: 44a87e3ab85c6d64044f0b5ad677008316baad70 ARM: dts: k3-j721s2: Correct timer frequency
Date: Wed Mar 16 17:05:52 CDT 2022
uBoot Version: 2021.01
uBoot Description: 08.02.00.006
Clone: git://git.ti.com/ti-u-boot/ti-u-boot.git
Branch: 08.02.00.006
uBoot Tag: 08.02.00.006
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 <https://git.ti.com/cgit/jacinto-linux/meta-psdkla/tree/recipes-bsp/u-boot/u-boot-ti-staging?id=5560e99ab3ffe0b67e1e5298ff4694ab3860325f>.

2.1.6.2. Kernel

Linux Kernel

Head Commit: 7a7a3af903da2b2d551d058f8262a66e6b42b6b1 Merged TI feature connectivity into ti-linux-5.10.y
Date: Wed Mar 16 12:00:19 CDT 2022
Kernel Version: 5.10.100
Kernel Description: 08.02.00.006
Clone: git://git.ti.com/ti-linux-kernel/ti-linux-kernel.git
Branch: ti-linux-5.10.y
Tag: 08.02.00.006
Kernel defconfig: ti_sdk_arm64_release_defconfig
Compiler Information: aarch64-none-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10))

Real Time (RT) Linux Kernel

Head Commit: 204ec708dc86f4334f585f04835527570be1c4eb Merged TI feature ti_linux_base_rt into ti-rt-linux-5.10.y
Date: Wed Mar 16 14:53:35 CDT 2022
Kernel Version: 5.10.100
RT Kernel Version: 5.10.100-rt62
Kernel Description: 08.02.00.006-rt
Clone: git://git.ti.com/ti-linux-kernel/ti-linux-kernel.git
Branch: ti-rt-linux-5.10.y
Tag: 08.02.00.006-rt
Kernel defconfig: ti_sdk_arm64_rt_release_defconfig
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 Linux Kernel here <https://git.ti.com/cgit/jacinto-linux/meta-psdkla/tree/recipes-kernel/linux/linux-ti-staging/j7-evm?id=5560e99ab3ffe0b67e1e5298ff4694ab3860325f>.

2.1.6.3. Yocto

meta-ti

Head Commit: facd5397cdc5c35c69e7a8e8f908a98a5c23d270 u-boot-ti-staging: Bump to 08.02.00.006 release
Date: 2022-03-08
Version: dunfell-3.1
Clone: git://git.yoctoproject.org/meta-ti
Branch: dunfell
Release Tag: 08.02.00.006

meta-arago

Head Commit: 382ca36beb21a524de726bfd1c57e3d26f10cf82 recipes-core: images: Add tisdk-thinlinux-image
Date: 2022-03-08
Version: 2021.09
Clone: git://git.yoctoproject.org/meta-arago
Branch: dunfell
Release Tag: 08.02.00.006

meta-psdkla

Head Commit: 5560e99ab3ffe0b67e1e5298ff4694ab3860325f recipes-demo: wifi-oob: Disable Station mode by default
Date: 2022-03-22
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

Summary

LCPD-24615

j721e-hsevm V1.1 fails to boot

LCPD-24630

SDK: multimedia: gstreamer tests fail due to incorrect fw path

LCPD-24308

linux/Documentation/devicetree/bindings/sound/davinci-mcasp-audio.txt Convert to YAML

LCPD-23019

OPTEE tests are failing (Impact 5)

LCPD-22812

Upstream: reserved-memory.txt convert to yaml

LCPD-20310

Upstream: Timeout behavior inconsistency seen in upstream R5 SPL

LCPD-24510

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

LCPD-24450

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

LCPD-22549

v4l2h264dec : application hangs when setting the pipeline to null

LCPD-24633

u-boot: j721e-sk: Update MAIN R5FSS cluster mode to Split-mode

LCPD-24429

j721e-idk-gw Crypto HW Perf Tests fail (Impact 4)

LCPD-24413

J721e: ES1.1-HS: sysfw binary building steps

LCPD-24211

J721e: Fix guard for FS_LOADER

LCPD-22841

Watchdog Timer test is failing (Impact 5.0)

LCPD-24192

J721E: Fix Video decoder documentation

LCPD-24144

TDA4VM/J721e: An indirect write completion error occurred in the linux OSPI driver

LCPD-24486

smatch reports potential dereference of ERR_PTR

LCPD-21986

j721e U-Boot DDR50 mode cannot be tested using the default image

LCPD-24085

U-Boot: Fix FIT load addresses for DM firmware

LCPD-18270

Ivi shell test fails. Lib ivi-controller.so and other components are missing from the file system

LCPD-16130

Exception triggered by drm_dev_unregister during poweroff

LCPD-24632

multimedia: multinode build is causing random failures in kernel

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

Record ID

Summary

LCPD-25519

J7: R5 SPL tick timer frequency is wrong

LCPD-24664

j721e-hsevm pg1.0 fails to boot

LCPD-25337

j721e Failing DFU Test

LCPD-25270

J721E: Fix the bootcmd

LCPD-25014

ramfs boot fails when using tisdk-base-image

LCPD-25257

Failing DRM Test (Impact 7)

LCPD-24859

j721e: TPS659413: Correct the min/max voltages of VDD_CPU

LCPD-24695

J7: gstreamer launch failure

LCPD-25194

j721e IPC failures (impact 7)

LCPD-25260

j721e: codec: fix memory leak in driver

LCPD-24845

U-Boot: j721e 1.1 is detecting as 2.0

LCPD-24734

Encoder: V4L2 tests are failing for NV12,H264

LCPD-24777

j721e SR1.1 version reported incorrectly in U-Boot

2.1.7.3. Errata workarounds

Record ID

Summary

Workaround

ErrataID

LCPD-19965

OSPI PHY Controller Bug Affecting Read Transactions

i2189

LCPD-19068

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

i2097

LCPD-19047

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

i2067

LCPD-18980

PCIe: Gen2 capable endpoint devices always enumerate as Gen1

i2085

LCPD-17220

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

i2088

LCPD-16605

MMC: MMC1/2 Speed Issue

i2090

2.1.7.4. SDK Known Issues

Record ID

Summary

Workaround

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 graphics test

LCPD-25330

Video seek feature breaks with buffer import patch

LCPD-25221

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

LCPD-24757

Encoder: Multi-channel H264 test failing on j7-sk

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-24290

Decoder + kmssink elements generates pink and green frames blinking

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-22542

v4l2h264dec is giving high latency compared to SW decoder

LCPD-21298

Frame Buffer Decompression does not show expected improvement

LCPD-20620

J721e: Gstreamer warning seen with video decoder mjpeg test

LCPD-19948

Yocto: stream recipe is incorrect

LCPD-19894

UYVY texture test fails due to internal data stream error

LCPD-19858

OE: OPTEE label used in SDK is old and wrong

LCPD-19716

GFX_XS_FUNC_UYVY_TEXTURE test fails

LCPD-17387

Underflow and CRTC SYNC LOST observed while running GLMark2 (1x1080p + 1x4k)

LCPD-17304

Error Recovery Test for VDEC_ERROR_SR_ERROR does not trigger error

LCPD-17283

Running Gstreamer’s gst-discoverer causes a crash

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

Summary

Workaround

LCPD-25502

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

LCPD-25075

J721E: revE8 SoM board doesn’t boot consistently

LCPD-24115

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

LCPD-24507

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

LCPD-24248

J7 Alpha board (rev E2A) no booting with PSDK8.0

LCPD-22964

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

LCPD-22904

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

LCPD-22451

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

LCPD-19776

j7: uboot: some socketed evms fail to boot

LCPD-17523

A72-SPL - Support to dump EEPROM to shared memory

LCPD-24231

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

LCPD-22512

Update dfu_alt_info_ospi to include flashing of PHY tuning data

LCPD-17789

UBOOT J7: Could not see UFS device by scsi scan

LCPD-19871

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

LCPD-22452

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

LCPD-25535

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

LCPD-24108

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

2.1.7.6. Linux Kernel Known Issues

Record ID

Summary

Workaround

LCPD-25512

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

LCPD-25511

CPSW2G: TSN (EST) : Incorrect cycle time observed while running manual test

LCPD-24873

PCIe: Observing random aborts with PCIe on J721E

LCPD-24142

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

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-24125

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

LCPD-24456

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

LCPD-17284

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

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-25469

j721e USB OTG HOST regressions on eptf126

LCPD-25112

Ethernet driver not gating its clock when interface is down

LCPD-24810

J721E Documentation: configurator descriptor binary (config_desc_data_ind_0) is missing in the UFS section

LCPD-24798

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

LCPD-24677

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

LCPD-24589

no new usb reported on host after g_multi

LCPD-24491

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

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-22487

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

LCPD-20240

MMC Modular testcase regression

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-17814

Kingston 16G card could not boot to uboot prompt

LCPD-17794

ext4write failed to write firmware to SD card

LCPD-17421

CPSW9G: Can’t bring up interface over NFS

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-16640

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

LCPD-16628

Could not enumerate PLEXTOR pcie SSD

LCPD-16591

PCIe wifi ping stress test failed

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-24198

J721e-sk stress boot test files

LCPD-23010

j721e-idk-gw stress boot test files

LCPD-22861

Missing documentation for HS devices

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

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-20653

ltp: kernel syscall tests fail

LCPD-19792

j721e boot fails sometimes due to EL1 exception

LCPD-18860

isolcpus in the command line is not honored

LCPD-18684

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

LCPD-18258

IPSEC perfomance failures

LCPD-17798

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

LCPD-17673

No software documentation for the Timer module

LCPD-17543

Some cpuhotplug tests failed

LCPD-16505

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

LCPD-24502

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

LCPD-19068

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

LCPD-17387

Underflow and CRTC SYNC LOST observed while running GLMark2 (1x1080p + 1x4k)

LCPD-17017

J7: DSS underflows seen on various use cases

LCPD-17006

4k DP Display Shows Blank Screen sometimes when booting

LCPD-16836

DP: GeChic display EDID read failures with custom DP cable

LCPD-16454

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

LCPD-16451

DP: if cable is not connected, DPCD transactions mess up the driver

LCPD-16208

FIFO Underflows during video playback on 4k panel

LCPD-22513

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

LCPD-20290

CPSW Performance regression on j721e-idk-gw

LCPD-18790

eMMC tests failed on J7 rev E2 EVM

LCPD-22831

Application takes 10-15 seconds to come up in some cases

LCPD-25385

j721e IPC regression

LCPD-25321

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

LCPD-25501

j721e USB3 MSC detection in Uboot

LCPD-25491

j721e-idk-gw: CPSW2G Promisc failure

LCPD-24871

J721E-SK: SPL: DFU boot test failed

LCPD-24596

j721e-idk-gw MMC MOD tests fail (Impact 1.7)

LCPD-24595

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

LCPD-22339

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

LCPD-25504

j721e-hsevm fails to boot over UART

LCPD-25319

j721e-hsevm fails pg1.0 board in test farm fails to boot

LCPD-25252

Docs: OPTEE SDK documentation is very minimal

LCPD-25187

ATF: Support PSCI call for system reset

LCPD-24680

missing document how to boot to Linux prompt in USB MSC boot mode

LCPD-24631

J721e-idk-gw H264 Decoder Support Test Gap

LCPD-24511

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

LCPD-24129

tinyFS not present in coreSDK 8.0

LCPD-25496

j721e ALSA PERF failure


2.1.7.7. RT Linux Kernel Known Issues

No known issues


2.1.8. Change Requests

2.1.8.1. 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.2. 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.