NSLU2-Linux
view · edit · print · history

WRP400.EncapsulatedFirmware History

Hide minor edits - Show changes to markup

July 11, 2008, at 06:18 AM by rwhitby --
Changed lines 6-7 from:

We think there is an rc4 digest somewhere in the headers.

to:

Changing any of bytes 0x30, 0x90 or 0x110 causes the following error:

 digest error

So based on strings like "rc4_crypt" and "rc4_setup" in the tftpd binary, we think there are rc4 digests in the headers that cover the u-boot image files (and perhaps the whole firmware upgrade file).

July 11, 2008, at 06:08 AM by rwhitby --
Changed lines 1-2 from:

Changing a byte in the data areas causes the following error:

to:

Changing a byte in the cybertan_rom_bin data areas causes the following error:

July 11, 2008, at 06:03 AM by rwhitby --
Added lines 1-7:

Changing a byte in the data areas causes the following error:

 digest not correct
 validate module[1] error

We think there is an rc4 digest somewhere in the headers.

July 11, 2008, at 05:52 AM by rwhitby --
Deleted lines 175-192:
 00000200: 2705 1956 0385 b0bb 47c8 c417 0019 2564  '..V....G.....%d
 00000210: 0000 8000 0000 8000 8a8e 26e7 0502 0400  ..........&.....
 00000220: 5747 544c 6379 6265 7274 616e 5f68 616c  WGTLcybertan_hal
 00000230: 665f 6269 6e00 0000 0000 0000 0000 0000  f_bin...........
 00000240: 000d 5558 000b d000 0000 0000 0000 a0e1  ..UX............

 00192820: 0000 0ae1 2705 1956 c7ed 734c 483f 4396  ....'..V..sLH?C.
 00192830: 003c 5f70 0000 8000 0000 8000 5bdb c440  .<_p........[..@
 00192840: 0502 0400 5747 544c 6379 6265 7274 616e  ....WGTLcybertan
 00192850: 5f72 6f6d 5f62 696e 0000 0000 0000 0000  _rom_bin........
 00192860: 0000 0000 000f 7f64 002c e000 0000 0000  .......d.,......

 005587c0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 005587d0: 0000 0000                                ....
July 11, 2008, at 05:51 AM by rwhitby --
Changed lines 40-41 from:
 Dunno what this block contains ... but it's the same in both versions.
to:
 Dunno what this block contains ... but it's the same in both versions, so that four byte number cannot be a CRC or length value.
Added lines 56-58:
 Zero padding, same in both versions.
Changed lines 60-61 from:
to:
 000000f0: 0000 0000 0000 0000 0000 0000 0000 0d75  ...............u
Added lines 65-67:
 Dunno what this block contains ... but it's the same in both versions, so that four byte number cannot be a CRC or length value.
Changed lines 69-71 from:
 Dunno what this block contains ...
to:
 00000110: 3818 282b b9b1 18d1 385c 3f00 363a 77b7  8.(+....8\?.6:w.

 Dunno what this block contains ... it's different in both versions.
Changed lines 74-76 from:
 0x003bc958 is the size of the cybertan_rom_bin image, and 1.0 looks like a version number.
to:
 00000120: 003c 5fb0 0000 0000 312e 3000 0000 0000  .<_.....1.0.....

 0x003bc958 and 0x003c5fb0 are the size of the cybertan_rom_bin image for each version, and 1.0 looks like a version number.
Added lines 82-84:
 Zero padding, same in both versions.
Changed lines 86-87 from:
to:
 00000170: 0000 0000 0000 0000 0000 0000 0000 0ae1  ................
Changed lines 99-100 from:
 This is a duplicate of the block at 0x80 - 0xff.  We don't know why it's duplicated.  Perhaps this is where a language pack image header goes?
to:
 00000180: 0000 0000 b8b4 d4ad 0300 0000 0000 0080  ................
 00000190: 45ff 5c6e eccf 6286 1577 ce29 1fee e46f  E.\n..b..w.)...o
 000001a0: 0019 25a4 0000 0000 312e 3000 0000 0000  ..%.....1.0.....
 000001b0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001c0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001d0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001e0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001f0: 0000 0000 0000 0000 0000 0000 0000 0d75  ...............u

 This is a duplicate of the block at 0x80 - 0xff in each of the firmare versions.  We don't know why it's duplicated.  Perhaps this is where a language pack image header goes?
Deleted lines 178-199:
 000000b0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000000c0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000000d0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000000e0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000000f0: 0000 0000 0000 0000 0000 0000 0000 0d75  ...............u
 00000100: 0000 0000 c6f4 b6af 0100 0000 0000 0080  ................
 00000110: 3818 282b b9b1 18d1 385c 3f00 363a 77b7  8.(+....8\?.6:w.
 00000120: 003c 5fb0 0000 0000 312e 3000 0000 0000  .<_.....1.0.....
 00000130: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000140: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000150: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000160: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000170: 0000 0000 0000 0000 0000 0000 0000 0ae1  ................
 00000180: 0000 0000 b8b4 d4ad 0300 0000 0000 0080  ................
 00000190: 45ff 5c6e eccf 6286 1577 ce29 1fee e46f  E.\n..b..w.)...o
 000001a0: 0019 25a4 0000 0000 312e 3000 0000 0000  ..%.....1.0.....
 000001b0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001c0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001d0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001e0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001f0: 0000 0000 0000 0000 0000 0000 0000 0d75  ...............u
July 11, 2008, at 05:34 AM by rwhitby --
Deleted lines 5-7:
 This is a magic string to denote a WRP400 encapsulated firmware image.
Added lines 8-10:
 This is a magic string to denote a WRP400 encapsulated firmware image.  This bit is the same in both firmware versions.
Changed lines 13-16 from:
 00000050: 0000 0080 0000 0080 0054 f114            .........T..

 Dunno what this block contains ...
to:
 00000030: 1ad5 5e56 99e5 8594 fb83 b607 708a 153d  ..^V........p..=
 00000040: 783d 17df 8756 05f1 5cbd db19 791d 150a  x=...V..\...y...

 Dunno what this block contains ... it's different in both versions.

 00000050: 0000 0080 0000 0080                      ........

 This bit is the same in both versions, and is probably the load and entry addresses.

 00000058: 0054 f114                                .T..
 00000058: 0055 87d4                                .U..

 This is the length of the encapsulated firmware file.
Changed lines 29-31 from:
 This is the firmware version number.
to:
 0000005c: 312e 3030 2e30 3600                      1.00.06...

 This is the firmware version number in the respective versions.
Changed lines 36-37 from:
 0x02 may be the number of encapsulated images ...
to:
 Zero padding until 0x02 at offset 0x7f may be the number of encapsulated images.  This bit is the same in both firmware versions.
Added lines 39-41:
 Dunno what this block contains ... but it's the same in both versions.
Changed lines 43-45 from:
 Dunno what this block contains ...
to:
 00000090: 45ff 5c6e eccf 6286 1577 ce29 1fee e46f  E.\n..b..w.)...o

 Dunno what this block contains ... it's different in both versions.
Changed lines 48-50 from:
 0x0019253c is the size of the cybertan_half_bin image, and 1.0 looks like a version number.
to:
 000000a0: 0019 25a4 0000 0000 312e 3000 0000 0000  ..%.....1.0.....

 0x0019253c and 0x001925a4 are the size of the cybertan_half_bin image for each version, and 1.0 looks like a version number.
Changed lines 154-164 from:
 00000000: 5752 5034 3030 2020 4669 526d 5761 5265  WRP400  FiRmWaRe
 00000010: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000020: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000030: 1ad5 5e56 99e5 8594 fb83 b607 708a 153d  ..^V........p..=
 00000040: 783d 17df 8756 05f1 5cbd db19 791d 150a  x=...V..\...y...
 00000050: 0000 0080 0000 0080 0055 87d4 312e 3030  .........U..1.00
 00000060: 2e30 3600 0000 0000 0000 0000 0000 0000  .06.............
 00000070: 0000 0000 0000 0000 0000 0000 0000 0002  ................
 00000080: 0000 0000 b8b4 d4ad 0300 0000 0000 0080  ................
 00000090: 45ff 5c6e eccf 6286 1577 ce29 1fee e46f  E.\n..b..w.)...o
 000000a0: 0019 25a4 0000 0000 312e 3000 0000 0000  ..%.....1.0.....
to:
July 11, 2008, at 04:53 AM by rwhitby --
Added lines 182-184:
 005587c0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 005587d0: 0000 0000                                ....
July 11, 2008, at 04:52 AM by rwhitby --
Changed line 137 from:
 00000000: 5752 5034 3030 2020 4669 526d 5761 5265  WRP400  FiRmWaRe?
to:
 00000000: 5752 5034 3030 2020 4669 526d 5761 5265  WRP400  FiRmWaRe
Changed line 172 from:
 00000220: 5747 544c 6379 6265 7274 616e 5f68 616c  WGTLcybertan?_hal
to:
 00000220: 5747 544c 6379 6265 7274 616e 5f68 616c  WGTLcybertan_hal
Changed line 178 from:
 00192840: 0502 0400 5747 544c 6379 6265 7274 616e  ....WGTLcybertan?
to:
 00192840: 0502 0400 5747 544c 6379 6265 7274 616e  ....WGTLcybertan
July 11, 2008, at 04:51 AM by rwhitby --
Changed lines 1-2 from:

The upgrade firmware binary file for the WRP400 has the following format:

to:

The upgrade firmware binary file for the WRP400 has the following format (first example from version 1.00.4, second from version 1.00.6):

Added lines 137-181:
 00000000: 5752 5034 3030 2020 4669 526d 5761 5265  WRP400  FiRmWaRe?
 00000010: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000020: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000030: 1ad5 5e56 99e5 8594 fb83 b607 708a 153d  ..^V........p..=
 00000040: 783d 17df 8756 05f1 5cbd db19 791d 150a  x=...V..\...y...
 00000050: 0000 0080 0000 0080 0055 87d4 312e 3030  .........U..1.00
 00000060: 2e30 3600 0000 0000 0000 0000 0000 0000  .06.............
 00000070: 0000 0000 0000 0000 0000 0000 0000 0002  ................
 00000080: 0000 0000 b8b4 d4ad 0300 0000 0000 0080  ................
 00000090: 45ff 5c6e eccf 6286 1577 ce29 1fee e46f  E.\n..b..w.)...o
 000000a0: 0019 25a4 0000 0000 312e 3000 0000 0000  ..%.....1.0.....
 000000b0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000000c0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000000d0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000000e0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000000f0: 0000 0000 0000 0000 0000 0000 0000 0d75  ...............u
 00000100: 0000 0000 c6f4 b6af 0100 0000 0000 0080  ................
 00000110: 3818 282b b9b1 18d1 385c 3f00 363a 77b7  8.(+....8\?.6:w.
 00000120: 003c 5fb0 0000 0000 312e 3000 0000 0000  .<_.....1.0.....
 00000130: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000140: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000150: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000160: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000170: 0000 0000 0000 0000 0000 0000 0000 0ae1  ................
 00000180: 0000 0000 b8b4 d4ad 0300 0000 0000 0080  ................
 00000190: 45ff 5c6e eccf 6286 1577 ce29 1fee e46f  E.\n..b..w.)...o
 000001a0: 0019 25a4 0000 0000 312e 3000 0000 0000  ..%.....1.0.....
 000001b0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001c0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001d0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001e0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001f0: 0000 0000 0000 0000 0000 0000 0000 0d75  ...............u

 00000200: 2705 1956 0385 b0bb 47c8 c417 0019 2564  '..V....G.....%d
 00000210: 0000 8000 0000 8000 8a8e 26e7 0502 0400  ..........&.....
 00000220: 5747 544c 6379 6265 7274 616e 5f68 616c  WGTLcybertan?_hal
 00000230: 665f 6269 6e00 0000 0000 0000 0000 0000  f_bin...........
 00000240: 000d 5558 000b d000 0000 0000 0000 a0e1  ..UX............

 00192820: 0000 0ae1 2705 1956 c7ed 734c 483f 4396  ....'..V..sLH?C.
 00192830: 003c 5f70 0000 8000 0000 8000 5bdb c440  .<_p........[..@
 00192840: 0502 0400 5747 544c 6379 6265 7274 616e  ....WGTLcybertan?
 00192850: 5f72 6f6d 5f62 696e 0000 0000 0000 0000  _rom_bin........
 00192860: 0000 0000 000f 7f64 002c e000 0000 0000  .......d.,......
July 08, 2008, at 11:57 AM by rwhitby --
Changed lines 69-70 from:
 This is a duplicate of the block at 0x80 - 0xff.
to:
 This is a duplicate of the block at 0x80 - 0xff.  We don't know why it's duplicated.  Perhaps this is where a language pack image header goes?
July 08, 2008, at 11:48 AM by rwhitby --
Changed lines 41-42 from:
 Dunno what that last number is ...
to:
 The last number is a simple 16-bit sum over the previous 0x7d bytes (i.e. 0xb8+0xb4+0xd4+0xad+...+0x31+0x2e+0x30).
Changed lines 58-59 from:
 Dunno what that last number is ...
to:
 The last number is again a simple 16-bit sum over the previous 0x7d bytes.
July 08, 2008, at 11:40 AM by rwhitby --
Changed lines 71-72 from:
  • cybertan_half_bin uboot mult-file image:
to:
  • cybertan_half_bin uboot mult-file image (0x19253c bytes long)
Changed lines 103-104 from:
  • cybertan_rom_bin uboot multi-file image 3918168 bytes @ 0x1927bc (1648572)
to:
  • cybertan_rom_bin uboot multi-file image (0x3bc958 bytes long)
July 08, 2008, at 11:35 AM by rwhitby --
Added lines 15-16:
 Dunno what this block contains ...
Added lines 29-30:
 Dunno what this block contains ...
Added lines 41-42:
 Dunno what that last number is ...
Added lines 46-47:
 Dunno what this block contains ...
Changed lines 58-59 from:
to:
 Dunno what that last number is ...
Changed lines 69-70 from:
 This is a duplicate of the block at 0x80 - 0x
to:
 This is a duplicate of the block at 0x80 - 0xff.
July 08, 2008, at 11:31 AM by rwhitby --
Changed lines 29-30 from:
 0x0019253c must correspond somehow to the length of the cybertan_half_bin image, and 1.0 looks like a version number.
to:
 0x0019253c is the size of the cybertan_half_bin image, and 1.0 looks like a version number.
Changed lines 42-43 from:
 0x003bc958 must correspond somehow to the length of the cybertan_rom_bin image, and 1.0 looks like a version number.
to:
 0x003bc958 is the size of the cybertan_rom_bin image, and 1.0 looks like a version number.
July 08, 2008, at 11:29 AM by rwhitby --
Added lines 22-23:
 0x02 may be the number of encapsulated images ...
July 08, 2008, at 11:28 AM by rwhitby --
Added lines 6-8:
 This is a magic string to denote a WRP400 encapsulated firmware image.
Changed lines 13-14 from:
 00000050: 0000 0080 0000 0080 0054 f114 312e 3030  .........T..1.00
 00000060: 2e30 342e 6300 0000 0000 0000 0000 0000  .04.c...........
to:
 00000050: 0000 0080 0000 0080 0054 f114            .........T..

 0000005c: 312e 3030 2e30 342e 6300                 1.00.04.c.

 This is the firmware version number.

 00000066:                0000 0000 0000 0000 0000        ..........
Added line 21:
Added line 24:
Added lines 26-28:
 0x0019253c must correspond somehow to the length of the cybertan_half_bin image, and 1.0 looks like a version number.
Added line 34:
Added line 37:
Added lines 39-41:
 0x003bc958 must correspond somehow to the length of the cybertan_rom_bin image, and 1.0 looks like a version number.
Added lines 47-48:
Added lines 58-59:
 This is a duplicate of the block at 0x80 - 0x
July 08, 2008, at 08:04 AM by rwhitby --
Changed lines 72-73 from:
 dd if=./WRP400_v1.00.04.c_ETSI.bin of=cybertan_half_bin.img bs=1 skip=1648572 count=3918168 
to:
 dd if=./WRP400_v1.00.04.c_ETSI.bin of=cybertan_rom_bin.img bs=1 skip=1648572 count=3918168 
July 08, 2008, at 08:03 AM by rwhitby --
Added lines 72-73:
 dd if=./WRP400_v1.00.04.c_ETSI.bin of=cybertan_half_bin.img bs=1 skip=1648572 count=3918168 
July 08, 2008, at 08:02 AM by rwhitby --
Changed lines 56-58 from:
 Contents:
   Image 0 @ 0x0024c (   588):   873712 Bytes (0x0d54f0)
to:
 Image 0 @ 0x0024c (   588):   873712 Bytes (0x0d54f0)
Changed lines 63-64 from:
   Image 1 @ 0xd573c (874300):   774144 Bytes (0x0bd000)
to:
 Image 1 @ 0xd573c (874300):   774144 Bytes (0x0bd000)
Changed lines 88-89 from:
 Contents:
   Image 0 @ 0x192808 (1648648):  1005836 Bytes (0x0f590c)
to:
 Image 0 @ 0x192808 (1648648):  1005836 Bytes (0x0f590c)

 dd if=./WRP400_v1.00.04.c_ETSI.bin of=full-kernel.bin bs=1 skip=1648648 count=1005836
Changed lines 94-98 from:
   Image 1 @ 0x288114 (2654484):  2912256 Bytes (0x2c7000)
to:
 Image 1 @ 0x288114 (2654484):  2912256 Bytes (0x2c7000)

 dd if=./WRP400_v1.00.04.c_ETSI.bin of=full-rootfs.bin bs=1 skip=2654484 count=2912256
July 08, 2008, at 07:58 AM by rwhitby --
Changed lines 3-5 from:
  • WRP400 FiRmWaRe header
 00000000: 5752 5034 3030 2020 4669 526d 5761 5265  WRP400  FiRmWaRe
to:
  • WRP400 FiRmWaRe header
 00000000: 5752 5034 3030 2020 4669 526d 5761 5265  WRP400  FiRmWaRe
July 08, 2008, at 07:56 AM by rwhitby --
July 08, 2008, at 07:56 AM by rwhitby --
Changed lines 38-39 from:
  • cybertan_half_bin uboot mult-file image: 1647932 bytes @ 0x200 (512)
to:
  • cybertan_half_bin uboot mult-file image:
 dd if=./WRP400_v1.00.04.c_ETSI.bin of=cybertan_half_bin.img bs=1 skip=512 count=1647932
Added lines 58-60:
 dd if=./WRP400_v1.00.04.c_ETSI.bin of=half-kernel.bin bs=1 skip=588 count=873712
Added line 63:
Added lines 65-67:
 dd if=./WRP400_v1.00.04.c_ETSI.bin of=half-rootfs.bin bs=1 skip=874300 count=774144
July 08, 2008, at 07:51 AM by rwhitby --
Changed lines 38-39 from:
  • cybertan_half_bin uboot mult-file image @ 0x200 (512)
to:
  • cybertan_half_bin uboot mult-file image: 1647932 bytes @ 0x200 (512)
Changed lines 62-63 from:
  • cybertan_rom_bin uboot multi-file image @ 0x1927bc (1648572)
to:
  • cybertan_rom_bin uboot multi-file image 3918168 bytes @ 0x1927bc (1648572)
July 08, 2008, at 07:49 AM by rwhitby --
Changed lines 38-39 from:
  • cybertan_half_bin uboot mult-file image
to:
  • cybertan_half_bin uboot mult-file image @ 0x200 (512)
Changed lines 62-63 from:
  • cybertan_rom_bin uboot multi-file image
to:
  • cybertan_rom_bin uboot multi-file image @ 0x1927bc (1648572)
July 08, 2008, at 07:47 AM by rwhitby --
Changed lines 55-57 from:
   Image 0:   873712 Bytes (0x0d54f0)
   Image 1:   774144 Bytes (0x0bd000)
to:
   Image 0 @ 0x0024c (   588):   873712 Bytes (0x0d54f0)
 0000024c:                               0000 a0e1              ....
 00000250: 0000 a0e1 0000 a0e1 0000 a0e1 0000 a0e1  ................
   Image 1 @ 0xd573c (874300):   774144 Bytes (0x0bd000)
 000d573c:                               6873 7173              hsqs
 000d5740: 0f01 0000 0000 00f0 08a8 bfb5 d37e 0092  .............~..
Changed lines 81-83 from:
   Image 0:  1005836 Bytes (0x0f590c)
   Image 1:  2912256 Bytes (0x2c7000)
to:
   Image 0 @ 0x192808 (1648648):  1005836 Bytes (0x0f590c)
 00192808:                     0000 a0e1 0000 a0e1          ........
 00192810: 0000 a0e1 0000 a0e1 0000 a0e1 0000 a0e1  ................
   Image 1 @ 0x288114 (2654484):  2912256 Bytes (0x2c7000)
 00288114:           6873 7173 b002 0000 0000 00d0      hsqs........
 00288120: 09c8 bfb5 d37e 0092 6381 000f 8b04 08dc  .....~..c.......
July 08, 2008, at 07:38 AM by rwhitby --
Changed line 48 from:
 Data Size:    1647868 Bytes = 0x1924fc = 1609.25 kB = 1.57 MB
to:
 Data Size:    1647868 Bytes (0x1924fc)
Changed lines 55-57 from:
   Image 0:   873712 Bytes = 0x0d54f0 =  853 kB = 0 MB
   Image 1:   774144 Bytes = 0x0bd000 =  756 kB = 0 MB
to:
   Image 0:   873712 Bytes (0x0d54f0)
   Image 1:   774144 Bytes (0x0bd000)
Changed line 69 from:
 Data Size:    3918104 Bytes = 0x3bc918 = 3826.27 kB = 3.74 MB
to:
 Data Size:    3918104 Bytes = (0x3bc918)
Changed lines 77-79 from:
   Image 0:  1005836 Bytes = 0x0f590c =  982 kB = 0 MB
   Image 1:  2912256 Bytes = 0x2c7000 = 2844 kB = 2 MB
to:
   Image 0:  1005836 Bytes (0x0f590c)
   Image 1:  2912256 Bytes (0x2c7000)
July 08, 2008, at 07:33 AM by rwhitby --
Changed line 48 from:
 Data Size:    1647868 Bytes = 1609.25 kB = 1.57 MB
to:
 Data Size:    1647868 Bytes = 0x1924fc = 1609.25 kB = 1.57 MB
Changed lines 55-57 from:
   Image 0:   873712 Bytes =  853 kB = 0 MB
   Image 1:   774144 Bytes =  756 kB = 0 MB
to:
   Image 0:   873712 Bytes = 0x0d54f0 =  853 kB = 0 MB
   Image 1:   774144 Bytes = 0x0bd000 =  756 kB = 0 MB
Changed line 69 from:
 Data Size:    3918104 Bytes = 3826.27 kB = 3.74 MB
to:
 Data Size:    3918104 Bytes = 0x3bc918 = 3826.27 kB = 3.74 MB
Changed lines 77-79 from:
   Image 0:  1005836 Bytes =  982 kB = 0 MB
   Image 1:  2912256 Bytes = 2844 kB = 2 MB
to:
   Image 0:  1005836 Bytes = 0x0f590c =  982 kB = 0 MB
   Image 1:  2912256 Bytes = 0x2c7000 = 2844 kB = 2 MB
July 08, 2008, at 07:30 AM by rwhitby --
Added lines 44-51:
 Image Name:   cybertan_half_bin
 Created:      Fri Nov 16 12:44:14 2007
 Image Type:   ARM Linux Multi-File Image (uncompressed)
 Data Size:    1647868 Bytes = 1609.25 kB = 1.57 MB
 Load Address: 0x00008000
 Entry Point:  0x00008000
Changed lines 54-55 from:
  • cybertan_full_bin uboot multi-file image
to:
 Contents:
   Image 0:   873712 Bytes =  853 kB = 0 MB
   Image 1:   774144 Bytes =  756 kB = 0 MB
  • cybertan_rom_bin uboot multi-file image
Changed lines 64-73 from:
 001927f0: 0000 0000 0000 0000 0000 0000 000f 590c  ..............Y.
to:
 001927f0: 0000 0000 0000 0000 0000 0000            ............

 Image Name:   cybertan_rom_bin
 Created:      Thu Jan 10 14:47:18 2008
 Image Type:   ARM Linux Multi-File Image (uncompressed)
 Data Size:    3918104 Bytes = 3826.27 kB = 3.74 MB
 Load Address: 0x00008000
 Entry Point:  0x00008000

 001927fc:                               000f 590c              ..Y.
Added lines 76-79:
 Contents:
   Image 0:  1005836 Bytes =  982 kB = 0 MB
   Image 1:  2912256 Bytes = 2844 kB = 2 MB
July 08, 2008, at 06:28 AM by rwhitby --
Changed lines 3-5 from:
  • WRP400 FiRmWaRe header
 00000000: 5752 5034 3030 2020 4669 526d 5761 5265  WRP400  FiRmWaRe
to:
  • WRP400 FiRmWaRe header
 00000000: 5752 5034 3030 2020 4669 526d 5761 5265  WRP400  FiRmWaRe
Changed line 42 from:
 00000220: 5747 544c 6379 6265 7274 616e 5f68 616c  WGTLcybertan?_hal
to:
 00000220: 5747 544c 6379 6265 7274 616e 5f68 616c  WGTLcybertan_hal
July 08, 2008, at 06:28 AM by rwhitby --
Changed lines 3-5 from:
 00000000: 5752 5034 3030 2020 4669 526d 5761 5265  WRP400  FiRmWaRe?
to:
  • WRP400 FiRmWaRe header
 00000000: 5752 5034 3030 2020 4669 526d 5761 5265  WRP400  FiRmWaRe
July 08, 2008, at 06:27 AM by rwhitby --
Changed lines 38-39 from:
  • cybertan_half_bin image
to:
  • cybertan_half_bin uboot mult-file image
Changed lines 44-56 from:
 ....
  • some stuff
 00192730: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00192740: c6f4 b6af 0100 0000 0000 0080 6fb0 a264  ............o..d
 00192750: 1f79 4cb0 4449 af85 a7ca b582 003b c958  .yL.DI.......;.X
 00192760: 0000 0000 312e 3000 0000 0000 0000 0000  ....1.0.........
 00192770: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00192780: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00192790: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 001927a0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 001927b0: 0000 0000 0000 0000 0000 0dad 2705 1956  ............'..V
to:
 00000240: 000d 54f0 000b d000 0000 0000            ..T.........
  • cybertan_full_bin uboot multi-file image
 001927bc:                               2705 1956              '..V
Deleted lines 50-55:
  • cybertan_full_bin image
 001927bc:                               2705 1956              '..V
 001927c0: 9d5f eaba 4785 9c4e 003b c918 0000 8000  ._..G..N.;......
 001927d0: 0000 8000 195c c8f4 0502 0400 5747 544c  .....\......WGTL
Changed lines 52-53 from:
 001927f0: 0000 0000 0000 0000 0000 0000            ............
to:
 001927f0: 0000 0000 0000 0000 0000 0000 000f 590c  ..............Y.
 00192800: 002c 7000 0000 0000                      .,p.....

Image header format:

Changed line 79 from:

"Multi-File Images" start with a list of image sizes, each image size (in bytes) specified by an "uint32_t" in network byte order. This list is terminated by an "(uint32_t)0". Immediately after the terminating 0 follow the images, one by one, all aligned on "uint32_t" boundaries (size rounded up to a multiple of 4 bytes).

to:

Multi-File Images start with a list of image sizes, each image size (in bytes) specified by an uint32_t in network byte order. This list is terminated by an (uint32_t)0. Immediately after the terminating 0 follow the images, one by one, all aligned on uint32_t boundaries (size rounded up to a multiple of 4 bytes).

July 08, 2008, at 06:23 AM by rwhitby --
Added lines 89-90:

"Multi-File Images" start with a list of image sizes, each image size (in bytes) specified by an "uint32_t" in network byte order. This list is terminated by an "(uint32_t)0". Immediately after the terminating 0 follow the images, one by one, all aligned on "uint32_t" boundaries (size rounded up to a multiple of 4 bytes).

July 08, 2008, at 06:04 AM by rwhitby --
Added lines 1-88:

The upgrade firmware binary file for the WRP400 has the following format:

 00000000: 5752 5034 3030 2020 4669 526d 5761 5265  WRP400  FiRmWaRe?
 00000010: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000020: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000030: 4a8e c363 a34f 5e9b 85df c6be f77e 3790  J..c.O^......~7.
 00000040: ee42 39e6 0afb 2b68 2672 441b e0d2 546e  .B9...+h&rD...Tn
 00000050: 0000 0080 0000 0080 0054 f114 312e 3030  .........T..1.00
 00000060: 2e30 342e 6300 0000 0000 0000 0000 0000  .04.c...........
 00000070: 0000 0000 0000 0000 0000 0000 0000 0002  ................
 00000080: 0000 0000 b8b4 d4ad 0300 0000 0000 0080  ................
 00000090: ae50 b5a4 612b fb52 f1cc 86e9 679f d74c  .P..a+.R....g..L
 000000a0: 0019 253c 0000 0000 312e 3000 0000 0000  ..%<....1.0.....
 000000b0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000000c0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000000d0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000000e0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000000f0: 0000 0000 0000 0000 0000 0000 0000 0dfe  ................
 00000100: 0000 0000 c6f4 b6af 0100 0000 0000 0080  ................
 00000110: 6fb0 a264 1f79 4cb0 4449 af85 a7ca b582  o..d.yL.DI......
 00000120: 003b c958 0000 0000 312e 3000 0000 0000  .;.X....1.0.....
 00000130: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000140: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000150: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000160: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00000170: 0000 0000 0000 0000 0000 0000 0000 0dad  ................
 00000180: 0000 0000 b8b4 d4ad 0300 0000 0000 0080  ................
 00000190: ae50 b5a4 612b fb52 f1cc 86e9 679f d74c  .P..a+.R....g..L
 000001a0: 0019 253c 0000 0000 312e 3000 0000 0000  ..%<....1.0.....
 000001b0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001c0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001d0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001e0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 000001f0: 0000 0000 0000 0000 0000 0000 0000 0dfe  ................
  • cybertan_half_bin image
 00000200: 2705 1956 5d8b 1b41 473c fcf6 0019 24fc  '..V]..AG<....$.
 00000210: 0000 8000 0000 8000 1356 508c 0502 0400  .........VP.....
 00000220: 5747 544c 6379 6265 7274 616e 5f68 616c  WGTLcybertan?_hal
 00000230: 665f 6269 6e00 0000 0000 0000 0000 0000  f_bin...........
 ....
  • some stuff
 00192730: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00192740: c6f4 b6af 0100 0000 0000 0080 6fb0 a264  ............o..d
 00192750: 1f79 4cb0 4449 af85 a7ca b582 003b c958  .yL.DI.......;.X
 00192760: 0000 0000 312e 3000 0000 0000 0000 0000  ....1.0.........
 00192770: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00192780: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 00192790: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 001927a0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
 001927b0: 0000 0000 0000 0000 0000 0dad 2705 1956  ............'..V
 001927c0: 9d5f eaba 4785 9c4e 003b c918 0000 8000  ._..G..N.;......
 001927d0: 0000 8000 195c c8f4 0502 0400 5747 544c  .....\......WGTL
  • cybertan_full_bin image
 001927bc:                               2705 1956              '..V
 001927c0: 9d5f eaba 4785 9c4e 003b c918 0000 8000  ._..G..N.;......
 001927d0: 0000 8000 195c c8f4 0502 0400 5747 544c  .....\......WGTL
 001927e0: 6379 6265 7274 616e 5f72 6f6d 5f62 696e  cybertan_rom_bin
 001927f0: 0000 0000 0000 0000 0000 0000            ............

 #define IH_MAGIC        0x27051956      /* Image Magic Number           */
 #define IH_OS_LINUX             5       /* Linux        */
 #define IH_CPU_ARM              2       /* ARM          */
 #define IH_TYPE_MULTI           4       /* Multi-File Image             */
 #define IH_COMP_NONE            0       /*  No   Compression Used       */

 typedef struct image_header {
         unsigned int    ih_magic;       /* Image Header Magic Number    */
         unsigned int    ih_hcrc;        /* Image Header CRC Checksum    */
         unsigned int    ih_time;        /* Image Creation Timestamp     */
         unsigned int    ih_size;        /* Image Data Size              */
         unsigned int    ih_load;        /* Data  Load  Address          */
         unsigned int    ih_ep;          /* Entry Point Address          */
         unsigned int    ih_dcrc;        /* Image Data CRC Checksum      */
         unsigned char   ih_os;          /* Operating System             */
         unsigned char   ih_arch;        /* CPU architecture             */
         unsigned char   ih_type;        /* Image Type                   */
         unsigned char   ih_comp;        /* Compression Type             */
         unsigned char   ih_codepattern[4];        /* Image Code Pattern */
         unsigned char   ih_name[28];              /* Image Name         */
 } image_header_t;
view · edit · print · history · Last edited by rwhitby.
Originally by rwhitby.
Page last modified on July 11, 2008, at 06:18 AM