SC589 Fails to run from 1GB DDR3 on custom board.

I have a custom board that uses the SC589 with 2X 1GB DDR3 modules (Alliance AS4C512M16D3L) but I cannot get my code run standalone.

I have written a simple led toggle program that works when run with the preload code and ice1000 debugger in CCES -  I can see that the program is running from 0xC1000000 and view the memory contents with the memory viewer but when I create a loader file using the init code and copy it to the onboard NOR Flash using CLDP with sc589_w25q128fv_dpia_Core1.dxeit it does not run.

I can see with a scope that the init code loads and that both DMC controllers are initialised by toggling a LED and I can see that it tries to load the main application to DDR3 by looking at the SPI flash lines but then it does nothing? I have changed the linker file so that it all runs from internal RAM and it works. Any help would be greatly appreciated.