• Resolved

OMAP3530 DSP core application load via XDS100v2


it is very urgent issue for me. I got some informations from this forum about JTAG connection, but still can't make it working on my board (BeagleBoard). My aim is to create SysBIOS application and load/run it on OMAP3530 DSP core.

So first of all I should have connection to that core. I'm using XDS100v2. I have chosen OMAP3530 in target configuration. The JTAG IR and DR scan-tests finished with success. Here is the source contents and I suppose that at this step all is correct:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<configurations XML_version="1.2" id="configurations_0">
<configuration XML_version="1.2" id="Texas Instruments XDS100v2 USB Emulator_0">
        <instance XML_version="1.2" desc="Texas Instruments XDS100v2 USB Emulator_0" href="connections/TIXDS100v2_Connection.xml" id="Texas Instruments XDS100v2 USB Emulator_0" xml="TIXDS100v2_Connection.xml" xmlpath="connections"/>
        <connection XML_version="1.2" id="Texas Instruments XDS100v2 USB Emulator_0">
            <instance XML_version="1.2" href="drivers/tixds100v2icepick_c.xml" id="drivers" xml="tixds100v2icepick_c.xml" xmlpath="drivers"/>
            <instance XML_version="1.2" href="drivers/tixds100v2c64xp.xml" id="drivers" xml="tixds100v2c64xp.xml" xmlpath="drivers"/>
            <instance XML_version="1.2" href="drivers/tixds100v2dap_pc.xml" id="drivers" xml="tixds100v2dap_pc.xml" xmlpath="drivers"/>
            <instance XML_version="1.2" href="drivers/tixds100v2cortexA.xml" id="drivers" xml="tixds100v2cortexA.xml" xmlpath="drivers"/>
            <instance XML_version="1.2" href="drivers/tixds100v2cs_child.xml" id="drivers" xml="tixds100v2cs_child.xml" xmlpath="drivers"/>
            <instance XML_version="1.2" href="drivers/tixds100v2etbcs.xml" id="drivers" xml="tixds100v2etbcs.xml" xmlpath="drivers"/>
            <property Type="choicelist" Value="3" id="The JTAG TCLK Frequency (MHz)"/>
            <platform XML_version="1.2" id="platform_0">
                <instance XML_version="1.2" desc="OMAP3530_0" href="devices/OMAP3530.xml" id="OMAP3530_0" xml="OMAP3530.xml" xmlpath="devices"/>

Then comes the trouble. Trying to connect to C64x+ I get error: Device functional clock appears to be off. Power-cycle the board. If error persists, confirm configuration and/or try more reliable JTAG settings (e.g. lower TCLK).

Thanks to Ki-Soo Lee in this thread: http://e2e.ti.com/support/development_tools/code_composer_studio/f/81/p/226336/804419.aspx#804419
 I know that I need to release DSP with appropriate GEL file or do it via ARM core (Syslink ProcMgr_start() I think is a good idea, but this is not what I want now, I will test it later). In my case I suppose it should be GEL file. In CCSv5.3 in that target configuration I have two GEL files related to DSP core: one is the main and it has only StartUp() function which loads CrossTrigger GEL file. I suppose it is used somehow only when ARM calls DSP.

ARM GEL files looks complex. The most useful description about GEL files I have found is spraa74a.pdf. But for a newbie like me it is too complicated to create my own GEL to release DSP core.

So what do do with it? Is it possible to find somewhere such a GEL file? Or people just don't use OMAP3530 in that way (Maybe I'm wrong, but it sounds reasonably for me; if someone wants only DSP ,there are other products) ? And then I should focus on SysLink rather and try to use JTAG for debugging? Please give me some advices...

------- EDIT:

I see however that people use DSP core directly: http://processors.wiki.ti.com/index.php/Creating_a_New_DSP_BIOS_Project_on_OMAP35x

If only that instruction would be not so obsolete. But from this wiki I see there are somewhere GEL files for that OMAP.

  • Probably just found a solution. I first connect to Cortex-A8 and then run IVA22_GEM_startup script. It causes Cortex_A8_0: result: C64x+ release from reset.

    Then I'm able to run hello_world example :D