12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- SHA1 usage:
- In the U-Boot Image for the pcs440ep board is a SHA1 checksum integrated.
- This SHA1 sum is used, to check, if the U-Boot Image in Flash is not
- corrupted.
- The following command is available:
- => help sha1
- sha1 address len [addr] calculate the SHA1 sum [save at addr]
- -p calculate the SHA1 sum from the U-Boot image in flash and print
- -c check the U-Boot image in flash
- "sha1 -p"
- calculates and prints the SHA1 sum, from the Image stored in Flash
- "sha1 -c"
- check, if the SHA1 sum from the Image stored in Flash is correct
- It is possible to calculate a SHA1 checksum from a memoryrange with:
- "sha1 address len"
- If you want to store a new Image in Flash for the pcs440ep board,
- which has no SHA1 sum, you can do the following:
- a) cp the new Image on a position in RAM (here 0x300000)
- (for this example we use the Image from Flash, stored at 0xfffa0000 and
- 0x60000 Bytes long)
- "cp.b fffa0000 300000 60000"
- b) Initialize the SHA1 sum in the Image with 0x00
- The SHA1 sum is stored in Flash at:
- CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN + SHA1_SUM_POS
- for the pcs440ep Flash: 0xfffa0000 + 0x60000 + -0x20
- = 0xffffffe0
- for the example in RAM: 0x300000 + 0x60000 + -0x20
- = 0x35ffe0
- note: a SHA1 checksum is 20 bytes long.
- "mw.b 35ffe0 0 14"
- c) now calculate the SHA1 sum from the memoryrange and write
- the calculated checksum at the right place:
- "sha1 300000 60000 35ffe0"
- Now you have a U-Boot-Image for the pcs440ep board with the correct SHA1 sum.
- If you do a "buildman -k pcs440ep" or a "make all" to get the U-Boot image,
- which will be found in ../current/ipam390/ - the correct SHA1 sum will be
- automagically included in the U-Boot image.
- Heiko Schocher, 11 Jul 2007
|