NOTICE: The Processors Wiki will End-of-Life in December of 2020. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.
EZSDK Firmware Loader vs Slaveloader FAQ
- 1 Introduction
- 2 Loading of Slave Cores
- 3 What is Slaveloader?
- 4 What is Firmware Loader?
- 5 What is Proc Loader?
- 6 Why does the PSP, Syslink and HDVPSS recommend using Slaveloader but the EZSDK recommend using Firmware Loader?
- 7 How do I know which loader to use?
- 8 Where can I find the source code for slaveloader?
- 9 Where can I find the source code for firmware loader?
- 10 Download the Latest EZSDK
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.
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.