You are on page 1of 27

What is motherboard/system firmware?

On
NetApp Filer











Note: This is a small effort to understand what exactly is meant by
system/motherboard firmware on NetApp filers. If you have anything more to
add to it, or any corrections to be made. Please write to me.


ashwinwriter@gmail.com

Motherboard firmware is also known as "System Firmware" or storage system
firmware

Simply put -> Motherboard Firmware = System Firmware = BIOS boot loader
(FreeBSD based) with CompactFlash cards = OFW used with CompactFlash cards =
Common Firmware Environment (CFE) used with CompactFlash cards.

Common Firmware Environment (CFE) is the firmware developed by
Broadcom.
Open Firmware is the hardware-independent firmware. Mitch Bradley,
Firmworks, Inc, released their Open Firmware implementation (OFW) under
a BSD license. It is marketed by Sun Microsystems and apple Computers.
BIOS Boot Environment.

Note: Netbooting is another option, but that is only supported on the CFE-based
filers.


Key Points:
The newer Netapp filers use a BIOS boot loader environment; a BIOS
LOADER prompt replaces the firmware prompt (CFE or OFW) seen in
previous models.

The newer NetApp filers boot from 'CompactFlash card' compared to those
very old models such as FAS270/940 etc which used to boot off the disk.

BIOS system firmware is updated automatically post Data OTNAP 8.0
onwards:
Beginning with the Data ONTAP 8.0 release, the minimum BIOS release required
to support Data ONTAP also enables automatic BIOS updates. If you are upgrading
from an earlier release family, you must update BIOS firmware manually during
the Data ONTAP upgrade. After the minimum version is running, subsequent
updates take place automatically during the boot sequence whenever Data
ONTAP detects that a version resident on the boot device is more recent than the
running version. However, to update firmware from an earlier version to the latest
version available, you must run the update_flash command manually from the
boot prompt on the system being upgraded. Subsequent system firmware updates
are automatic.

Manual BIOS upgrade Or via Ontap upgrade, whoever writes last wins

"One thing to note is that the BIOS is not versioned, in other words, the last thing
(manual BIOS load Or ontap upgrade) that writes the bios to flash, wins! Unlike
disk and shelf which are versioned, the bios is written to flash and used on boot if
a newer version on flash than the motherboard. For example, there is a 7.1.2 for
6200 but the ONTAP build has 7.1.0. If you push the bios then push ontap before
takeover/giveback, then 7.1.0 is on flash. So I push the bios as the very last step
so that 7.1.2 (or equivalent for other platforms) is on flash after download -d and
on the takeover/giveback the latest bios is pushed to the motherboard."

Courtesy scottgelb







Determining whether you need a system firmware update?

To determine whether your storage system needs a system firmware update,
compare the version of installed system firmware with the latest version available
from the NOW site.

Steps
1. Display the version of your storage system's current system firmware by
entering the following command:
filer>sysconfig -a

The command output will include an entry similar to one of the following:
Firmware release: 4.2_i1BIOS version: 1.2.0


2. Display the version of your storage system's current system firmware by
entering the following command:
filer>version -b


3. Check the system firmware on the netapp support site [ How to do this, is
covered in the document ahead]




If there is a newer version, you can download it on the flashcard using download
d command [This is also covered in the document ahead].

You can run version -b immediately after you run the download command.

4. Then, compare the output of the sysconfig -a and version -b commands to
determine if your system needs a firmware update.

[This is just an analogy to explain]


If the version of the newly loaded firmware on the CF card is ...



Later than the installed version displayed by sysconfig as shown below.







The same as the installed version displayed by sysconfig as shown below.






Attention: If you find that the system firmware version on the CompactFlash card
is older than the installed version, do not update system firmware with the
update_flash or update-flash command.









In this example we will access the system firmware on FAS2040
filer:

filer>version -b



filer>sysconfig a



Looking at the sysconfig & version b information, it appears that both CF content
and storage system content are same.

Next step is to find out if there is any new System
Firmware for your MODEL on the support site.


Steps to download system firmware for your NetApp MODEL:

Steps
1. Use a Web browser to go to the support.netapp.com and log-in.


2. Select 'Downloads' | 'System Firmware'.











3. Select your FILER MODEL from the Drop-down and click GO.



4. As shown in the example below. [For FAS2040 filer].



5. Look at the available system firmwares Release Date. Check if there is any
new update available and also look at the contents of the update. [There are
chances only the Diagnostic code is updated, and rest are same.]



So, what is updated in this release?
The 30802297.zip service image file contains BIOS 6.1, BMC firmware 1.5, and
Diagnostics 5.7.1 for the FAS2040.


So, its clear that this new release has updated BMC & Diagnostics code.


Installation prerequisites
To install the BIOS/BMC/Diagnostics image, you need to have access to the
following devices:
A Web server on a network accessible to your storage controller
A serial console connected to your storage controller

Note: If you do not have Web access, you can manually download the file and use
one of the protocols (NFS,CIFS,FTP,TFTP) to copy the file to the root volume of the
storage controller in the /mroot/etc/software directory.

System Firmware Installation Procedure

If you are running 7-Mode, at the storage controller console, enter the following
command and path to download the latest service image:

filer>software install http://web_server_name/path/30802297.zip

web_server_name is the name or IP address of your Web server on a network
accessible to your storage controller, and path is the location of the file on your
Web server.
Or

filer>software install 30802297.zip

The following system messages will appear:

software: copying to /etc/software/30802297.zip
software: 100% file read from location.
software: /etc/software/30802297.zip has been copied.
software: installing software, this could take a few minutes...
software: installation of 30802297.zip completed.




To install the BIOS/BMC/Diagnostics image on your storage
controller, complete the following steps:

1. At the storage system prompt, enter the following command to list the
contents of the boot device:


filer>version -b

2. At the storage system prompt, enter the following command to
determine the BIOS and BMC firmware versions on your storage
controller:

filer>sysconfig a



Make a note of the BIOS and BMC firmware versions from the resulting output


3. At the storage system prompt, enter the following command to set your
privilege level:

filer>priv set advanced


4. At the storage system prompt, enter the following command to update
the boot device:

filer>download -d

The following message will appear upon completion of the update:

[download.requestDone: notice]: Operator requested download completed
Note: The update process can take a few minutes.

5. If you are running 7-Mode, at the storage system prompt, enter the
following command to list the updated contents of the boot device:

filer>version -b

Verify that the output includes BIOS/NABL Firmware 6.1 and BMC Firmware 1.5.

If the versions identified in Step 2 are...

BIOS 6.1 and BMC firmware 1.5

Your storage controller has the current versions of BIOS and BMC firmware. You
do not need to proceed any further.

6. If any other version , then :

At the storage system prompt, enter the following command to halt your storage
controller:
filer>halt

Result: The LOADER prompt appears after initialization is complete.

7. If the BIOS version identified in Step 2 is 6.1

Your storage controller has the current version of BIOS. Go to Step 8.

If any other version: At the LOADER prompt, enter the following command to
update BIOS:
LOADER>update_flash

Update_flash does the following:
Checks for a proper image
If the image is valid, writes the flash
Returns to the LOADER prompt when the firmware finishes writing

8. If the BMC firmware version identified in Step 2 is 1.5, then:
Your storage controller has the current version of BMC firmware. Go to Step 9.
If any other version (Like in our case its (BMC) 1.3):
At the LOADER prompt, enter the following command to update BMC firmware:

LOADER>update_bmc

update_bmc does the following:
Checks for a proper image
If the image is valid, writes the flash
Returns to the LOADER prompt when the firmware finishes writing

9. At the LOADER prompt, enter the following command to reboot your
storage controller:
filer>bye
**************************UPDATE DONE*****************************
How to see the contents of the CompactFlash card based BIOS?



From the storage system command line, typing version -b displays version
information of:
1. Data ONTAP
2. Diagnostics, and
3. Firmware contained on primary boot device.

This option can only be used on storage systems which have a flash device as their
primary boot device. This option is not available in maintenance mode.

filer> version -b
1:/x86/kernel/primary.krn: OS 6.4R1
?:/x86/diag/diag.krn: Diagnostic_4.0
?:/x86/firmware/xfiler/firmware.img: Firmware 4.2_i2


To Place a Boot Image on the CompactFlash Card
The X/SP-1413A CompactFlash card arrives blank. Before you use it, you must
transfer a boot image to it. You can transfer the boot image to the CompactFlash
card in one of two ways:
To Transfer a Boot Image Using a PC or Laptop
To Transfer a Bootable Kernel Image Using Netboot


To Transfer a Boot Image Using a PC or Laptop
1. Copy the bootable kernel image on to the PC or laptop. You can copy the boot
image from the system boot directory, at /etc/boot/netapp-x86, or you can
download the boot image from NOW at
Caution
You must perform a clean shutdown to replace components inside your
appliance.
Installing or Replacing a 256-MB CompactFlash Card 5
http://now.netapp.com. Contact technical support if you cannot get a boot image
from these sources.
2. Insert the CompactFlash card into the CompactFlash card reader, and then
access the CompactFlash card from inside Windows Explorer.
3. Create a folder called X86 in the root partition of the CompactFlash card, and
then create a subfolder caller KERNEL in the X86 folder.
4. Move the bootable kernel image into the KERNEL folder in Windows Explorer.
The bootable kernel image is called netapp_<rlse>-x86, where rlse is the Data
ONTAP release number.
5. Rename the netapp_<rlse>-x86 image to Primary.KRN.
6. Install the CompactFlash card with the kernel image into the system.
7. Turn on the system and boot the kernel image off the CompactFlash card, and
then verify that the
booted kernel image is correct by entering the following command:
version -b
8. Download the boot image to the CompactFlash card and reboot the system by
entering the
following commands:
download
reboot


What is a firmware in general?
Firmware is a blend of hardware and software. Firmware is usually defined as a
type of program that runs within an electronic device. Firmware is not categorized
either as hardware or software, but a mix of both. The reason firmware is
considered a combination of both categories is that firmware employs an
executable program (.exe) and includes an integrated piece of the electronic
device.

Examples of firmware include: * The BIOS found in IBM-compatible Personal
Computers; * The EFI, found on Itanium systems, Intel-based Mac OS X machines,
and as a secondary bootloader (which runs after the traditional BIOS) on x64 PCs;
* The operating system on a router, such as the Linksys WRT54G * Open
Firmware, used in computers from Sun Microsystems and Apple Computer; *
ARCS, used in computers from Silicon Graphics; * RTAS (Run-Time Abstraction
Services), used in computers from IBM; * EPROM chips used in the Eventide H-
3000 series of digital music processors. * The Common Firmware Environment
(CFE).


Additional Info:
FAS31xx/V31xx systems automatically update the BIOS firmware if the
environmental variable AUTO_FW_UPDATE is set to true. During an automatic
flash update, the system performs the equivalent of the update_flash command
at the boot loader prompt.



BIOS versions capable of booting Data ONTAP 8.0 7-mode and cluster-mode
operating systems are:

Platform Family Minimum BIOS version
FAS60xx 1.7 and later
FAS30xx 2.3 and later
FAS31xx 4.2 and later

If the BIOS version is not at the minimum required level, the following error is
reported on the console during boot and system will fail to boot until BIOS is
updated:

This system is running without the platform kernel module.
The platform kernel module (platform.ko) is necessary for correct operation of
the system panic: platform kernel module not loaded

Once BIOS is updated to the minimum or above the required version level, the
system will continue to boot.



How to update BIOS firmware on a system that is just installed or upgraded to
ONTAP 8.0

If a system was upgraded to ONTAP 8.0 and fails to boot with the above
mentioned error message, it will be required to update BIOS firmware. Data
ONTAP 8.0 comes bundled with the BIOS firmware. Running update_flash at the
CFE/LOADER prompt after the initial install will perform the BIOS version upgrade.


How to know that the boot image of the CompactFlash Card is not corrupt?
If the storage system successfully boots from the CompactFlash card without an
error, then the boot image is not corrupt. An error message 'No boot device
available' can mean that either the CompactFlash card is not found nor has a
corrupted boot image. See the article 1010774: How to recover from corrupted
boot media.


How to boot from recovery kernel even if the primary kernel is not corrupted?
At the OK prompt,
ok> boot d

At the LOADER prompt
LOADER> boot_backup



How to bypass the CompactFlash card and boot from disk instead?
Interrupt the boot process by pressing the DELETE key during the memory test.
Boot the system by entering the following command:
ok> boot


What firmware should be considered when upgrading Data ONTAP?
It is recommended to upgrade disk firmware before upgrading ONTAP so that the
minimum requirements of the newer release are met. When upgrading Data
ONTAP, consider the following:

Follow these steps sequentially when upgrading Data ONTAP:
1 .Upgrade the motherboard firmware.
2. Update the disk firmware.
3. Upgrade the OS.
4. Check the /etc/messages and sysconfig -v outputs to verify that the updates
were successful.







System firmware type depends upon the filer model type

If your system is a ... Your system
firmware type is ...
And your boot environment
prompt is ...
60xx
31xx
3070
3040
FAS2040
SA600
SA300
SA200
BIOS >LOADER
3050
3020
FAS2050
FAS2020
FAS200
series/GF270c
CFE >CFE
FAS900 series/GF900
series
NearStore R200
OFW >OK







How BIOS system firmware is updated post ONTAP 8.0 ?
Beginning with the Data ONTAP 8.0 release, the minimum BIOS release required
to support Data ONTAP also enables automatic BIOS updates. If you are upgrading
from an earlier release family, you must update BIOS firmware manually during
the Data ONTAP upgrade.
After the minimum version is running, subsequent updates take place
automatically during the boot sequence whenever Data ONTAP detects that a
version resident on the boot device is more recent than the running version.

However, to update firmware from an earlier version to the latest version
available, you must run the update_flash command manually from the boot
prompt on the system being upgraded.

*Subsequent system firmware updates are automatic*

Updating system firmware nondisruptively
The nondisruptive update method is appropriate when you need to maintain
service availability during the firmware update.


Before you begin
Your HA configuration must be functioning correctly, including meeting the
requirements for nondisruptive upgrades.

Your Windows or UNIX client or HTTP server must already include firmware
downloaded from the NetApp Support Site.

Steps
1. Obtain the firmware download files by using the software update command,
following directions on the NetApp Support Site.
2. On each storage system, referred to as system A and system B in the following
steps, enter the
following command as directed:
priv set advanced
The asterisk (*) after the storage system name indicates that you are in advanced
mode.
3. On each storage system, enter the download -d command in priv set advanced
mode as directed.
If necessary, format the service partition according to the instructions.
4. If CIFS is in use in System A, terminate it by entering the following command:
cifs terminate -t nn
nn is a notification period (in minutes) appropriate for your clients after which
CIFS services are terminated. After that period of time, proceed to the next step.
5. If the automatic giveback option (cf.giveback.auto.enable) is set to on, disable
automatic giveback by entering the following command on one of your storage
systems in the high availability configuration:
options cf.giveback.auto.enable off
After the upgrade procedure, reset this option to on (if desired).
6. At the console of system B, enter the following command:
cf takeover
This command causes system A to shut down gracefully and leaves system B in
takeover mode.
7. To display the LOADER boot prompt at the system A console, press Ctrl-c at the
system A console when instructed after the boot sequence starts.
You can also display the LOADER prompt by pressing Ctrl-c at the system A
console when the Waiting for giveback message appears at the console of system
A. When prompted to halt the node, rather than wait, enter y.
8. After halting the node, check the Boot Loader messages for a warning similar to
the following:
Warning: The CompactFlash contains newer firmware image (1.6.0). Please
run "update_flash" at Loader prompt to update your system firmware
(1.5X3).
9. Take one of the following actions:
If BIOS firmware is updated automatically; go to Step 10.

If you see the warning as mentioned above.

The, you must update BIOS firmware manually. After the new BIOS system
firmware is installed, future system firmware updates take place automatically.
a. At the boot prompt, enter the following command to reset the system:
bye
b. To display the LOADER boot prompt at the system B console, press Ctrl-c at the
system B console when instructed after the boot sequence starts.
You can also display the LOADER prompt by pressing Ctrl-c at the system A
console when the Waiting for giveback message appears at the console of system
B.
When prompted to halt the node rather than wait, enter y.
c. Enter the following command:
update_flash
The system updates the firmware, displays several status messages, and displays
the boot prompt.
d. Go to Step 10.
10. Enter the following command to reboot the system using the new firmware
and software:
bye
11. Wait 8 minutes to ensure the following conditions:
Client multipathing (if deployed) is stabilized.
Clients are recovered from the pause in I/O that occurs during takeover.
The recovery time is client-specific and may take longer than 8 minutes
depending on the characteristics of the client applications.
12. Enter the following command at the console of system B:
cf giveback
Attention: The giveback is not initiated and an error message is returned if any
conditions such as the following are detected:
Open client sessions (such as CIFS sessions)
Long-running operations
Operations that cannot be restarted (such as tape backup or SyncMirror
resynchronization)
Error conditions (such as disk connectivity mismatch between the nodes)
If giveback is not initiated, complete the following steps:
a. Address the condition described in the error message, ensuring that any
identified
Operations are terminated gracefully.
b. Initiate giveback with the -f option:
cf giveback -f
System A reboots with the new system configurationa Data ONTAP version or
other system firmware and hardware changesand resumes normal operation as
an HA pair partner.
13. Repeat Step 4 through Step 12 to update the partner storage system.
System B is brought down and updated while partner A is in takeover mode












Courtesy: NetApp & Google.





ashwinwriter@gmail.com