Jeff,
(continued from http://e2e.ti.com/support/embedded/f/355/p/89971/327197.aspx#327197)
OK. Now I am to the point where all of my ARM code is working as it should, as well as my actual DSP application code. I need to program these two .out files into my SPI flash.
As stated in an earlier post (thanks Mukul http://e2e.ti.com/support/dsp/omap_applications_processors/f/42/p/136393/490578.aspx#490578) my ARM initialization code works as expected when programmed (separately) into SPI Flash. However, when I use AISGen to create a combined file for ARM+DSP neither the ARM nor DSP code operates after power-on booting.
I can start a debug session, connect to the ARM and see that the code is properly loaded into the desired shared ram location. However, the ARM program counter is stuck at a point in IRAM (0xFFFD397C) instead of c_int00 (ENTRY POINT SYMBOL: "_c_int00" address: 80008064). If I set the PC to 0x80008064, then hit Run, the ARM program runs properly, confirming that the SPI Flash loaded the ARM code properly. But, after a power-on reset, the ARM is stuck in IRAM.
I can also connect to the DSP and look at its program memory. The code appears to be loaded properly but the DSP is stuck somewhere in DSP/BIOS around TSK_exit. I cannot get the DSP app to run by entering 0xc0000000 into the PC, which is where I have set the HOST1CFG value in the ARM init code (SYSCONFIG->HOST1CFG = (0xC0000000 & 0xFFFFFC00); //DSP boot address @ power-on reset.).
Here is my AISGen cfg file FYI
Boot Mode=SPI1 Flash
Boot Speed=10
Flash Width=0
Flash Timing=3ffffffc
Configure Peripheral=True
Configure PLL0=True
Configure SDRAM=False
Configure PLL1=True
Configure DDR2=True
Configure LPSC=False
Configure Pinmux=True
Enable CRC=False
Specify Entrypoint=False
Enable Sequential Read=False
Use 4.5 Clock Divider=False
Use DDR2 Direct Clock=False
Use mDDR=True
ROM ID=0
Device Type=0
Input Clock Speed=24
Clock Type=0
PLL0 Pre Divider=1
PLL0 Multiplier=25
PLL0 Post Divider=2
PLL0 Div1=1
PLL0 Div3=12
PLL0 Div7=6
PLL1 Multiplier=25
PLL1 Post Divider=2
PLL1 Div1=1
PLL1 Div2=2
PLL1 Div3=3
Entrypoint=0
SDRAM SDBCR=0
SDRAM SDTMR=0
SDRAM SDRSRPDEXIT=0
SDRAM SDRCR=0
DDR2 PHY=c4
DDR2 SDCR=a034622
DDR2 SDCR2=0
DDR2 SDTIMR=1c912a08
DDR2 SDTIMR2=3811c700
DDR2 SDRCR=494
LPSC0 Enable=
LPSC0 Disable=
LPSC0 SyncRst=
LPSC1 Enable=
LPSC1 Disable=
LPSC1 SyncRst=
Pinmux=
App File String=C:\Users\Mike\TI Workspaces\AMX_9-20-11\ARM_init_simple\Debug\ARM_init_simple.out;C:\Users\Mike\TI Workspaces\AMX_9-20-11\DSP_CELT\Debug\DSP_CELT.out
AIS File Name=C:\Users\Mike\TI Workspaces\AMX_9-20-11\ARM_init_simple\Debug\arm+dsp.bin
Any ideas on how to debug this?