Dumboton Membre indispensable


Inscrit le: 20 Juin 2005 Messages: 10316 Localisation: 95170
|
Posté le: Lun 12 Juin 2006 pm 16:00 Sujet du message: |
|
|
La mémoire du AH4021 contient bien évidement l'image du firmware en cours. Celle-ci se compose de plusieurs parties.
1°) Une entête de 256 octets :
4 octets : Magic number (32 37 00 00 pour Alice, 36 00 00 00 pour CI )
20 octets : Label "Broadcom Corporation"
20 octets : Label "Firmware version 2.0"
16 octets : label nom du modèle "96348GWV" dans le code source
2 octests : "31 00"
10 octets : taille de l'image (sans l'entête) donc taille du fichier image - 256
Une série adresse/taille pour chaque partie de l'image (adresse 12 octets -taille 10 octets, )
- "Loader" : adresse mémoire hexa est 0xBFC00000 (3217031168 ) si absent 0/0 (Magic number 10 0 2 78 )
- "File system" : adresse mémoire hexa 0xBFC10100 (3217096960 ) (Magic number 73 71 73 68 ) (la taille du file system utile est donnée par les octets 9 à 12, mais dans l'image du firmware elle est étendue par des octets nuls jusqu'au début du kernel. Donc il faut dumper au moins 256 octets de plus que cette taille et couper au début du kernel)
- "Kernel" : adresse mémoire hexa (0xBFC10100 + taille du file system) (Magic number 80 01 00 00 80 18 80 1Cool (les 4octets suivants donnent la taille de du kernel, donc la taille totale de l'image du kernel est égale à cette taille +C )
La taille de l'image est donc égale à la somme des tailles de chacune des parties.
et enfin :
octets 217 à 220 : data checksum de l'image (hors entête)
octets 237 à 240 : data checksum de l'entête.
Il s'agit du complément à 1 du CRC32 (FFFF FFFF - CRC32)
sinon tu fais une route statique de l'Ip du serveur de mise à jour sur le lan (br0) _________________
CI c'était des hommes, un service et de la qualité |
|