diff options
Diffstat (limited to 'doc/README.Purple')
-rw-r--r-- | doc/README.Purple | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/doc/README.Purple b/doc/README.Purple new file mode 100644 index 0000000..9e70004 --- /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. |