We designed a board using TS101S processor at 300MHz. Schematics taken from EZ-KitLite. The card is up and fine. JTAG scan passes and enters the Emulator Session via USB-ICE without any issue. We have not yet written anything in the boot flash, so the boot flash is blank. After power on, the first thing we do is, enter via USB-ICE emulator and execute the following instruction (as ADSP-TS101 TigerSHARC Processor Hardware References Manual v1.1 on page 2-34 and 5-11 says that SYSCON can be written only once after power-on hardware reset, later writes are ignored):
__builtin_sysreg_write (__SYSCON, 0x003279E7); // This is required configuration for Memory width and Host I/f
But what is read using __builtin_sysreg_read() function is 0x001A79E7.
We tried to understand why this issue is coming. We again powered on the card (hardware reset) and accessed the processor through the USB-ICE emulator session. We did not load any code this time. We accessed the SYSCON register from the register pull down menu of the VisualDSP++ SDK. Found that it is 0x001A79E7. The hardware manual (page 2-34) says the default value should be 0x000279E7
The question is does VisualDSP++, when it enters emulator session via USB-ICE emulator, program some registers before giving control to the user to compile/load/execute the code. Does it program SYSCON with some value. If so, how do we disable this.