=========================================================================== | Pentium(R) Pro Processor and Pentium(R) II Processor | | Processor Update Utility Help File | | v3.2 June 1997 | | Copyright 1995-7, Intel Corporation. | | | | TABLE OF CONTENTS | | 1) INTRODUCTION | | 2) MICROCODE UPDATE OVERVIEW | | 3) USING THE PROCESSOR UPDATE UTILITY | | 4) ERROR MESSAGES | | 5) LEGAL NOTICE | =========================================================================== 1) INTRODUCTION This document is written for professional system integrators building PCs from industry accepted motherboards, chassis, and peripherals. It summarizes use of the Processor Update Utility needed to successfully integrate PCs based on the Pentium(R) Pro processor and Pentium II processor. The information in this document applies to PCs assembled using Boxed Pentium Pro processors and Boxed Pentium II processors. The term "Boxed processors" refers to processors packaged for use by system integrators. 2) MICROCODE UPDATE OVERVIEW The Pentium Pro processor and Pentium II processor may contain design defects or errors known as errata that may cause the product to deviate from published specifications. Many times, the effects of the errata can be avoided by implementing hardware or software work-arounds, which are documented in the Pentum Pro Processor Specification Update and Pentium II Processor Specification Update, both of which can be found at www.intel.com. Pentium Pro and Pentium II processors include a feature called "reprogrammable microcode", which allows certain types of errata to be worked around via microcode updates. The microcode updates reside in the system BIOS and are loaded into the processor by the system BIOS during Power-On Self Test, or POST. System BIOS code on motherboards based on Pentium Pro and Pentium II processors contains microcode updates that are specific to each silicon stepping (revision) of the processor. Integrators must ensure the microcode update matches the processor stepping used. When the BIOS does not contain a microcode update that matches the processor stepping, integrators must install the latest microcode update in the BIOS before shipping the system. Historically, systems based on the Pentium Pro and Pentium II processors have been updated by upgrading the entire system BIOS with a new revision of the system BIOS that contains the correct microcode update for the processor. However, such a process may be time consuming when assembling and configuring many systems. Intel has worked closely with BIOS developers to implement a processor update Applications Programming Interface (API), which allows just the microcode update within the system BIOS to be installed as needed. Motherboards that contain a system BIOS with the Intel-defined processor update API can be quickly and easily updated, if required, without need for a complete system BIOS upgrade. Table 1 contains the current microcode update revision for each processor stepping. These microcode update revisions are contained in the microcode update database file, which comes with the Pentium Pro processor and Pentium II processor update utility. Table 1. Processor steppings (revisions) and microcode update revisions supported by the microcode update database file PEP4.PDB Processor Stepping Microcode Update Rev 0x612 0xC6 0x616 0xC6 0x617 0xC6 0x619 0xD1 0x633 0x32 Using this utility, and the information in Table 1, integrators can easily verify that the correct microcode update is present in all Pentium Pro processor-based motherboards and Pentium II processor-based motherboards (even those without the API). Refer to the examples below for information on determining the processor stepping and microcode update revision contained in the motherboard. If the microcode update requires updating, the motherboard BIOS must contain the Intel-defined processor update API, otherwise a complete BIOS upgrade is required from the motherboard vendor. 3) USING THE PROCESSOR UPDATE UTILITY CHECKUP3.EXE supports systems based on both the Pentium Pro processor and Pentium II processor. The Intel-defined processor update API is identical for both processors. This Pentium Pro processor and Pentium II processor update utility, and it's associated files, are distributed in the self-extracting archive file PUPDT32.EXE, which includes the files listed below. Copy these files onto a DOS bootable diskette and boot from this diskette. 1) CHECKUP3.EXE -- DOS application to check the presence of a valid microcode update loaded into the processor by the BIOS. This utility also updates the microcode update, as required, in motherboards containing a BIOS that supports the Intel-defined processor update API. 2) PEPx.PDB -- Microcode update database file, where "x" is the revision number. This file will updated as required when a new microcode update is released. 3) CHECKUP.HLP -- ASCII text help file that can be viewed from CHECKUP3.EXE 4) README.TXT -- Same as CHECKUP.HLP and can be viewed with any ASCII text viewer CHECKUP3.EXE will create the following files in the present working directory: 4) LASTUP.PDB -- ASCII file created by CHECKUP3.EXE to store the name of the microcode update database file that was most recently used. 5) STATUS.LOG -- ASCII file that contains the messages that were printed to the screen during the most recent update session. COMMANDS/OPTIONS: Before using the utility, ensure that any jumper settings on the motherboard are placed in the "Flash update" position to enable writing to the flash memory. After successfully installing a microcode update, be sure to return all jumpers to their orginal setting. To invoke the utility, at the DOS prompt type the command line: CHECKUP3 The main menu should now be displayed, showing the following four options available: 1) Check and load update 2) Specify Microcode Update database file [current: pepx.pdb] 3) Help 4) Quit without loading update SPECIFY UPDATE DATABASE: Option #2 allows the microcode update database file to be specified. The target microcode update database file needs to be specified any time a new microcode update database file is obtained. Only one version of the microcode update database file will be the most current at any point in time. The most current microcode update database file contains data for all Pentium Pro and Pentium II processors that are in production. These files are named using the format PEPx.PDB, where the most current database file has the largest value of "x". CHECK AND LOAD UPDATE (Example with Update API not present in the BIOS): For motherboards with a BIOS that does not have the Intel-defined processor update API, option #1 can be used to determine that the system BIOS loads the latest microcode update into the processor. The utility will display the bootstrap processor stepping signature, which consists of the Family, Model and Stepping number. (Example: Stepping signature 616 can be broken into Family=6, Model=1, Stepping=6). Next, an indication that the API does or does not exist will be displayed, followed by the revision of the microcode update loaded into the processor by the BIOS. The utility will then display the revision of microcode update in the database file. If this revision is newer than the update loaded into the processor, the utility will ask if you wish to temporarily load the update into the processor and boot to the hard disk. (Typical example with API NOT present in the system BIOS, but no update is required) Pentium(R) Pro processor detected. (CPUID=x619) Your system will not allow this utility to permanently install the appropriate microcode update in your system. You need to contact your system manufacturer for a system BIOS upgrade that contains the microcode update for the processor installed. Make sure to specify the CPUID of the processor as shown above. Your system BIOS does not contain a microcode update for this processor. Therefore, no microcode update was loaded. The database file contains a microcode update (revision d1) for your processor. This utility can temporarily load the microcode update into your processor. Would you like to temporarily load the microcode update in your processor? (Y/N) y The update was loaded into the processor. You need to run this utility again after a system power-up or reset. No changes were made to the system BIOS. << Please remove Floppy from Floppy Disk Drive, Then press any key to boot from the hard drive >> The above example indicates that the processor has not been loaded with a microcode update. A revision "D1" microcode update was found in the database file. The user has selected a temporary loading of the microcode update. However, this process must be repeated at each system boot unless the microcode update is permanently installed in the system BIOS. Permanent installation of the microcode update when the API is not present can only be achieved by a system BIOS upgrade. CHECK AND LOAD UPDATE (Examples where update API is present in the BIOS) For motherboards with a system BIOS that DOES have the Intel-defined processor update API, option #1 can be used to determine that the system BIOS has loaded the latest microcode update into the processor and install a new microcode update if required. The utility will display the bootstrap processor stepping, and revision of the microcode update loaded into the processor if it is present. Next, since the BIOS contains the API in these examples, the processor update utility and the API automatically determine if the microcode update in the system BIOS should be updated from the microcode update database file (the "PEPx.pdb" file on the floppy disc.) (Typical example where API is present in the BIOS, but no update is required) Pentium(R) II processor detected. (CPUID=633) Your processor contains a microcode update, revision 32. The microcode update already loaded in yoiur processor is newer or as new as the microcode update (revision 32) in the database file. Please make sure you have the latest database file. No changes were made to the system. (Typical example where API is present in the BIOS, and an update to a later microcode update file is required) Pentium(R) Pro processor detected. (CPUID=617) Your processor contains a microcode update, revision c5. The database file contains a microcode update (revision c6) for your processor that is more recent than the microcode update currently loaded in your processor. Would you like to permanently install the microcode update for this processor in your system BIOS? (Y/N) y The microcode update was successfully loaded. You do not need to run this utility again, unless a new processor is installed or a new database file is used. << Please Remove Floppy from Floppy Disk Drive, Then COLD BOOT (power down) system to continue >> IMPORTANT: After running the utility, turn off power to the system to reboot (do not warm boot) to ensure new update is correctly initialized in the processor. Also, ensure all jumpers are returned to their normal settings. 4) ERROR MESSAGES ERROR: All processors in the system are not Pentium(R) Pro Processors or Pentium(R) II processors. Exiting ERROR: All Pentium(R) Pro Processor steppings present cannot be updated. Exiting REASON: Processor must contain an Intel Pentium Pro processor or Pentium II processor that has a CPUID signature of 0x612 or newer to be compatible with this processor update API. One of these conditions is not being met by the system. ERROR: Unable to allocate enough memory to determine cache size. ERROR: Unable to allocate enough memory. REASON: The utility can't find enough free system memory (aprox. 330K bytes) for allocating various data buffers. ERROR: Unable to open update database file: [FILENAME]. ERROR: No microcode update for signature 0xXXX found in database file. Please obtain the latest database file. ERROR: Microcode update loader version is incompatible with data file. Version: XX. ERROR: Checksum failure in database record XX. ERROR: Update not loaded. Microcode update header contains a loader version which was not recognized by the BIOS. ERROR: Update not loaded. Microcode update checksum incorrect. ERROR: Update not loaded. Microcode update was rejected by processor. ERROR: No microcode update found for processor(s) in database file. Ensure you are working with the latest database file. ERROR: Database file does not contain updates for all of the unique processor steppings in the system. Please obtain the latest database file. REASON: Database file (PEPx.PDB) is corrupt or not the most current one available. Obtain the latest version of this file. ERROR: Update Load Verification Failed! ERROR: Update not loaded. Failure due to inability to erase flash memory device ERROR: Update not loaded. Failure due to inability to read flash memory device. ERROR: Update not successully enabled. BIOS unable to read flash memory device. ERROR: Failure reading flash memory device. ERROR: Update not loaded. BIOS unable to write to flash memory device. Ensure jumper settings on motherboard are correct. ERROR: Error reading microcode update slot XX. ERROR: Verification of microcode update write to flash memory failed. REASON: FLASH memory device has failed, or writes are not enabled due to incorrect jumper settings on the motherboard. ERROR: 0x%x OEM Error: 0x%x enabling update. ERROR: 0x%x OEM Error 0x%x reading update, ERROR: 0x%x OEM Error 0x%x writing update., ERROR: Update not loaded. All microcode update slots are occupied. BIOS is not managing slots correctly. Please contact your motherboard vendor. REASON: BIOS vendor does not correctly support the API specification and has returned an unrecognized error code to the utility. Inform your motherboard vendor of these results, and obtain an updated BIOS from them. ERROR: Number of unique processors exceeds 4, which is the limit of this update utility. ERROR: Number of updates required exceeds the maximum number of slots implemented by the BIOS. ERROR: BIOS does not contain sufficient number of slots to store the microcode update(s). REASON: Motherboard contains a larger number of unique-stepping processors then the BIOS or this utility supports. If possible, install a mix of processors that reduces the number of unique steppings. 5) LEGAL NOTICE INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. YOU MAY COPY THE ATTACHED PROCESSOR UPDATE UTILITY AND DATABASE FILE SOLELY FOR YOUR USE WITH THE INTEL PENTIUM PRO PROCESSOR AND PENTIUM II PROCESSOR. NO OTHER LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. INTEL PRODUCTS ARE NOT INTENDED FOR USE IN MEDICAL, LIFE SAVING, OR LIFE SUSTAINING APPLICATIONS. INTEL MAY MAKE CHANGES TO SPECIFICATIONS AND PRODUCT DESCRIPTIONS AT ANY TIME, WITHOUT NOTICE. DESIGNERS MUST NOT RELY ON THE ABSENCE OR CHARACTERISTICS OF ANY FEATURES OR INSTRUCTIONS MARKED "RESERVED" OR "UNDEFINED." INTEL RESERVES THESE FOR FUTURE DEFINITION AND SHALL HAVE NO RESPONSIBILITY WHATSOEVER FOR CONFLICTS OR INCOMPATIBILITIES ARISING FROM FUTURE CHANGES TO THEM. THE PENTIUM PRO PROCESSOR AND PENTIUM II PROCESSOR MAY CONTAIN DESIGN DEFECTS OR ERRORS KNOWN AS ERRATA. CURRENT CHARACTERIZED ERRATA ARE AVAILABLE ON REQUEST.