1 EEPROM Writer Utility
3 EEPROM Writer is a simple utility to program a CCS format image/data file to I2C EEPROM.
5 Steps to program the EEPROM with a CCS format data file (.out or .dat):
7 1. Be sure to set the boot mode dip switch to no boot/EMIF16 boot mode on the EVM.
9 2. Copy the CCS format data file to writer\eeprom\evmxxxx\bin directory, and rename it to app.dat.
11 3. Change the file_name, bus_addr, start_addr and swap_data in writer\eeprom\evmxxxx\bin\eepromwriter_input.txt if necessary.
12 By default the EEPROM writer will load app.dat to DSP memory and write the data to I2C slave
13 bus address 81 (0x51) at EEPROM device start byte address 0 with data swap disabled (0).
15 4. Open CCSv5 and launch the evmxxxx emulator target configuration and connect to core 0.
17 5. Load the program writer\eeprom\evmxxxx\bin\eepromwriter_evmxxxx.out to CCS, be sure evmxxxx.gel is used in CCS
18 and DDR is intialized.
20 6. Open the Memory view (in CCSv5, view->Memory Browser), and view the memory address 0x0C000000.
22 7. Load app.dat to 0x0C000000:
23 * In CCSv5, right click mouse in memory window, select "load memory".
24 * Browse and select writer\eeprom\evmxxxx\bin\app.dat.
25 * Select the option "Use the file header information to set the start address and size of the memory block to be
26 loaded" and click "next".
27 * Change the Start Address to "0x0C000000" if it is not 0x0C000000, and click "finish".
29 8.After the data file is loaded into the memory, run the program (in CCSv5, press F8), it will start to program the
30 EEPROM.
32 9.When programming is completed, the console will print "EEPROM programming completed successfully", if there
33 is any error, the console will show the error message.
35 Steps to program the EEPROM with a binary file (.bin):
37 1. Be sure to set the boot mode dip switch to no boot/EMIF16 boot mode on the EVM.
39 2. Copy the binary file to writer\eeprom\evmxxxx\bin directory.
41 3. Change the file_name, bus_addr, start_addr and swap_data in writer\eeprom\evmxxxx\bin\eepromwriter_input.txt if necessary.
42 Make sure that file_name is set to the name of your binary file.
44 *By default the EEPROM writer will load app.dat to DSP memory and write the data to I2C slave
45 bus address 81 (0x51) at EEPROM device start byte address 0 with data swap disabled (0).
47 4. Open CCSv5 and launch the evmxxxx emulator target configuration and connect to core 0.
49 5. Load the program writer\eeprom\evmxxxx\bin\eepromwriter_evmxxxx.out to CCS, be sure evmxxxx.gel is used in CCS
50 and DDR is intialized.
52 6. Open the Memory view (in CCSv5, view->Memory Browser), and view the memory address 0x0C000000.
54 7. Load your .bin file from step 3 to 0x0C000000:
55 * In CCSv5, right click mouse in memory window, select "load memory".
56 * Browse and select your binary file.
57 - By default, the browse menu only displays .dat files. You will have to change the option
58 TI Data Format (*.dat) to Raw Data Format (*.bin) to find your binary file.
59 * Click "Next".
60 * Change the Start Address to "0x0C000000" if it is not 0x0C000000.
61 * Change the Type-size to 32 bits if it is not 32 bits.
62 * Make sure the swap checkbox is unchecked.
63 * click "Finish".
65 8.After the data file is loaded into the memory, run the program (in CCSv5, press F8), it will start to program the
66 EEPROM.
68 9.When programming is completed, the console will print "EEPROM programming completed successfully", if there
69 is any error, the console will show the error message.
71 Steps to re-build eepromwriter:
73 1. Uses CCS to build eepromwriter:
74 * Import the eepromwriter CCS project from writer\eeprom\evmxxxx directory (in CCSv5, Project->Import Existing CCS/
75 CCE Eclipse Projects).
76 * Clean and build the eepromwriter project.
77 * After the project build is completed, eepromwriter_evmxxxx.out and eepromwriter_evmxxxx.map will be generated under
78 writer\eeprom\evmxxxx\bin directory.
80 2. Uses Makefile to build eepromwriter:
81 NOTE FOR BUILDING ON WINDOWS ENVIRONMENT: For building on windows environment GNU utilities like
82 "make" would be required. The following build procedure should also work on MINGW-MSYS Bourne shell.
84 Before starting the build following environment setup has to be done
85 1) variable C_DIR should be set to the top directory of the Code Generation tools e.g.
86 Linux bash shell:
87 export C_DIR=/opt/TI/TI_CGT_C6000_7.2.1/
88 MSYS bash shell:
89 export C_DIR='"C:/ti/ccsv5/tools/compiler/c6000"'
90 2) Code Generation tool binaries should be in the path e.g.
91 Linux bash shell:
92 export PATH=/opt/TI/TI_CGT_C6000_7.2.1/bin:$PATH
93 MSYS bash shell:
94 export PATH=$PATH:/c/ti/ccsv5/tools/compiler/c6000/bin/
95 3) variable PFORM_LIB_DIR should be set the directory of the Platform Library root, e.g.
96 Linux bash shell:
97 export PFORM_LIB_DIR=pdk_xxxx_x_x_x_xx/packages/ti/platform
98 MSYS bash shell:
99 export PFORM_LIB_DIR='"C:/ti/pdk_xxxx_x_x_x_xx/packages/ti/platform"'
101 The makefile for building the eepromwriter is in the directory "tools/writer/eeprom/evmxxxx"
102 Following are the steps to build eepromwriter, e.g.:
103 cd tools/writer/eeprom/evmxxxx
104 make DEVICE=<device number>
105 supported device numbers are
106 C6678
107 C6670
108 C6657
109 TCI6636K2H
111 Please refer to BIOS MCSDK x.0 User's Guide (http://processors.wiki.ti.com/index.php/BIOS_MCSDK_x.0_User_Guide) for more details.