Hi everybody,
I'm using EVM6678, mcsdk_2_01_02_06 and ccs_5.2.1.00018. I have tried simple Hello World example application. This application send throw UART Hello world and this work fine with JTAG debugger, but i can´t get to work from NAND memory, COM-Port terminal program gets following:
IBL: PLL and DDR Initialization Complete
IBL Result code 00
IBL: Booting from NAND
IBL: Booting from NAND
IBL: Booting from NAND
IBL: Booting from NAND
..... - many times....
My steps were:
Dip switches: SW3 (off, on, on, on), SW4 (on, on, on, on), SW5(on, on, on, off) - I2C in Master mode ! And SW6 (on, on, on, on).
1. I program i2crom_0x51_c6678_le.bin from \tools\boot_loader\ibl\src\make\bin\ to the EEPROM at I2C BUS address 0x51 using EEPROM Writer CCS project following README.txt from the EEPROM writer project. In the eepromwriter_input.txt file I type:
file_name = app.bin /* i2crom_0x51_c6678_le.bin was renamed to app.bin
bus_addr = 0x51
start_addr = 0
swap_data = 0
At the end I get message: "EEPROM programming completed successfully"
2. In setConfig_c66xx_main() of tools\boot_loader\ibl\src\make\bin\i2cConfig.gel, I replaced
ibl.bootModes[1].u.nandBoot.bootFormat = ibl_BOOT_FORMAT_BBLOB;
with
ibl.bootModes[1].u.nandBoot.bootFormat = ibl_BOOT_FORMAT_ELF;
3. I re-programed the boot configuration table folowing instructions from evmc6678-instructions.txt taken from mcsdk_2_01_02_06
a) I run i2cparam_0x51_c6678_le_0x500.out program from \tools\boot_loader\ibl\src\make\bin.
b) Then I loaded corrected (see p.2 above) GEL-file i2cConfig.gel and run script "EVM c6678 IBL -> setConfig_c6678_main".
c) After press "ENTER" in CCS console the program wrote boot parameter table to EEPROM, and I saw the message "I2c table write complete".
4. After that I programmed my simple application to NAND using nandwriter project from \tools\writer\nand\evmc6678l following README.txt file in the project:
a) File nandwriter_input.txt was used with default parameters.
b) Program writer\nand\evmc66xxl\bin\nandwriter_evm66xxl.out was loaded to CCS.
c) I loaded my app.out (I had problem convert it to the app.bin. I have tried rename app.out to the app.bin with same result) to memory from address 0x80000000. Type-size was selected as 32-bits.
d) Then nandwriter program was started and binary data was written to NAND flash. At the end I saw message "NAND programming completed successfully" in CCS console.
Then I set dip sweetchers: SW3 (off, off, on, off), SW4 (on, off, on, on), SW5 (on, on, on, off) and SW6 (on, on, on, on).
All steps are OK, but my application does not work from NAND after restart EVM6678 board. Anyone can tell my where is my error ?
I have used post by Andrey Savinkov