Z800 BIOS SPI Flash Write Protection
Posted by Thomas A. Kilbride, , 0 comments.

I got some surplus z800 hardware off of ebay with the hopes of making a usable desktop out of it. The only problem is the Intel Westmere architecture is not supported by all revisions of the motherboard (460838-003 supports Westmere architecture). This is fixed by modifying the “BootBlock” in the bios, unfortuinately there are some technicalities.


I need to update the bootblock in my BIOS. Based upon some research online the SPI Flash is write protected as a security feature. I assume this is just to prevent someone from installing malware at the BIOS-level see:[CIH Virus](http://en.wikipedia.org/wiki/CIH_(computer_virus).


The SPI Flash chip is an SST25VF016B. Looking at the datasheet I notice a WP# pin, this sets the write protect status register bits on whatever address is currently being written. It might be possible to perform the following modification:

	1. Dump the flash over SPI bus with an SPI programmer (BusPirate)
	2. Perform a full chip erase as per the datasheet for the SST25VF0116B.
	3. Jumper VDD to WP# pin to disable write protection.
	4. Perform a write with the flash from step 1.
	5. Attempt to overwrite BootBlock with SPIFLASH from user-land.

The result of this modification should allow me to modify the bootblock–this will allow a user to update the Z800 motherboard to support the westmere architecture. I will follow-up with another post in the future regarding the success (or failure) of this method.

Update: The WP# status register disables the ability to perform an erase; therefore, it is necessary to buy a new SST chip in order to replace the image on the chip. I’ll repost results soon.