This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

cortex M4-app

Other Parts Discussed in Thread: SYSBIOS

Hello ,

I have a customized omap5 board basically for In Vehicle Infotainment running QNX.

I am planning to develop a cortex M4 application.

But when I read some links related to SysBIOS and Syslink, I get following doubts.

1. What is the difference between the .xem3 file and .bin file for cortex M4? 

2. Does .xem3 file also contain the RTOS SysBIOS compiled sources OR is it an application image?

3. How to decide whether I need to build .xem3 OR  .bin ?

Not much is given very clearly regarding the rtos images and application images  in the wiki for sysbios and syslink and hence the above doubts.

regards

Yogesh

  • Hello Yogesh,

    The answers on your questions are:

    #Q1: What is the difference between the .xem3 file and .bin file for cortex M4?

    - A firmware binary is generated from the individual ELF executables of the remote cores, e.g. the .xem3 files. The genrprc utility adds version information by walking down the directory paths from where the executable are located. As such, it is strongly recommended to not relocate the exectables prior to running genrprc.

    For proper execution of the custom binary, it always needs to be copied as *m4.bin to the required file system path, typically /lib/firmware for generic Linux.

    #Q2: Does .xem3 file also contain the RTOS SysBIOS compiled sources OR is it an application image?
    - The .xem3 files contain application images. 

    A default firmware binary, *m4.bin is generated in the <sysbios-rpmsg root>/src/utils directory, using two of the sample baseimages in sysbios-rpmsg tree. The *m4.bin is generated by post-processing two ELF baseimages or these are .xem3 files: *sysm3.xem3 and *appm3.xem3.

    #Q3: How to decide whether I need to build .xem3 OR .bin?

    - You must build .bin files. These files are loaded into the M4 processor cores. A basic *m4.bin is generated by default when SYS/BIOS RPMsg is built.

    In addition, to produce your own firmware binary, use the genrprc utility found in the <sysbios-rpmsg root>/src/utils directory. It is a script file typically invoked from within the src/utils directory.

    For more information refer to the link - http://omappedia.org/wiki/RPMsg_BIOS_Sources

    Best regards,

    Yanko