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.

mapping .args section for elf loader

I'm trying to pass arguments to the DSP via the elf loader, but I'm getting:

*** ProcMgr_read: Address is not mapped!                                                                                                                                                                        
        Error [0xfffffff3] at Line no: 1818 in file /home/elron/Documents/mk4dev/syslink_2_10_06_28/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/procMgr/common/ProcMgr.c              
*** ElfLoaderTrgWrite_write: Failed to write to target memory!                                                                                                                                                  
        Error [0xfffffff3] at Line no: 761 in file /home/elron/Documents/mk4dev/syslink_2_10_06_28/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/procMgr/common/loaders/Elf/ElfLoader.c 

how do I make the .args section writable (in either DDR or "L3")?

Thanks

  • Try adding something like this to your config file:

            Program.sectMap[".args"] = new Program.SectionSpec();
            Program.sectMap[".args"].loadSegment = "DDR";

    Alan

  • There seems to be a problem loading arguments with the Elf loader for SysLink.  Adding those lines does not fix the problem.

    Thanks,

        Janet

  • Is this a new defect?  The 2.10.00.12 release notes claim that the elf loader supports .args (SDOCM00075737)

    BTW, I tried rebuilding everything for COFF, but I got a kernel panic in the CoffLoader

  • Elron,

    Yes, this is a new defect.  It seems a bug was introduced after the 2.10.00.12 release.  We are working on a fix.

    Best regards,

        Janet

  • Elron,

    We have found the cause of the problem (introduced in SysLink 2.10.04) and filed a defect report for it (SDOCM00094031).  This will be addressed in the coming weeks.  Thanks for reporting this.

    Best regards,

        Janet

  • Elron,

    We have fixed this bug; it will be available in the SysLink 2.10.08 release. I've also attached a patch file with the fix in case you want to apply the patch yourself and rebuild SysLink. The patch is made on the SysLink 2.10.07.31 release but will probably apply to your SysLink 2.10.06.28 just as well.

    Apply the patch to your SysLink install. Use the --dry-run option on the first run to make sure all is well. Then repeat again without it to actually apply the patch.

    cd syslink_2_10_07_31
    patch [--dry-run] -b -p2 -i syslink_2_10_07_31_args.patch

    Rebuild SysLink

    make syslink

    This will build a new driver (syslink.ko) with the fix in it. I don't think you need to relink your application, but its always a good idea to do so.

    ~Ramsey

    syslink_2_10_07_31_args.patch