aboutsummaryrefslogtreecommitdiff
path: root/doc/README.Purple
diff options
context:
space:
mode:
Diffstat (limited to 'doc/README.Purple')
-rw-r--r--doc/README.Purple52
1 files changed, 52 insertions, 0 deletions
diff --git a/doc/README.Purple b/doc/README.Purple
new file mode 100644
index 000000000..9e70004ae
--- /dev/null
+++ b/doc/README.Purple
@@ -0,0 +1,52 @@
+Installation Instructions:
+--------------------------
+
+1. Put the s2 switch into the following position:
+
+ 1 0
+ ------
+ |x |
+ | x|
+ |x |
+ | X|
+ ------
+
+2. Connect to the serial console and to the BDI. Power on. On the
+ serial line, you should see:
+
+ PURPLE@1.2>
+
+3. Type '8'. No echo will be displayed. In response, you should get:
+
+ 7A(pass)
+
+4. From BDI, enter command:
+
+ mmw 0xb800d860 0x0042c7ff
+
+5. Then, from BDI:
+
+ erase 0xB0000000
+ erase 0xB0008000
+ erase 0xB000C000
+ erase 0xB0010000
+ erase 0xB0020000
+
+ prog 0xB0000000 <u-boot.bin> bin
+
+6. Power off. Restore the original S2 switch position. Power on.
+ U-Boot should come up.
+
+
+
+Implementation Notes:
+---------------------
+
+Due to the RAM/flash bus arbitration problem the suggested workaround
+had to be implemented. It works okay. On the downside is that you
+can't really check whether 'erase' is complete by polling flash as it
+is usually done. Instead, the flash driver simply waits for a given
+time and assumes that erase then has passed. This behaviour is
+identical to what the VxWorks driver does; also, the same timeout (6
+seconds) was chosen. Note that this timeout applies for each errase
+operation, i. e. per erased sector.