<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
FONT-SIZE: 10pt;
FONT-FAMILY:Tahoma
}
</style>
</head>
<body class='hmmessage'>
Hi all,<br><br>Ludwig Jaffe wrote:<br>> Hi all,<br>> <br>> i fiddled around with the flashrom util, and I managed to rewrite the <br>> original compaq-bios, which I saved before.<br>> I modified the flashrom-utily to enable writing the flashrom. The <br>> 29F002BT works with 29f002-funktions and *not* with jedec....<br>> The only problem that remains, is that it is not possible to unprotect <br>> the 20f002bt (ST). with the flashrom utily. So I can not upgrade the flash!<br>> I will go and code some improvement to that.<br>> <br><br>i worked with Uwe to create the support for the Compaq deskpro EN SFF <br>600N i have here<br><br>i needed 3 hardware mods:<br>- socket for the flash chip (with loads of luck you can skip this but <br>please let me test the current tree before you flash coreboot into your <br>unit)<br>- set SW1 to ON to disable the write protection on the'normal' (non <br>bootblock ) part of the bios (if you dont do this the ASIC will disable <br>ANY writes even probes to the flash iirc<br>-if you have the original chip onboard: short (not installed) jumper P34 <br>that is next to the flashpart (shorting this will temp. unlock the <br>bootblock and allow (un)programming of the lockbits note that you should <br>first protected the whole chip before unproetcting.<br><br>i also needed a couple of software hacks that are not yet in the tree:<br>-disable some parts of the southbrigde (KBC ectect) so the superio can <br>handle them<br>-stuff some values to the ASIC so networking works (otherwise eth0 will <br>not show on the pci bus)<br>-i had some trouble with onboard audio but i dont remember the details now<br>-i dont have onboard vga working yet  and was planning on maybe using / <br>writing free support for it so i dont need a vga bios<br><br><br>i dont have time today/tomorrow to look at it in more detail .. will do <br>that later this week ...<br><br>greetings,<br>todthgie<br><br><br><br><br>> A suggestion regarding architecture:<br>> <br><sinp><br>> We should add a function-pointer for protect and unprotect, because this <br>> is sometimes special. e.g. 29f002bt (st).<br>> We should provide an extra funktion to protect/unprotect the bios to the <br>> user, so that reweiting the eeprom will be<br>> read() -> save old<br>> unprotect()<br>> test_if_unprotected()<br>> if not die<br>> erase()<br>> test_if_empty()<br>> if not, try to rewrite saved_old!<br>> else die.<br>> write<br>> verify<br>> <br>> <br>> So the methods protect/unprotect have to be seperate and not be hidden <br>> in erase or write functions.<br>> And they should be accessible via the punction-pointer-table.<br>> <br>> <br>> <br>> My patch contains my little modifications and da doxygen file to ease <br>> understanding the code.<br>> <br>> Please help me to improve the architecture of flashrom.<br>> <br>> Greetings<br>> <br>> <br>> LuJa<br>> <br>> <br>> <br>> <br><br><br /><hr />Express yourself instantly with MSN Messenger! <a href='http://clk.atdmt.com/AVE/go/onm00200471ave/direct/01/' target='_new'>MSN Messenger</a></body>
</html>