Prism2 PNP ID restore

Pavel Roskin proski at gnu.org
Wed Nov 5 20:29:01 EST 2003


On Thu, 6 Nov 2003, Daniel Kostadinov wrote:

> Thank you for very good info. I create new file using my cis dump and
> Bromax5v.hex but flash utils told me that there is Check sum error on
> line 2 and dont want to flash it. Thing that maybe a dump file is not
> valid or corrupted. When i conver dump file from hex to ascii there is
> some wrong symbols in PNP ID. The unknow prism2 card is some Proxim OEM
> card removed from AP.

I guess you miscalculated the checksum on that line.  You didn't give
enough detail to for me to know for sure.  It's better to use objcopy
rather that calculate checksums by hand.

That's what you could do.  First remove the PDR (which objcopy doesn't
understand), convert to binary and check by dump_cis.  Sorry, but dump_cis
must be run as root because it uses kernel code to parse the CIS (as
stupid as it is).

# grep -v S315FF0000 BROMAX5V.HEX >br1.hex
# objcopy --output-format=binary --input-format=srec br1.hex br1.bin
# dump_cis -i br1.bin

Now edit br1.bin in a hex editor.  Don't forget to set the MAC address in
lan_node_id.  When done, make sure you got the links right by running
dump_cis again.  Alternatively, you can use pack_cis on the dump_cis
output, but it will lose some data, including lan_node_id.  I don't know
if it's critical.  You may want to fix pack_cis if you are not afraid of
lex and yacc.

It's very important to check integrity of the CIS by running dump_cis, or
the card may not be recognized at all.  Now convert the binary back to the
s-record:

# objcopy --output-format=srec --input-format=binary \
 --adjust-vma=0x3EFE00 --srec-forceS3 br1.bin br2.hex

The resulting file should have correct checksums.  Kill the S0 record (no
idea what it means) and replace the S7 record with the original.  The
resulting file should be flashable.

-- 
Regards,
Pavel Roskin



More information about the HostAP mailing list