Please note as of Wednesday, August 15th, 2018 this wiki has been set to read only. If you are a TI Employee and require Edit ability please contact x0211426 from the company directory.

EZSDK Firmware Loader vs Slaveloader FAQ

From Texas Instruments Wiki
Jump to: navigation, search

Introduction

One frequently asked question is - what is the difference between Firwmare Loader, Slaveloader, Procloader? This topic provides some information on these. This topic is specific to the EZSDK and the components that make up the EZSDK.

Loading of Slave Cores

DM81xx devices are multi-core devices that have a Cortex A8 ARM running Linux, media controller accelerator cores for different multimedia operations and a C674x DSP. Taking the Cortex A8 as the master, the media controller and the DSP are slaves. It is the responsibility of the Cortex A8 to bring up the media controller and the DSP. To do that, we use SysLink. SysLink provides us the APIs necessary to load and talk to the different slave cores in the system from Linux.

What is Slaveloader?

Slaveloader is a sample program provided in the SysLink product to load and run different slave binaries.

What is Firmware Loader?

Firmware Loader too is a program that loads and runs different slave binaries. In that sense its not different from Slaveloader. However, it also does additional configuration required for tuning and tweaking the EZSDK Memory Map.

What is Proc Loader?

Early versions of Syslink had a sample program named as such. This has been superceded by the Slaveloader.

Why does the PSP, Syslink and HDVPSS recommend using Slaveloader but the EZSDK recommend using Firmware Loader?

The PSP and Syslink documentation recommend Slaveloader primarily from a demonstration perspective. The sample applications that are loaded do not require any dynamic memory configuration and hence a simple Proc_Load() IPC_Attach() is sufficient. In order to use the full multimedia integrated firmware that is shipped with the EZSDK, the firmware loader is required.

How do I know which loader to use?

When running Syslink or PSP sample applications without any multimedia acceleration, you can use the slaveloader. When using the full OMX multimedia binaries, firmware loader must be used.

Where can I find the source code for slaveloader?

Slaveloader is part of syslink sample applications. You can find it under $EZSDK/component-sources/syslink_xx_xx_xx_xx/packages/ti/syslink/samples/hlos/slaveLoader.

Where can I find the source code for firmware loader?

Firmware Loader is part of Media Controller Utils. You can find it under $EZSDK/board-support/media-controller-utils_xx_xx_xx_xx/src/firmware_loader.

Download the Latest EZSDK

The latest EZSDK is available for download from http://software-dl.ti.com/dsps/dsps_public_sw/ezsdk/latest/index_FDS.html.

The current version is 5.05.02.00. The supported platforms are DM816x and DM814x.

EZSDK Support