Application Note

Application Note
congatec
Application
Note
Applicable Products
congatec XTX and COM Express and Qseven modules
Application Note Subject Updating the congatec Embedded BIOS from an external BIOS flash device
Document Name
AN7_External_BIOS_Update
Usage Designation
External
Application Note #7
Revision 1.3
Application Note
Revision History
Revision
Date (dd.mm.yy)
Author Changes
1.0
31.05.06
OAL
Initial release
1.1
25.08.06
HCH
Expanded for all congatec XTX and COM Express modules.
1.2
18.02.13
CJR
Added COM Express and Qseven modules, added SPI flash update
procedure, renamed AN to AN7_External_BIOS_Update.
1.3
13.01.15
GAD
Added section on making a bootable FreeDOS USB stick, added
128Mbit Winbond SPI flash chip.
Copyright © 2006 congatec AG
AN7_External_BIOS_Update .odt
2/11
Application Note
Preface
This application note describes how to proceed if the congatec Embedded BIOS on the
congatec modules needs to be updated from an external firmware hub (FWH) or SPI
flash device when the image on the module's flash is corrupt and no longer functioning.
Disclaimer
The information contained within this Application Note, including but not limited to any
product specification, is subject to change without notice.
congatec AG provides no warranty with regard to this Application Note or any other
information contained herein and hereby expressly disclaims any implied warranties of
merchantability or fitness for any particular purpose with regard to any of the foregoing.
congatec AG assumes no liability for any damages incurred directly or indirectly from
any technical or typographical errors or omissions contained herein or for discrepancies
between the product and the Application Note. In no event shall congatec AG be liable
for any incidental, consequential, special, or exemplary damages, whether based on
tort, contract or otherwise, arising out of or in connection with this Application Note or
any other information contained herein or the use thereof.
Intended Audience
This Application Note is intended for technically qualified personnel. It is not intended for
general audiences.
Symbols
The following symbols may be used in this Application Note:
Warning
Warnings indicate conditions that, if not observed, can cause personal injury.
Caution
Cautions warn the user about how to prevent damage to hardware or loss of data.
Note
Notes call attention to important information that should be observed.
Copyright © 2006 congatec AG
AN7_External_BIOS_Update .odt
3/11
Application Note
Terminology
Some of the following terms may be used throughout this document.
Term
Description
UEFI
Unified Extensible Firmware Interface is a specification that defines a software interface
between an operating system and platform firmware. UEFI is meant as a replacement for
the Basic Input/Output System (BIOS) firmware interface.
BIOS
BIOS: Basic Input/Output System. BIOS is actually firmware, the software that is
programmed into a ROM (Read-Only Memory) chip built onto the motherboard of a
computer
Flash
A special type of EEPROM (Electrically Erasable Read Only Memory) that can be erased
and reprogrammed in blocks instead of one byte at a time. Many modern PCs have their
BIOS stored on a flash memory chip so that it can easily be updated if necessary.
SPI
The Serial Peripheral Interface Bus or SPI bus is a synchronous serial data link standard,
named by Motorola, that operates in full duplex mode
FWH
FHW: Firmware Hub. FWH is a LPC memory flash device that contains software such as
the PC's BIOS.
Copyright Notice
Copyright © 2006, congatec AG. All rights reserved. All text, pictures and graphics are
protected by copyrights. No copying is permitted without written permission from
congatec AG.
congatec AG has made every attempt to ensure that the information in this document is
accurate yet the information contained within is supplied “as-is”.
Trademarks
Intel and Pentium are registered trademarks of Intel Corporation. Expresscard is a
registered trademark of Personal Computer Memory Card International Association
(PCMCIA). PCI Express is a registered trademark of Peripheral Component
Interconnect Special Interest Group (PCI-SIG). CompactFlash is a registered trademark
of CompactFlash Association. Winbond is a registered trademark of Winbond
Electronics Corp. AVR is a registered trademark of Atmel Corporation. ETX is a
registered trademark of Kontron AG. XpressROM is a registered trademark of Insyde
Technology, Inc. AMIBIOS is a registered trademark of American Megatrends Inc.
Microsoft®, Windows®, Windows NT®, Windows CE and Windows XP® are registered
trademarks of Microsoft Corporation. VxWorks is a registered trademark of WindRiver.
conga, congatec and XTX are registered trademark of congatec AG. All product names
and logos are property of their owners.
Copyright © 2006 congatec AG
AN7_External_BIOS_Update .odt
4/11
Application Note
Contents
1 Introduction.................................................................................................................................. 6
2 Required Equipment.....................................................................................................................7
3 Making a Bootable FreeDOS Flash Device.................................................................................8
4 Onboard BIOS Flash Update Procedure......................................................................................9
5 External BIOS Flash Update Procedure.....................................................................................10
6 Enable External BIOS Flash.......................................................................................................11
Copyright © 2006 congatec AG
AN7_External_BIOS_Update .odt
5/11
Application Note
1
Introduction
Older congatec embedded computer modules use congatec embedded BIOS that is
stored in an onboard firmware hub (FWH) flash device and is based on AMI BIOS
(AMIBIOS8) or Insyde XpressROM BIOS.
Newer congatec embedded computer modules use congatec embedded BIOS that is
stored in onboard SPI flash device and is based on AMIs Aptio UEFI firmware solution.
This application note is a short description of how to update a congatec BIOS
•
from the external firmware hub located on the conga-XEVAL and conga-CEVAL
evaluation carrier board
•
from the external SPI flash located on the conga-CEVAL Rev. C.1 evaluation carrier
board for COM Express Type 2 modules, conga-TEVAL for COM Express Type 6
modules, conga-MEVAL for COM Express Type 10 modules and conga-QEVAL for
Qseven modules
Updating from an external flash device may be necessary if the BIOS on the module's
flash is corrupt and the module is no longer bootable.
For description purposes, we will use the conga-TCA and the BIOS binary file
TCEDR110.BIN as an example. The procedure is similar for all other congatec
Embedded Computer Modules.
The initial production BIOS is identified as TCEDR110, where TCED is the congatec
internal project name, R is the identifier for a BIOS binary file, 1 is the so called feature
number and xx is the major and minor revision number.
Copyright © 2006 congatec AG
AN7_External_BIOS_Update .odt
6/11
Application Note
2
Required Equipment
The following items are required to perform a BIOS update from an external flash device
on the carrier board:
•
congatec evaluation carrier board
•
conga-XEVAL for XTX modules
•
conga-CEVAL for COM Express type 2 modules
•
conga-TEVAL for COM Express type 6 modules
•
conga-MEVAL for COM Express type 10 modules
•
conga-QEVAL for Qseven modules
•
congatec CPU module
•
either a FWH or SPI flash memory device with current BIOS version
preprogrammed (see chapter 5 for instruction on how to preprogram an external
BIOS flash device)
•
Examples of supported FWH flashes are SST-49LF008A or Winbond
W39V080FAP2
•
Examples of supported SPI flashes are:
•
•
Winbond W25Q128FV for 128Mbit (16MByte)
•
Winbond W25Q64CV for 64Mbit (8MByte)
•
Winbond W25Q32BV for 32Mbit (4MByte)
Check the module's users guide for the BIOS binary size.
Note:
The external BIOS flash chip must be the same size as the BIOS .bin file. An external
flash chip that is larger than the BIOS file size will not work.
•
Bootable FreeDOS flash device (USB-Stick or CF-Card – See Section 3)
•
BIOS binary file (please contact the congatec AG support team for current
version)
•
congatec System Utility, available for download at www.congatec.com
•
cgutlcmd.exe - DOS command line version
•
cgutlgui.exe - Windows GUI version
Copyright © 2006 congatec AG
AN7_External_BIOS_Update .odt
7/11
Application Note
3
Making a Bootable FreeDOS Flash Device
1. Download Rufus from http://rufus.aekeo.ie/
2. Launch and set up Rufus as shown in the screenshot below:
3. Insert USB stick or CF flash card into your computer.
Note:
This process can also be used to make a FreeDOS Bootable CF flash card by using an
external USB connected CF flash card programmer.
4. Click Start.
5. Download latest version of the congatec system utility, cgutil.zip, from the
congatec web site (www.congatec.com).
6. Copy the expanded DOS command line version of the congatec system utility,
cgutlcmd.exe found in the cgutil.zip file to the root directory of this Bootable
FreeDOS Flash Device (USB stick or CF flash card).
7. Copy the desired BIOS binary file (.bin file) for your module to the root directory
of this Bootable FreeDOS Flash Device (USB stick or CF flash card).
Copyright © 2006 congatec AG
AN7_External_BIOS_Update .odt
8/11
Application Note
4
Onboard BIOS Flash Update Procedure
1. Connect the congatec module to the congatec evaluation carrier board.
Insert the preprogrammed flash memory device into the external flash
socket.
2. Set DIP Switch or jumper on the congatec evaluation carrier board for
external BIOS boot (see section 5).
3. Plug in the FreeDOS formatted boot device (e.g USB stick or CF card)
containing the BIOS flash tool (cgutlcmd.exe) and the BIOS binary file.
Both files should be in the same directory.
4. Push the power button to boot-up the module from external BIOS flash
into FreeDOS.
5. Start the BIOS update process by using the following command line:
C:\>cgutlcmd bflash TCEDR110.BIN /D /EF
See the congatec System Utility User's Guide for further details about
command line options. The parameters /EF is not required for all
congatec modules, only for those featuring Intel ME firmware. Such
modules most likely also require an additional power off/on reboot cycle
and execution of the cgutlcmd tool a second time. The parameter /EF
does not have any effect on modules that do not require this parameter.
Hence it is safe to always use /EF to recover the onboard BIOS or
preprogram an external flash device.
6. The system utility starts by performing the required preprocessing, and
then stops. A message that it is now safe to switch to another flash part is
displayed. Now switch the DIP Switch or jumper to the onboard BIOS
flash position (see section 5).
7. Press any key to confirm that the DIP Switch or jumper is now set to
onboard BIOS flash. The BIOS update process will be performed as usual
and the BIOS flash device on the CPU module will be programmed. Once
completed, the message “BIOS successfully updated” will be displayed.
8. The system restarts. BIOS has been successfully updated/recovered.
Copyright © 2006 congatec AG
AN7_External_BIOS_Update .odt
9/11
Application Note
5
External BIOS Flash Update Procedure
The same procedure described in section 3 can be used to preprogram an
external flash memory device. Simply use an operational congatec module to
boot into FreeDOS and perform the same steps outlined in section 4. Just boot
from the on module BIOS flash and update the external BIOS flash with the /D
parameter. The only difference is the DIP switch/Jumper setting for boot-up and
flash process.
Programming the external flash memory this way is especially helpful when a
proper flash programmer is not on hand.
Copyright © 2006 congatec AG
AN7_External_BIOS_Update .odt
10/11
Application Note
6
Enable External BIOS Flash
Please refer to the users guide of the respective congatec evaluation carrier
board for instructions on how to enable onboard and external BIOS flash
support. The user's guide clearly describes how to set the DIP Switch or jumper
and also how a LED indicates the onboard/external flash selection.
Note:
conga-CEVAL hardware revision A.x and conga-QEVAL hardware revision A.x do not
support external SPI flash devices because these carrier boards were designed
according to COM Express spec 1.0 and Qseven spec 1.0, offering no support for SPI
pins. This is the reason why these evaluation carrier boards can not be used to recover
newer modules by booting from the external SPI flash on the carrier board.
The conga-Bx57 COM Express Type 2 modules can not be updated from external SPI
flash because these modules are designed according to COM Express spec 1.0 and do
not support the SPI pins.
The conga-XAF XTX module can not be updated from the FWH flash device on the XTX
evaluation carrier board (XEVAL) because this module can only be booted from an SPI
flash device which is not supported on the conga-XEVAL.
Copyright © 2006 congatec AG
AN7_External_BIOS_Update .odt
11/11