The following are detailed steps for I2C boot:

1. Remove .gel file in your ccs setup. Some .gel file will configure PLL1 and reset DSP automatically which may not be good for debugging.
2. Power off the board and put the DSP in no-boot mode 
3. Power up board 
4. Program I2C:
	a. Open CCS and one core (say core 0 on the first device)
	b. Debug->Connect
              c. set PLL to bypass mode by setting address 0x29a0100 to 0x40
	d. File->Load Program -> Boottest/Utilities/eeprom_0x50.out
              e. File->Data->Load -> I2Cboot\output\i2cromfara.ccs
              f. View -> Watch window -> click on Watch 1 tab, enter "status", and change the radix to "hex"
	g. Debug -> Run. 
              h. After say 10 sec, Halt. "status" should be 0x55AA (means I2C programming succeeded).
5. Close CCS, Power off the board, change to bootmode 1
6. Power up the board
7. Use CCS, Debug->Connect. Register A1 = 0X11223344.
 
The PC should be at the following line:
00810024 0001A120            BNOP.S1       0x810024 (PC+4 = 0x00810024),5

Notes on EVM revision:

Faraday EVM up to Rev D are setting DEVNUM=0 in DEVSTAT register, i2cromfara.ccs will work on those EVMs.
However on Faraday EVM Revision F and G, DEVNUM has changed to 1, I2c dev address offset is based on DEVNUM*0x80,
The address offset will need to be changed accordingly.  Use i2cromfara_DEVNUM_IS_1.ccs on Rev E, Rev F and Rev G EVMs.

Also notes that using I2Cboot.bat will only generate i2cromfara.ccs for DEVNUM=0, you can manually update the i2cromfara.ccs
line 3 and 7 based on i2cromfara_DEVNUM_IS_1.ccs for EVM with DEVNUM=1.

