Bootblock Recovery Code Checkpoints

The Bootblock recovery code gets control when the BIOS determines that a BIOS recovery needs to occur because the user has forced the update or the BIOS checksum is corrupt. Refer to “BIOS Recovery” on page 25 for more information about performing a BIOS recovery.

The following table describes the type of checkpoints that may occur during the Bootblock recovery portion of the BIOS.

NOTE: Checkpoints may differ between different platforms based on system configuration. Checkpoints may change due to vendor requirements, system chipset or option ROMs from add-in PCI devices.

Checkpoint

Description

 

 

E0

Initialize the floppy controller in the super I/O. Some interrupt vectors are

 

initialized. DMA controller is initialized. 8259 interrupt controller is initialized.

 

L1 cache is enabled.

 

 

E9

Set up floppy controller and data. Attempt to read from floppy.

 

 

EA

Enable ATAPI hardware. Attempt to read from ARMD and ATAPI CDROM.

 

 

EB

Disable ATAPI hardware. Jump back to checkpoint E9.

 

 

EF

Read error occurred on media. Jump back to checkpoint EB.

 

 

E9 or EA

Determine information about root directory of recovery media.

 

 

F0

Search for pre-defined recovery file name in root directory.

 

 

F1

Recovery file not found.

 

 

F2

Start reading FAT table and analyze FAT to find the clusters occupied by the

 

recovery file.

 

 

F3

Start reading the recovery file cluster by cluster.

 

 

F5

Disable L1 cache.

 

 

FA

Check the validity of the recovery file configuration to the current configuration of

 

the flash part.

 

 

FB

Make flash write enabled through chipset and OEM specific method. Detect proper

 

flash part. Verify that the found flash part size equals the recovery file size.

 

 

F4

The recovery file size does not equal the found flash part size.

 

 

FC

Erase the flash part.

 

 

FD

Program the flash part.

 

 

FF

The flash has been updated successfully. Make flash write disabled. Disable

 

ATAPI hardware. Restore CPUID value back into register. Give control to F000

 

ROM at F000:FFF0h.

 

 

52

Chapter 4

Page 60
Image 60
Acer X3812, X5812 manual Bootblock Recovery Code Checkpoints