Hello !
I'm using EVM6678 and mcsdk_2_00_05_17. I try to program my simple application to NAND. This application must read simbols from UART and send them back to PC. But when I completed all things to program my application and restart EVM6678 board, I see that my application is not running from NAND. 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 older mcsdk_2_00_00_09 because I didn't found so detailed instructions about the subject in newer mcsdk_2_00_05_17:
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) I generated .bin file from my .out program with tiobj2bin.bat utility: " tiobj2bin.bat app.out app.bin ofd6x.exe hex6x.exe mkhex4bin.exe". as a result, I got app.bin file (~95 kB) from app.out file (~530 kB).
b) File nandwriter_input.txt was used with default parameters.
c) Program writer\nand\evmc66xxl\bin\nandwriter_evm66xxl.out was loaded to CCS.
d) I loaded my app.bin to memory from address 0x80000000. Type-size was selected as 32-bits.
e) 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 ?