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.

CCS/AM6548: Generating .xer5f files for R5

Part Number: AM6548
Other Parts Discussed in Thread: SYSBIOS

Tool/software: Code Composer Studio

Hi all,

I am trying to figure out how to generate a .xer5f and  a.xer5f.map output application files from the .out file for the R5 core (generated in CCS).

In order to study this I have created the USB_DevBulk example application for the R5 core using the pdkProjectCreate.bat (of which the makefiles first had to be changed in order to use this .bat file). Building the example is successful from within CCS, However when the MulticoreImage is generated (which I assume creates .xer5f from the .out file) from the below post build step, I get an error that the specified path could not be found:

What is the cause of this? From the pdkAppImageCreate.bat file, the K3ImageGen.bat file within the SBL boot directory gets called succesfully, however from here the specified path somehow seems to get lost? (Error message is in Dutch: Het systeem kan het opgegeven pad niet vinden) Is this the process which creates the .xer5f files?

I currently have another custom project of which the R5-core .out file can not be uploaded onto the AM65x development board from address 0x000000. I have read through all the SBL documenation and it appears that I need the .xer5f extenstion of the output file. How do I generate this file? What is the difference of this file compared to the .out file? I am a bit confused, so information regarding the booting and debugging of applications on the R5-core would be much appreciated

I hope to hear from you soon!

I am using CCS 910, pdk_am65xx_1_0_4, sysbios 6.75.02, xdctools3.55

Kind regards,

Johnny Smith

  • Johnny,

    The application file with extension .xer5f and .out are both files in ELF binary format created using TI ARM compiler. The Processor SDK avoids using .out since it is difficult for users to differentiate between .out for A53 and R5F or any other cores so .xer5f and .xea53fg extensions are used.

    The CCS Compiler settings allows you to specify custom extension for application binaries  using --output_file 

    http://www.ti.com/lit/ug/spnu151r/spnu151r.pdf

    You are correct, the error message that you observed is from the pdkAppImageCreate.bat. From the log, I can see that the .out was converted to .out2rprc and then to multicoreImage format. The error may be showing up as you didn`t provide a application for the A53 cores but that can be ignored. Can you go to the Debug folder of the project and tell us if there is a file called "app" and there is a intermediate file with extension .rprc. 

    If the answer is yes, then despite the warning indicated the SD bootable "app" file seems to be created correctly as per the procedure described here:

    http://software-dl.ti.com/processor-sdk-rtos/esd/docs/latest/rtos/index_Foundational_Components.html#building-the-sbl-and-its-components( Check section "Converting ELF executables to SBL loadable image")

    pdkAppImageCreate script only automates the steps described in the software user guide.

    Regards,

    Rahul

  • Hi Rahul,

    Thanks for your reply.

    The app and .rprc file is located withing the Debug folder.

    I do however still have questions regarding the .xer5f and .xea53fg extensions. So basically the .out file is the same as its .xer5f and .xea53f counterparts, with the difference being that the latter files makes it easier to identify on which core the binaries should be uploaded and executed?

    When building the example projects from the command line (using gmake) the binaries are of .xer5f extension, while when building the example projects from CCS and pdkProjectCreate.bat the output binaries are of .out extension. The only settings that thus has to be changed within CCS, is the below:

    The settings below,

     

    are changed to,

    Is there any other settings that has to be changed within CCS? The project builds succesfully with a .xer5f binary extension, which is good. I just get an error message at the pdkAppImageCreate.bat file again, but I think this can be ignored again, as I think .out2rprc cannot execute a .xer5f2rprc.

    I will test from here whether I can successfully upload binaries to the R5f core using the .xer5f extension.

    I look forward to your reply, and once again thanks for your help always Rahul.

    Regards,

    Johnny

  • Johnny Smith said:
    I do however still have questions regarding the .xer5f and .xea53fg extensions. So basically the .out file is the same as its .xer5f and .xea53f counterparts, with the difference being that the latter files makes it easier to identify on which core the binaries should be uploaded and executed?

    Your understanding is correct.

    Johnny Smith said:
    When building the example projects from the command line (using gmake) the binaries are of .xer5f extension, while when building the example projects from CCS and pdkProjectCreate.bat the output binaries are of .out extension. The only settings that thus has to be changed within CCS, is the below:

    That is correct. To have the same application binary extension as used in the makfiles --outfile option needs to be changed from .out to .xer5f

    Johnny Smith said:
    Is there any other settings that has to be changed within CCS? The project builds succesfully with a .xer5f binary extension, which is good. I just get an error message at the pdkAppImageCreate.bat file again, but I think this can be ignored again, as I think .out2rprc cannot execute a .xer5f2rprc.

    No, the error may be caused as the pdkAppImageCreate hard codes the extension to .out which you may need to manually update. The out2rprc treats the input as ELF binary and doesn`t care about the extension as far as I know. In addition, also just sanity check the K3ImageGen.bat used from the pdkImageCreate.bat