Copy program evm for mcsdk-210 branch
authorIvan Pang <i-pang@ti.com>
Fri, 3 Feb 2012 17:16:08 +0000 (12:16 -0500)
committerIvan Pang <i-pang@ti.com>
Fri, 3 Feb 2012 17:16:08 +0000 (12:16 -0500)
50 files changed:
factory_images/program_evm_userguide.pdf [deleted file]
program_evm/binaries/evm6455-be/eepromwriter_input50.txt [new file with mode: 0644]
program_evm/binaries/evm6455/eepromwriter_input50.txt [new file with mode: 0644]
program_evm/binaries/evm6457l-be/eepromwriter_input50.txt [new file with mode: 0644]
program_evm/binaries/evm6457l/eepromwriter_input50.txt [new file with mode: 0644]
program_evm/binaries/evm6472l-be/eepromwriter_input50.txt [new file with mode: 0644]
program_evm/binaries/evm6472l/eepromwriter_input50.txt [new file with mode: 0644]
program_evm/binaries/evm6474-be/eepromwriter_input50.txt [new file with mode: 0644]
program_evm/binaries/evm6474/eepromwriter_input50.txt [new file with mode: 0644]
program_evm/binaries/evm6474l-be/eepromwriter_input50.txt [new file with mode: 0644]
program_evm/binaries/evm6474l/eepromwriter_input50.txt [new file with mode: 0644]
program_evm/binaries/evm6670l-be/eepromwriter_input50.txt [new file with mode: 0644]
program_evm/binaries/evm6670l-be/eepromwriter_input51.txt [new file with mode: 0644]
program_evm/binaries/evm6670l-be/nand_writer_input.txt [new file with mode: 0644]
program_evm/binaries/evm6670l/eepromwriter_input.txt [new file with mode: 0644]
program_evm/binaries/evm6670l/eepromwriter_input50.txt [new file with mode: 0644]
program_evm/binaries/evm6670l/eepromwriter_input51.txt [new file with mode: 0644]
program_evm/binaries/evm6670l/nand_writer_input.txt [new file with mode: 0644]
program_evm/binaries/evm6670l/nor_writer_input.txt [new file with mode: 0644]
program_evm/binaries/evm6678l-be/eepromwriter_input50.txt [new file with mode: 0644]
program_evm/binaries/evm6678l-be/eepromwriter_input51.txt [new file with mode: 0644]
program_evm/binaries/evm6678l-be/nand_writer_input.txt [new file with mode: 0644]
program_evm/binaries/evm6678l/eepromwriter_input.txt [new file with mode: 0644]
program_evm/binaries/evm6678l/eepromwriter_input50.txt [new file with mode: 0644]
program_evm/binaries/evm6678l/eepromwriter_input51.txt [new file with mode: 0644]
program_evm/binaries/evm6678l/nand_writer_input.txt [new file with mode: 0644]
program_evm/binaries/evm6678l/nor_writer_input.txt [new file with mode: 0644]
program_evm/configs/evm6455/evm6455-linuxhost.ccxml [new file with mode: 0644]
program_evm/configs/evm6455/evm6455.ccxml [new file with mode: 0644]
program_evm/configs/evm6457l/evm6457l-linuxhost.ccxml [new file with mode: 0644]
program_evm/configs/evm6457l/evm6457l.ccxml [new file with mode: 0644]
program_evm/configs/evm6472l/evm6472l-linuxhost.ccxml [new file with mode: 0644]
program_evm/configs/evm6472l/evm6472l.ccxml [new file with mode: 0644]
program_evm/configs/evm6474/evm6474-linuxhost.ccxml [new file with mode: 0644]
program_evm/configs/evm6474/evm6474.ccxml [new file with mode: 0644]
program_evm/configs/evm6474l/evm6474l-linuxhost.ccxml [new file with mode: 0644]
program_evm/configs/evm6474l/evm6474l.ccxml [new file with mode: 0644]
program_evm/configs/evm6670l/evm6670l-linuxhost.ccxml [moved from factory_images/configs/evm6670l/evm6670l-linuxhost.ccxml with 100% similarity]
program_evm/configs/evm6670l/evm6670l.ccxml [moved from factory_images/configs/evm6670l/evm6670l.ccxml with 100% similarity]
program_evm/configs/evm6670l/evm6670le-linuxhost.ccxml [moved from factory_images/configs/evm6670l/evm6670le-linuxhost.ccxml with 100% similarity]
program_evm/configs/evm6670l/evm6670le.ccxml [moved from factory_images/configs/evm6670l/evm6670le.ccxml with 100% similarity]
program_evm/configs/evm6678l/evm6678l-linuxhost.ccxml [moved from factory_images/configs/evm6678l/evm6678l-linuxhost.ccxml with 100% similarity]
program_evm/configs/evm6678l/evm6678l.ccxml [moved from factory_images/configs/evm6678l/evm6678l.ccxml with 100% similarity]
program_evm/configs/evm6678l/evm6678le-linuxhost.ccxml [moved from factory_images/configs/evm6678l/evm6678le-linuxhost.ccxml with 100% similarity]
program_evm/configs/evm6678l/evm6678le.ccxml [moved from factory_images/configs/evm6678l/evm6678le.ccxml with 100% similarity]
program_evm/gel/README.txt [new file with mode: 0644]
program_evm/logs/logs.txt [new file with mode: 0644]
program_evm/program_evm.js [moved from factory_images/program_evm.js with 53% similarity]
program_evm/program_evm_userguide.doc [moved from factory_images/program_evm_userguide.doc with 50% similarity]
program_evm/program_evm_userguide.pdf [new file with mode: 0644]

diff --git a/factory_images/program_evm_userguide.pdf b/factory_images/program_evm_userguide.pdf
deleted file mode 100644 (file)
index f12ba80..0000000
Binary files a/factory_images/program_evm_userguide.pdf and /dev/null differ
diff --git a/program_evm/binaries/evm6455-be/eepromwriter_input50.txt b/program_evm/binaries/evm6455-be/eepromwriter_input50.txt
new file mode 100644 (file)
index 0000000..7fb9458
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom50.bin
+bus_addr   = 80
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6455/eepromwriter_input50.txt b/program_evm/binaries/evm6455/eepromwriter_input50.txt
new file mode 100644 (file)
index 0000000..7fb9458
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom50.bin
+bus_addr   = 80
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6457l-be/eepromwriter_input50.txt b/program_evm/binaries/evm6457l-be/eepromwriter_input50.txt
new file mode 100644 (file)
index 0000000..7fb9458
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom50.bin
+bus_addr   = 80
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6457l/eepromwriter_input50.txt b/program_evm/binaries/evm6457l/eepromwriter_input50.txt
new file mode 100644 (file)
index 0000000..7fb9458
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom50.bin
+bus_addr   = 80
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6472l-be/eepromwriter_input50.txt b/program_evm/binaries/evm6472l-be/eepromwriter_input50.txt
new file mode 100644 (file)
index 0000000..7fb9458
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom50.bin
+bus_addr   = 80
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6472l/eepromwriter_input50.txt b/program_evm/binaries/evm6472l/eepromwriter_input50.txt
new file mode 100644 (file)
index 0000000..7fb9458
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom50.bin
+bus_addr   = 80
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6474-be/eepromwriter_input50.txt b/program_evm/binaries/evm6474-be/eepromwriter_input50.txt
new file mode 100644 (file)
index 0000000..7fb9458
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom50.bin
+bus_addr   = 80
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6474/eepromwriter_input50.txt b/program_evm/binaries/evm6474/eepromwriter_input50.txt
new file mode 100644 (file)
index 0000000..7fb9458
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom50.bin
+bus_addr   = 80
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6474l-be/eepromwriter_input50.txt b/program_evm/binaries/evm6474l-be/eepromwriter_input50.txt
new file mode 100644 (file)
index 0000000..7fb9458
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom50.bin
+bus_addr   = 80
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6474l/eepromwriter_input50.txt b/program_evm/binaries/evm6474l/eepromwriter_input50.txt
new file mode 100644 (file)
index 0000000..7fb9458
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom50.bin
+bus_addr   = 80
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6670l-be/eepromwriter_input50.txt b/program_evm/binaries/evm6670l-be/eepromwriter_input50.txt
new file mode 100644 (file)
index 0000000..7fb9458
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom50.bin
+bus_addr   = 80
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6670l-be/eepromwriter_input51.txt b/program_evm/binaries/evm6670l-be/eepromwriter_input51.txt
new file mode 100644 (file)
index 0000000..54f7f79
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom51.bin
+bus_addr   = 81
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6670l-be/nand_writer_input.txt b/program_evm/binaries/evm6670l-be/nand_writer_input.txt
new file mode 100644 (file)
index 0000000..294195a
--- /dev/null
@@ -0,0 +1,5 @@
+file_name  = nand.bin
+start_addr = 16384
+
+
+
diff --git a/program_evm/binaries/evm6670l/eepromwriter_input.txt b/program_evm/binaries/evm6670l/eepromwriter_input.txt
new file mode 100644 (file)
index 0000000..54f7f79
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom51.bin
+bus_addr   = 81
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6670l/eepromwriter_input50.txt b/program_evm/binaries/evm6670l/eepromwriter_input50.txt
new file mode 100644 (file)
index 0000000..7fb9458
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom50.bin
+bus_addr   = 80
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6670l/eepromwriter_input51.txt b/program_evm/binaries/evm6670l/eepromwriter_input51.txt
new file mode 100644 (file)
index 0000000..54f7f79
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom51.bin
+bus_addr   = 81
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6670l/nand_writer_input.txt b/program_evm/binaries/evm6670l/nand_writer_input.txt
new file mode 100644 (file)
index 0000000..294195a
--- /dev/null
@@ -0,0 +1,5 @@
+file_name  = nand.bin
+start_addr = 16384
+
+
+
diff --git a/program_evm/binaries/evm6670l/nor_writer_input.txt b/program_evm/binaries/evm6670l/nor_writer_input.txt
new file mode 100644 (file)
index 0000000..c0ebbd8
--- /dev/null
@@ -0,0 +1,5 @@
+file_name  = nor.bin
+start_addr = 0
+
+
+
diff --git a/program_evm/binaries/evm6678l-be/eepromwriter_input50.txt b/program_evm/binaries/evm6678l-be/eepromwriter_input50.txt
new file mode 100644 (file)
index 0000000..7fb9458
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom50.bin
+bus_addr   = 80
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6678l-be/eepromwriter_input51.txt b/program_evm/binaries/evm6678l-be/eepromwriter_input51.txt
new file mode 100644 (file)
index 0000000..54f7f79
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom51.bin
+bus_addr   = 81
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6678l-be/nand_writer_input.txt b/program_evm/binaries/evm6678l-be/nand_writer_input.txt
new file mode 100644 (file)
index 0000000..294195a
--- /dev/null
@@ -0,0 +1,5 @@
+file_name  = nand.bin
+start_addr = 16384
+
+
+
diff --git a/program_evm/binaries/evm6678l/eepromwriter_input.txt b/program_evm/binaries/evm6678l/eepromwriter_input.txt
new file mode 100644 (file)
index 0000000..54f7f79
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom51.bin
+bus_addr   = 81
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6678l/eepromwriter_input50.txt b/program_evm/binaries/evm6678l/eepromwriter_input50.txt
new file mode 100644 (file)
index 0000000..7fb9458
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom50.bin
+bus_addr   = 80
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6678l/eepromwriter_input51.txt b/program_evm/binaries/evm6678l/eepromwriter_input51.txt
new file mode 100644 (file)
index 0000000..54f7f79
--- /dev/null
@@ -0,0 +1,8 @@
+file_name  = eeprom51.bin
+bus_addr   = 81
+start_addr = 0
+swap_data  = 0
+
+
+
+
diff --git a/program_evm/binaries/evm6678l/nand_writer_input.txt b/program_evm/binaries/evm6678l/nand_writer_input.txt
new file mode 100644 (file)
index 0000000..294195a
--- /dev/null
@@ -0,0 +1,5 @@
+file_name  = nand.bin
+start_addr = 16384
+
+
+
diff --git a/program_evm/binaries/evm6678l/nor_writer_input.txt b/program_evm/binaries/evm6678l/nor_writer_input.txt
new file mode 100644 (file)
index 0000000..c0ebbd8
--- /dev/null
@@ -0,0 +1,5 @@
+file_name  = nor.bin
+start_addr = 0
+
+
+
diff --git a/program_evm/configs/evm6455/evm6455-linuxhost.ccxml b/program_evm/configs/evm6455/evm6455-linuxhost.ccxml
new file mode 100644 (file)
index 0000000..1903685
--- /dev/null
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<configurations XML_version="1.2" id="configurations_0">
+
+
+<configuration XML_version="1.2" id="Texas Instruments XDS100v2 USB Emulator_0">
+        <instance XML_version="1.2" desc="Texas Instruments XDS100v2 USB Emulator_0" href="connections/TIXDS100v2_Connection.xml" id="Texas Instruments XDS100v2 USB Emulator_0" xml="TIXDS100v2_Connection.xml" xmlpath="connections"/>
+        <connection XML_version="1.2" id="Texas Instruments XDS100v2 USB Emulator_0">
+            <instance XML_version="1.2" href="drivers/tixds100v2icepick_c.xml" id="drivers" xml="tixds100v2icepick_c.xml" xmlpath="drivers"/>
+            <instance XML_version="1.2" href="drivers/tixds100v2c64xp.xml" id="drivers" xml="tixds100v2c64xp.xml" xmlpath="drivers"/>
+            <platform XML_version="1.2" id="platform_0">
+                <instance XML_version="1.2" desc="DSK6455_0" href="boards/dsk6455.xml" id="DSK6455_0" xml="dsk6455.xml" xmlpath="boards"/>
+            </platform>
+        </connection>
+    </configuration>
+</configurations>
diff --git a/program_evm/configs/evm6455/evm6455.ccxml b/program_evm/configs/evm6455/evm6455.ccxml
new file mode 100644 (file)
index 0000000..a9196fb
--- /dev/null
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<configurations XML_version="1.2" id="configurations_0">
+<configuration XML_version="1.2" id="Texas Instruments XDS100v2 USB Emulator_0">
+        <instance XML_version="1.2" desc="Texas Instruments XDS100v2 USB Emulator_0" href="connections/TIXDS100v2_Connection.xml" id="Texas Instruments XDS100v2 USB Emulator_0" xml="TIXDS100v2_Connection.xml" xmlpath="connections"/>
+        <connection XML_version="1.2" id="Texas Instruments XDS100v2 USB Emulator_0">
+            <instance XML_version="1.2" href="drivers/tixds100v2icepick_c.xml" id="drivers" xml="tixds100v2icepick_c.xml" xmlpath="drivers"/>
+            <instance XML_version="1.2" href="drivers/tixds100v2c64xp.xml" id="drivers" xml="tixds100v2c64xp.xml" xmlpath="drivers"/>
+            <platform XML_version="1.2" id="platform_0">
+                <instance XML_version="1.2" desc="TMS320C6455_0" href="Devices/c6455.xml" id="TMS320C6455_0" xml="c6455.xml" xmlpath="Devices"/>
+            </platform>
+        </connection>
+    </configuration>
+</configurations>
diff --git a/program_evm/configs/evm6457l/evm6457l-linuxhost.ccxml b/program_evm/configs/evm6457l/evm6457l-linuxhost.ccxml
new file mode 100644 (file)
index 0000000..c20493a
--- /dev/null
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<configurations XML_version="1.2" id="configurations_0">
+
+<configuration XML_version="1.2" id="Texas Instruments XDS100v1.5 USB Emulator_0">
+        <instance XML_version="1.2" desc="Texas Instruments XDS100v1.5 USB Emulator_0" href="connections/TIXDS100v15_Connection.xml" id="Texas Instruments XDS100v1.5 USB Emulator_0" xml="TIXDS100v15_Connection.xml" xmlpath="connections"/>
+        <connection XML_version="1.2" id="Texas Instruments XDS100v1.5 USB Emulator_0">
+            <instance XML_version="1.2" href="drivers/tixds100icepick_c.xml" id="drivers" xml="tixds100icepick_c.xml" xmlpath="drivers"/>
+            <instance XML_version="1.2" href="drivers/tixds100c64xp.xml" id="drivers" xml="tixds100c64xp.xml" xmlpath="drivers"/>
+            <platform XML_version="1.2" id="platform_0">
+                <instance XML_version="1.2" desc="TMDSEVM6457L_0" href="boards/evmc6457l.xml" id="TMDSEVM6457L_0" xml="evmc6457l.xml" xmlpath="boards"/>
+            </platform>
+        </connection>
+    </configuration>
+</configurations>
diff --git a/program_evm/configs/evm6457l/evm6457l.ccxml b/program_evm/configs/evm6457l/evm6457l.ccxml
new file mode 100644 (file)
index 0000000..04096e9
--- /dev/null
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<configurations XML_version="1.2" id="configurations_0">
+
+<configuration XML_version="1.2" id="Texas Instruments XDS100v1 USB Emulator_0">
+        <instance XML_version="1.2" desc="Texas Instruments XDS100v1 USB Emulator_0" href="connections/TIXDS100usb_Connection.xml" id="Texas Instruments XDS100v1 USB Emulator_0" xml="TIXDS100usb_Connection.xml" xmlpath="connections"/>
+        <connection XML_version="1.2" id="Texas Instruments XDS100v1 USB Emulator_0">
+            <instance XML_version="1.2" href="drivers/tixds100icepick_c.xml" id="drivers" xml="tixds100icepick_c.xml" xmlpath="drivers"/>
+            <instance XML_version="1.2" href="drivers/tixds100c64xp.xml" id="drivers" xml="tixds100c64xp.xml" xmlpath="drivers"/>
+            <platform XML_version="1.2" id="platform_0">
+                <instance XML_version="1.2" desc="TMDSEVM6457L_0" href="boards/evmc6457l.xml" id="TMDSEVM6457L_0" xml="evmc6457l.xml" xmlpath="boards"/>
+            </platform>
+        </connection>
+    </configuration>
+</configurations>
diff --git a/program_evm/configs/evm6472l/evm6472l-linuxhost.ccxml b/program_evm/configs/evm6472l/evm6472l-linuxhost.ccxml
new file mode 100644 (file)
index 0000000..324dd37
--- /dev/null
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<configurations XML_version="1.2" id="configurations_0">
+
+<configuration XML_version="1.2" id="Texas Instruments XDS100v1.5 USB Emulator_0">
+        <instance XML_version="1.2" desc="Texas Instruments XDS100v1.5 USB Emulator_0" href="connections/TIXDS100v15_Connection.xml" id="Texas Instruments XDS100v1.5 USB Emulator_0" xml="TIXDS100v15_Connection.xml" xmlpath="connections"/>
+        <connection XML_version="1.2" id="Texas Instruments XDS100v1.5 USB Emulator_0">
+            <instance XML_version="1.2" href="drivers/tixds100icepick_c.xml" id="drivers" xml="tixds100icepick_c.xml" xmlpath="drivers"/>
+            <instance XML_version="1.2" href="drivers/tixds100c64xp.xml" id="drivers" xml="tixds100c64xp.xml" xmlpath="drivers"/>
+            <platform XML_version="1.2" id="platform_0">
+                <instance XML_version="1.2" desc="EVMC6472_0" href="boards/evmc6472.xml" id="EVMC6472_0" xml="evmc6472.xml" xmlpath="boards"/>
+            </platform>
+        </connection>
+    </configuration>
+</configurations>
diff --git a/program_evm/configs/evm6472l/evm6472l.ccxml b/program_evm/configs/evm6472l/evm6472l.ccxml
new file mode 100644 (file)
index 0000000..71d32c4
--- /dev/null
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<configurations XML_version="1.2" id="configurations_0">
+
+
+
+<configuration XML_version="1.2" id="Texas Instruments XDS100v1 USB Emulator_0">
+        <instance XML_version="1.2" desc="Texas Instruments XDS100v1 USB Emulator_0" href="connections/TIXDS100usb_Connection.xml" id="Texas Instruments XDS100v1 USB Emulator_0" xml="TIXDS100usb_Connection.xml" xmlpath="connections"/>
+        <connection XML_version="1.2" id="Texas Instruments XDS100v1 USB Emulator_0">
+            <instance XML_version="1.2" href="drivers/tixds100icepick_c.xml" id="drivers" xml="tixds100icepick_c.xml" xmlpath="drivers"/>
+            <instance XML_version="1.2" href="drivers/tixds100c64xp.xml" id="drivers" xml="tixds100c64xp.xml" xmlpath="drivers"/>
+            <platform XML_version="1.2" id="platform_0">
+                <instance XML_version="1.2" desc="EVMC6472_0" href="boards/evmc6472.xml" id="EVMC6472_0" xml="evmc6472.xml" xmlpath="boards"/>
+            </platform>
+        </connection>
+    </configuration>
+</configurations>
diff --git a/program_evm/configs/evm6474/evm6474-linuxhost.ccxml b/program_evm/configs/evm6474/evm6474-linuxhost.ccxml
new file mode 100644 (file)
index 0000000..39b3cde
--- /dev/null
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<configurations XML_version="1.2" id="configurations_0">
+<configuration XML_version="1.2" id="Texas Instruments XDS100v2 USB Emulator_0">
+        <instance XML_version="1.2" desc="Texas Instruments XDS100v2 USB Emulator_0" href="connections/TIXDS100v2_Connection.xml" id="Texas Instruments XDS100v2 USB Emulator_0" xml="TIXDS100v2_Connection.xml" xmlpath="connections"/>
+        <connection XML_version="1.2" id="Texas Instruments XDS100v2 USB Emulator_0">
+            <instance XML_version="1.2" href="drivers/tixds100v2icepick_c.xml" id="drivers" xml="tixds100v2icepick_c.xml" xmlpath="drivers"/>
+            <instance XML_version="1.2" href="drivers/tixds100v2c64xp.xml" id="drivers" xml="tixds100v2c64xp.xml" xmlpath="drivers"/>
+            <platform XML_version="1.2" id="platform_0">
+                <instance XML_version="1.2" desc="EVMC6474_0" href="boards/evmc6474.xml" id="EVMC6474_0" xml="evmc6474.xml" xmlpath="boards"/>
+                <board XML_version="1.2" description="Spectrum Digital C6474 EVM Board" id="EVMC6474_0">
+                    <router HW_revision="1.0" XML_version="1.2" description="ICEPick_C Router" id="IcePick_C_0" isa="ICEPICK_C">
+                        <subpath id="Subpath_1">
+                            <property Type="numericfield" Value="0x12" desc="Port Number_0" id="Port Number"/>
+                        </subpath>
+                    </router>
+                    <router HW_revision="1.0" XML_version="1.2" description="ICEPick_C Router" id="IcePick_C_1" isa="ICEPICK_C">
+                        <subpath id="Subpath_3">
+                            <property Type="numericfield" Value="0x11" desc="Port Number_1" id="Port Number"/>
+                        </subpath>
+                        <subpath id="Subpath_4">
+                            <property Type="numericfield" Value="0x12" desc="Port Number_2" id="Port Number"/>
+                        </subpath>
+                    </router>
+                </board>
+            </platform>
+        </connection>
+    </configuration>
+</configurations>
diff --git a/program_evm/configs/evm6474/evm6474.ccxml b/program_evm/configs/evm6474/evm6474.ccxml
new file mode 100644 (file)
index 0000000..39b3cde
--- /dev/null
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<configurations XML_version="1.2" id="configurations_0">
+<configuration XML_version="1.2" id="Texas Instruments XDS100v2 USB Emulator_0">
+        <instance XML_version="1.2" desc="Texas Instruments XDS100v2 USB Emulator_0" href="connections/TIXDS100v2_Connection.xml" id="Texas Instruments XDS100v2 USB Emulator_0" xml="TIXDS100v2_Connection.xml" xmlpath="connections"/>
+        <connection XML_version="1.2" id="Texas Instruments XDS100v2 USB Emulator_0">
+            <instance XML_version="1.2" href="drivers/tixds100v2icepick_c.xml" id="drivers" xml="tixds100v2icepick_c.xml" xmlpath="drivers"/>
+            <instance XML_version="1.2" href="drivers/tixds100v2c64xp.xml" id="drivers" xml="tixds100v2c64xp.xml" xmlpath="drivers"/>
+            <platform XML_version="1.2" id="platform_0">
+                <instance XML_version="1.2" desc="EVMC6474_0" href="boards/evmc6474.xml" id="EVMC6474_0" xml="evmc6474.xml" xmlpath="boards"/>
+                <board XML_version="1.2" description="Spectrum Digital C6474 EVM Board" id="EVMC6474_0">
+                    <router HW_revision="1.0" XML_version="1.2" description="ICEPick_C Router" id="IcePick_C_0" isa="ICEPICK_C">
+                        <subpath id="Subpath_1">
+                            <property Type="numericfield" Value="0x12" desc="Port Number_0" id="Port Number"/>
+                        </subpath>
+                    </router>
+                    <router HW_revision="1.0" XML_version="1.2" description="ICEPick_C Router" id="IcePick_C_1" isa="ICEPICK_C">
+                        <subpath id="Subpath_3">
+                            <property Type="numericfield" Value="0x11" desc="Port Number_1" id="Port Number"/>
+                        </subpath>
+                        <subpath id="Subpath_4">
+                            <property Type="numericfield" Value="0x12" desc="Port Number_2" id="Port Number"/>
+                        </subpath>
+                    </router>
+                </board>
+            </platform>
+        </connection>
+    </configuration>
+</configurations>
diff --git a/program_evm/configs/evm6474l/evm6474l-linuxhost.ccxml b/program_evm/configs/evm6474l/evm6474l-linuxhost.ccxml
new file mode 100644 (file)
index 0000000..048ea79
--- /dev/null
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<configurations XML_version="1.2" id="configurations_0">
+
+
+
+<configuration XML_version="1.2" id="Texas Instruments XDS100v1.5 USB Emulator_0">
+        <instance XML_version="1.2" desc="Texas Instruments XDS100v1.5 USB Emulator_0" href="connections/TIXDS100v15_Connection.xml" id="Texas Instruments XDS100v1.5 USB Emulator_0" xml="TIXDS100v15_Connection.xml" xmlpath="connections"/>
+        <connection XML_version="1.2" id="Texas Instruments XDS100v1.5 USB Emulator_0">
+            <instance XML_version="1.2" href="drivers/tixds100icepick_c.xml" id="drivers" xml="tixds100icepick_c.xml" xmlpath="drivers"/>
+            <instance XML_version="1.2" href="drivers/tixds100c64xp.xml" id="drivers" xml="tixds100c64xp.xml" xmlpath="drivers"/>
+            <platform XML_version="1.2" id="platform_0">
+                <instance XML_version="1.2" desc="TMDSEVM6474L_0" href="boards/evmc6474l.xml" id="TMDSEVM6474L_0" xml="evmc6474l.xml" xmlpath="boards"/>
+            </platform>
+        </connection>
+    </configuration>
+</configurations>
diff --git a/program_evm/configs/evm6474l/evm6474l.ccxml b/program_evm/configs/evm6474l/evm6474l.ccxml
new file mode 100644 (file)
index 0000000..bc36769
--- /dev/null
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<configurations XML_version="1.2" id="configurations_0">
+<configuration XML_version="1.2" id="Texas Instruments XDS100v1 USB Emulator_0">
+        <instance XML_version="1.2" desc="Texas Instruments XDS100v1 USB Emulator_0" href="connections/TIXDS100usb_Connection.xml" id="Texas Instruments XDS100v1 USB Emulator_0" xml="TIXDS100usb_Connection.xml" xmlpath="connections"/>
+        <connection XML_version="1.2" id="Texas Instruments XDS100v1 USB Emulator_0">
+            <instance XML_version="1.2" href="drivers/tixds100icepick_c.xml" id="drivers" xml="tixds100icepick_c.xml" xmlpath="drivers"/>
+            <instance XML_version="1.2" href="drivers/tixds100c64xp.xml" id="drivers" xml="tixds100c64xp.xml" xmlpath="drivers"/>
+            <platform XML_version="1.2" id="platform_0">
+                <instance XML_version="1.2" desc="TMDSEVM6474L_0" href="boards/evmc6474l.xml" id="TMDSEVM6474L_0" xml="evmc6474l.xml" xmlpath="boards"/>
+            </platform>
+        </connection>
+    </configuration>
+</configurations>
diff --git a/program_evm/gel/README.txt b/program_evm/gel/README.txt
new file mode 100644 (file)
index 0000000..0ddc6d9
--- /dev/null
@@ -0,0 +1,15 @@
+Steps to update GELs for C66x EVMs
+----------------------------------
+
+1: There are two GEL files provided in this directory evmc6670l.gel and evmc6678l.gel
+
+2: These GEL files needs to be copied to CCS installation
+
+3: The following steps will assume the CCS is installed in <CCS_INSTALL_DIR> (which is typically C:\Program Files\Texas Instruments\ccsv5 for Windows XP and ~/ti/ccsv5)
+
+4: Close the CCS if open
+
+5: Replace the GEL file present in the <CCS_INSTALL_DIR>/ccs_base_5.0.3.00028/emulation/boards/evmc6670l/gel directory with the evmc6670l.gel file present in this directory
+
+6: Replace the GEL file present in the <CCS_INSTALL_DIR>/ccs_base_5.0.3.00028/emulation/boards/evmc6678l/gel directory with the evmc6678l.gel file present in this directory
+
diff --git a/program_evm/logs/logs.txt b/program_evm/logs/logs.txt
new file mode 100644 (file)
index 0000000..205b14f
--- /dev/null
@@ -0,0 +1 @@
+Program EVM logs will be stored in this directory.
\ No newline at end of file
similarity index 53%
rename from factory_images/program_evm.js
rename to program_evm/program_evm.js
index f050b879d0040af608e2520019c2647973a6c18c..a8e9500d35d549e092f96b661d2283985e0875e1 100644 (file)
@@ -11,42 +11,31 @@ importPackage(Packages.java.util);
 var script = ScriptingEnvironment.instance()
 
 var debugScriptEnv = ScriptingEnvironment.instance();
+// program_evm environment.
+testEnv = {};
 
 // Get the Debug Server and start a Debug Session
 var debugServer = script.getServer("DebugServer.1");
 
-// Create a log file in the current directory to log script execution
-script.traceBegin("BFTRunLog.xml", "DefaultStylesheet.xsl")
-
 //***************Functions define***************************
-//****************Open file to write***********************
-// if attr is true, bytes will be written to the end of the file rather than the beginning
-function fileWriterOpen(path, attr)
+
+
+function isFile(path)
 {
-       if (attr)
-       {
-               file = new java.io.FileWriter(path, true);
-               return file;
-       }
-       else
+       try
+       {   
+               file = new java.io.FileReader(path);
+       }
+       catch (ex)
        {
-               file = new java.io.FileWriter(path, false);
-               return file;
-       }
-}
+               return false;
+       }
 
-//****************Write to file***********************
-function fileWrite(file, string)
-{            
-       file.write(string);
-}
+       return true;
 
-//**************** Close file*************************
-function fileClose(file)
-{            
-       file.close();
 }
 
+
 //****************Get New Time Stamp***********************
 function localTime()
 {
@@ -104,6 +93,17 @@ function fileCopy(source,destination)
     out.close();
 }
 
+function pausecomp(millis)
+ {
+  var date = new Date();
+  var curDate = null;
+  do { curDate = new Date(); }
+  while(curDate-date < millis)
+  { 
+  //print("Waiting "+millis+"ms...\r\n") 
+  }
+}
+
 //*******************************************
 // Declarations and Inititalizations
 var nandwriter_dir    = java.lang.System.getProperty("user.dir");
@@ -118,6 +118,7 @@ var big_endian = false;
 var targetFlag = "unknown";
 var targetConfig = "unknown";
 var emul560 = false;
+testEnv.cioFile = null;
 
 if (java.lang.System.getProperty("os.name").match(/Linux/i))
 {
@@ -183,15 +184,24 @@ if (arguments.length > 0 && arguments.length < 3)
 }
 else
 {
-        script.traceWrite("syntax error in command line");
-       print("Syntax: program_evm.js <device> [images_to_write]")
-       print("  <device> is the board name with optional -le (little endian, default) or -be (big endian)")
+  print("Syntax error in command line");
+       print("Syntax: program_evm.js [tmdx|tmds]evm[c](<device>)l[x][e][-le|-be] [images_to_write]")
+  
+       print("    tmdx: TMDX type EVM")
+       print("    tmds: TMDS type EVM")
+       print("    c: Not used, for backward compatibility")
+       print("    <device> is the board name e.g 6472,6678 etc")
+       print("    l: Low cost EVM")
+       print("    x: EVM supports encryption")
+       print("    e: EVM uses 560 Mezzanine Emulator daughter card")
+       print("    le: Little Endian")
+       print("    be: Big Endian")
+
        print("    example: TMDXEVM6678L-le")   
-       print("  [images_to_write] OPTIONAL is a list of the images to be written")
+       print("    [images_to_write] OPTIONAL is a list of the images to be written")
        print("    example: eeprom50,nor")
        print("    If not specified all (eeprom50,eeprom51,nand,nor) will be written")
-       script.traceEnd()
-       java.lang.System.exit(1);
+       java.lang.System.exit(0);
 }
 
 var i2cwriterbinary = board_binaries + "eepromwriter_" + targetFlag + ".out";
@@ -205,148 +215,231 @@ var eeprom51 = board_binaries + "eeprom51.bin";
 var nand = board_binaries + "nand.bin";
 var nor = board_binaries + "nor.bin";
 
+switch (targetFlag)
+{
+       case "evm6457l":
+               cpu_id = "C64XP_1";
+               var nAddress = 0x800000;
+    var iblByteSwap = false;
+               break;
+       case "evm6474l":
+               cpu_id = "C64XP_0";
+    var nAddress = 0x800000;
+    var iblByteSwap = false;
+               break;
+       case "evm6455":
+    cpu_id = "C64XP_0";
+    var nAddress = 0x800000;
+    var iblByteSwap = false;
+    break;
+       case "evm6474":
+    cpu_id = "C64XP_1A";
+    var nAddress = 0x800000;
+    var iblByteSwap = false;
+    break;
+       case "evm6472l":
+               cpu_id = "C64XP_A";
+    var nAddress = 0x800000;
+    var iblByteSwap = false;
+               break;
+       case "evm6670l":
+               cpu_id = "C66xx_0";
+    var nAddress = 0x80000000;
+    var iblByteSwap = false;
+               break;
+       case "evm6678l":
+               cpu_id = "C66xx_0";
+    var nAddress = 0x80000000;
+    var iblByteSwap = false;
+               break;
+       default:
+               script.traceWrite("Could not file cpu id for target " + targetFlag + "\n");
+
+
+}
+
 start = localTime();
-var logFile = fileWriterOpen(script_logs+targetFlag+"_"+start+".txt", 1);
+testEnv.cioFile = script_logs+targetFlag+"_"+start+"-cio"+".txt";
+// Create a log file in the current directory to log script execution
+script.traceBegin(script_logs+targetFlag+"_"+start+"-trace"+".txt")
 
 // Configure target
 debugServer.setConfig(targetConfig);
-debugSession = debugServer.openSession("*","C66xx_0");
+pausecomp(1000);
+debugSession = debugServer.openSession("*",cpu_id);
+
+if (testEnv.cioFile != null)
+       debugSession.beginCIOLogging(testEnv.cioFile);
+pausecomp(1000);
 debugSession.target.connect();
+pausecomp(1000);
 debugSession.target.reset();
+pausecomp(1000);
 
 //POST
 if(writeAll || writerImages.match(/eeprom50/))
 {
        //Write EEPROM
        start = localTime();
-       fileWrite(logFile, "Start POST write @ "+start+"\r\n");
-       script.traceWrite("Start writing POST");
+       script.traceWrite("Start writing eeprom50");
        script.traceWrite("Writer:" + i2cwriterbinary + "\r\n");
-       script.traceWrite("POST:" + eeprom50 + "\r\n");
-
-       fileCopy(eepromwriter_input50,eepromwriter_input);
-       debugSession.memory.loadProgram(i2cwriterbinary);
-       var nPage = 0x0;
-       var nAddress = 0x80000000;
-       var sFilename = eeprom50 ;
-       var nTypeSize = 32;
-       var bByteSwap = false;
-       try
+       script.traceWrite("Image:" + eeprom50 + "\r\n");
+       if (isFile(i2cwriterbinary) && isFile(eeprom50)) 
        {
-               debugSession.memory.loadRaw(nPage, nAddress, sFilename, nTypeSize, bByteSwap);
+               fileCopy(eepromwriter_input50,eepromwriter_input);
+               debugSession.memory.loadProgram(i2cwriterbinary);
+               var nPage = 0x0;
+       //      var nAddress = 0x80000000;
+               var sFilename = eeprom50 ;
+               var nTypeSize = 32;
+               var bByteSwap = false;
+               try
+               {
+                       debugSession.memory.loadRaw(nPage, nAddress, sFilename, nTypeSize, bByteSwap);
+               }
+               catch (ex)
+               {
+                  errCode = getErrorCode(ex);
+                  script.traceWrite("Error code #" + errCode + ", could not load file " + sFilename +
+                                       " to target memory!");
+               }
+               debugSession.target.run()
+               end = localTime();
        }
-       catch (ex)
+       else
        {
-          errCode = getErrorCode(ex);
-          script.traceWrite("Error code #" + errCode + ", could not load file " + sFilename +
-                               " to target memory!");
+               script.traceWrite("Required EEPROM50 files do not exist in " + board_binaries + "\n");
+        
        }
-       debugSession.target.run()
-       end = localTime();
-       fileWrite(logFile, "\nEnd POST write @ " + end + "\n\n");
 }
 
 //IBL 
 if(writeAll || writerImages.match(/eeprom51/))
 {
        start = localTime();
-       fileWrite(logFile, "Start IBL write @ "+start+"\r\n");
-       script.traceWrite("Start writing IBL");
+       script.traceWrite("Start writing eeprom51");
        script.traceWrite("Writer:" + i2cwriterbinary + "\r\n");
-       script.traceWrite("IBL:" + eeprom51 + "\r\n");
+       script.traceWrite("Image:" + eeprom51 + "\r\n");
        
-       fileCopy(eepromwriter_input51,eepromwriter_input);
-       debugSession.memory.loadProgram(i2cwriterbinary);
-       var nPage = 0x0;
-       var nAddress = 0x80000000;
-       var sFilename = eeprom51;
-       var nTypeSize = 32;
-       var bByteSwap = false;
-       try
+       if (isFile(i2cwriterbinary) && isFile(eeprom51)) 
        {
-               debugSession.memory.loadRaw(nPage, nAddress, sFilename, nTypeSize, bByteSwap);
+               fileCopy(eepromwriter_input51,eepromwriter_input);
+               debugSession.memory.loadProgram(i2cwriterbinary);
+               var nPage = 0x0;
+       //      var nAddress = 0x80000000;
+               var sFilename = eeprom51;
+               var nTypeSize = 32;
+               var bByteSwap = iblByteSwap;
+               try
+               {
+                       debugSession.memory.loadRaw(nPage, nAddress, sFilename, nTypeSize, bByteSwap);
+               }
+               catch (ex)
+               {
+                  errCode = getErrorCode(ex);
+                  script.traceWrite("Error code #" + errCode + ", could not load file " + sFilename +
+                                       " to target memory!");
+               }
+
+               debugSession.target.run()
+               end = localTime();
        }
-       catch (ex)
+       else
        {
-          errCode = getErrorCode(ex);
-          script.traceWrite("Error code #" + errCode + ", could not load file " + sFilename +
-                               " to target memory!");
+               script.traceWrite("Required EEPROM51 files do not exist in " + board_binaries + "\n");
+        
        }
-
-       debugSession.target.run()
-       end = localTime();
-       fileWrite(logFile, "\nEnd IBL write @ " + end + "\n\n");
 }
 
+
 //NAND
 if(writeAll || writerImages.match(/nand/))
 {
+
        start_nand = localTime();
-       fileWrite(logFile, "\nStart NAND write @ " + start_nand + "\n\n");
        script.traceWrite("Writer:" + nandwriterbinary + "\r\n");
        script.traceWrite("NAND:" + nand + "\r\n");
-       debugSession.memory.loadProgram(nandwriterbinary);
-       var nPage = 0x0;
-       var nAddress = 0x80000000;
-       var sFilename = nand;
-       var nTypeSize = 32;
-       var bByteSwap = true;
+       if (isFile(nand) && isFile(nandwriterbinary)) 
+       {
+               debugSession.memory.loadProgram(nandwriterbinary);
+               var nPage = 0x0;
+       //      var nAddress = 0x80000000;
+               var sFilename = nand;
+               var nTypeSize = 32;
+               var bByteSwap = false;
 
-       try
-       {   
-               script.traceWrite("Start loading nand.bin");
-               debugSession.memory.loadRaw(nPage, nAddress, sFilename, nTypeSize, bByteSwap);
+               try
+               {   
+                       script.traceWrite("Start loading nand.bin");
+                       debugSession.memory.loadRaw(nPage, nAddress, sFilename, nTypeSize, bByteSwap);
 
+               }
+               catch (ex)
+               {
+                  errCode = getErrorCode(ex);
+                  script.traceWrite("Error code #" + errCode + ", could not load file " + sFilename +
+                                       " to target memory!");
+               }
+               script.traceWrite("Start programming NAND");
+               debugSession.target.run()
+               script.traceWrite("End programming NAND");
+               end_nand = localTime();
        }
-       catch (ex)
+       else
        {
-          errCode = getErrorCode(ex);
-          script.traceWrite("Error code #" + errCode + ", could not load file " + sFilename +
-                               " to target memory!");
+               script.traceWrite("Required NAND files does not exist in " + board_binaries + "\n");
+        
        }
-       script.traceWrite("Start programming NAND");
-       debugSession.target.run()
-       script.traceWrite("End programming NAND");
-       end_nand = localTime();
-       fileWrite(logFile, "\nEnd NAND write @ " + end_nand + "\n\n");
 }
 
 //NOR
 if(writeAll || writerImages.match(/nor/))
 {
        start_nor = localTime();
-       fileWrite(logFile, "\nStart NOR write @ " + start_nor + "\n\n");
        script.traceWrite("Writer:" + norwriterbinary + "\r\n");
        script.traceWrite("NOR:" + nor + "\r\n");
-       debugSession.memory.loadProgram(norwriterbinary);
-       var nPage = 0x0;
-       var nAddress = 0x80000000;
-       var sFilename = nor ;
-       var nTypeSize = 32;
-       var bByteSwap = true;
-       try
-       {   
-               script.traceWrite("Start loading nor.bin");
-               debugSession.memory.loadRaw(nPage, nAddress, sFilename, nTypeSize, bByteSwap);
 
-       }
-       catch (ex)
+       
+       if (isFile(nor) && isFile(norwriterbinary)) 
        {
-          errCode = getErrorCode(ex);
-          script.traceWrite("Error code #" + errCode + ", could not load file " + sFilename +
-                               " to target memory!");
+       
+               debugSession.memory.loadProgram(norwriterbinary);
+               var nPage = 0x0;
+       //      var nAddress = 0x80000000;
+               var sFilename = nor ;
+               var nTypeSize = 32;
+               var bByteSwap = false;
+               try
+               {   
+                       script.traceWrite("Start loading nor.bin");
+                       debugSession.memory.loadRaw(nPage, nAddress, sFilename, nTypeSize, bByteSwap);
+
+               }
+               catch (ex)
+               {
+                  errCode = getErrorCode(ex);
+                  script.traceWrite("Error code #" + errCode + ", could not load file " + sFilename +
+                                       " to target memory!");
+               }
+               script.traceWrite("Start programming NOR");
+               script.traceWrite(localTime());
+               debugSession.target.run()
+               script.traceWrite("End programming NOR");
+               end_nor = localTime();
+    }
+       else
+       {
+               script.traceWrite("Required NOR files does not exist in " + board_binaries + "\n");
+        
        }
-       script.traceWrite("Start programming NOR");
-       script.traceWrite(localTime());
-       debugSession.target.run()
-       script.traceWrite("End programming NOR");
-       end_nor = localTime();
-       fileWrite(logFile, "\nEnd NOR write @ " + end_nor + "\n\n");
+
 }
 
-// Close log file
-fileWrite(logFile, "\n\n\n");
-fileClose(logFile);
+if (testEnv.cioFile != null)
+{
+       // Stop CIO logging.
+       debugSession.endCIOLogging();
+}
 
 debugSession.terminate();
 debugServer.stop()
similarity index 50%
rename from factory_images/program_evm_userguide.doc
rename to program_evm/program_evm_userguide.doc
index da0ec265b2253595310f269dca60ff8d34a12543..8efa86bc07b76b1fc8f813cd5ff50143ba6cbb2f 100644 (file)
Binary files a/factory_images/program_evm_userguide.doc and b/program_evm/program_evm_userguide.doc differ
diff --git a/program_evm/program_evm_userguide.pdf b/program_evm/program_evm_userguide.pdf
new file mode 100644 (file)
index 0000000..9eefa84
Binary files /dev/null and b/program_evm/program_evm_userguide.pdf differ