Upgrading Field-Programmable Devices

In general terms, field-programmable devices (FPDs) are hardware devices implemented on router cards that support separate software upgrades. A field-programmable gate array (FPGA) is a type of programmable memory device that exists on most hardware components of the router. The term FPD has been introduced to collectively and generically describe any type of programmable hardware device on SIPs and shared port adapters (SPAs), including FPGAs. Cisco IOS XR software provides the Cisco FPD upgrade feature to manage the upgrade of FPD images on SIPs and SPAs.

This chapter describes the information that you must know to verify image versions and to perform an upgrade for SPA or SIP FPD images when incompatibilities arise.

For complete descriptions of the FPD commands listed in this module, refer to the upcoming sections. To locate documentation for other commands that might appear in the course of performing a configuration task, search online in Cisco IOS XR Commands Master List for the Cisco CRS Router.

Table 1. Feature History for Upgrading FPD Software on Cisco IOS XR Software

Release

Modification

Release 3.2

SIPs and SPAs were introduced.

FPD images were introduced to support SIPs and SPAs.

Release 3.3.0

Reload option was added to the upgrade hw-module fpd command, including a prompt to inform the user.

Possibility for multiple FPD images on a card was added.

Release 5.3.2

Enhance FPD upgrade and downgrade behavior.

This module contains the following topics:

Upgrading Field-Programmable Device

An FPD is a field programmable logic device which contains non-volatile, re-programmable memory to define its internal wiring and functionality. The contents of this non-volatile memory are called the FPD image or FPD firmware. Over the lifespan of an FPD, FPD firmware images may need upgrades for bug fixes or functionality improvements. These upgrades are performed in the field with minimum system impact.

Prerequisites for FPD Image Upgrades

You must install the FPD pie before you install the SMUs or Service Packs. If you install the SMU or Service Packs before the FPD pie, the FPDs on the line card may not upgrade. In such cases, you must remove the SMUs and Service Packs and reload the router.

Overview of FPD Image Upgrade Support

An FPD image is used to upgrade the software on an FPD.

Whenever an image is released that supports SIPs and SPAs, a companion SIP and SPA FPD image is bundled. Generally, the FPD image is not automatically upgraded. You must manually upgrade the FPD image running on the SPA or SIP when you upgrade the Cisco IOS XR software image.

FPD versions must be compatible with the Cisco IOS XR software that is running on the router; if an incompatibility exists between an FPD version and the Cisco IOS XR software, the device with the FPGA may not operate properly until the incompatibility is resolved. An FPGA incompatibility on a SPA does not necessarily affect the running of the SPA interfaces; an FPD incompatibility on a SIP disables all interfaces for all SPAs in the SIP until the incompatibility is addressed.

Use the show hw-module fpd command to determine if an FPD upgrade is required. A value of ‘Yes’ in the Upg/Dng? (upgrade/downgrade) column indicates that an upgrade or downgrade is required.

The NCS 5500 supports upgrades for FPGA devices on its SIPs and SPAs. FPGA and ROMMON software upgrades are part of an FPD image package that corresponds to a Cisco IOS XR software image. SIPs and SPAs support manual upgrades for FPGA devices using the Cisco FPD upgrade feature that is further described in this chapter.


Note

It is mandatory to upgrade all the required FPDs before doing a reload when you are upgrading FPDs on line cards. This is because, partial FPD component upgrades might result in booting errors (in some cases).


Automatic FPD Upgrade

By default, the FPD image is not automatically upgraded. You must manually upgrade the FPD image running on the SPA or SIP when you upgrade the Cisco IOS XR software image.

However, if you enable the fpd auto-upgrade command in Admin Configuration mode, FPD images are automatically updated when:

  • Software upgrade is carried out.

The following conditions must be met for an Automatic FPD Upgrade to work:

  • The fpd auto-upgrade command must be enabled.


Note

Although the FPD upgrade is performed during the install operation, there is no install commit performed. Therefore, once the FPD has been upgraded, if the image is rolled back to the original version, the FPD version is not downgraded to the previous version.


Automatic FPD Upgrade is not performed when:

  • Line cards or other cards such as RPs, SPAs or alarm cards are added to an existing router.

  • A line card chassis is added to an existing CRS multi-chassis router.

  • A non-reload software maintenance upgrade (SMU) or PIE installation is performed, even where the FPD image version changes. Since a non-reload installation is, by definition, not supposed to reload the router, and an FPD upgrade requires a router reload, an Automatic FPD Upgrade is repressed.


Note

In all cases where the automatic FPD upgrade is not performed, you must perform a manual FPD upgrade using the upgrade hw-module fpd command.



Note

A message is displayed when router modules cannot get upgraded during automatic FPD upgrade indicating that the FPGA is intentionally skipped during upgrade. To upgrade such FPGAs, you can use the CLI command with a particular location explicitly specified. For example, upgrade hw-module fpd all location 0/3/1 .



Note

CFP2-DCO Optical modules do not support automatic-FPD upgrade.


FPD upgrade service

The main tasks of the FPD upgrade service are:

  • FPD image version checking to decide if a specific firmware image needs an upgrade or not.

  • Automatic FPD Image Upgrade (if enabled).

  • Manual FPD Image Upgrade using the upgrade hw-module fpd command.

  • Invoke the appropriate device driver with a name of the new image to load.

An FPD image package is used to upgrade FPD images. The install activate command is used to place the FPD binary files into the expected location on the boot devices.

Supported Upgrade Methods

Method

Remarks

Manual Upgrade

Upgrade using CLI, force upgrade supported.

Auto Upgrade

Upgrade using install SMU activation or during image upgrade. User can enable/disable auto upgrade feature.

Determining Upgrade Requirement

Use the show hw-module fpd command to determine if an FPD upgrade is required. Check for NEED UPGD in the Status column.

Use the show fpd package command to find out which FPGAs are supported with your current software release and minimum hardware requirements for each module.

Automatic FPD upgrade

Use the fpd auto-upgrade enable command to enable the auto upgrade feature.

The FPD images are upgraded as part of the install activation of the new image. The FPDs are upgraded before the router is reloaded.

During an FPD auto-upgrade, the installed FPD rpm package includes an FPD image with a new version of software that is different than the version of the image running on the hardware. Once the FPDs have been upgraded, even if the base image is rolled backed to the older version, the FPD will not be downgraded to its previous version.

When a reload package is installed with new FPD images, the FPD images are upgraded before the router gets reloaded. This feature is controlled through an fpd auto-upgrade configuration option. The auto-upgrade feature does not address the following:

  • FPD Upgrade during initial boot

  • FPD Upgrade during new card insertion

Manual FPD upgrade

Manual FPD upgrade is performed using the upgrade hw-module fpd command. All cards or all of FPGA in a card can be upgraded. If reload is required to activate FPD , the upgrade should be complete. Line-cards, fabric cards and RP cards cannot be reloaded during the process of the FPD upgrade.

FPD upgrade is transaction-based:

  • Each fpd upgrade cli execution is one transaction

  • Only one transaction is allowed at any given time

  • One transaction may include one or many FPD upgrade(s)

The force option can be used to forcibly upgrade the FPD (regardless of whether it is required or not). It triggers all FPDs to be upgraded or downgraded. The force option can also be used to downgrade or upgrade the FPGAs even after the version check.


Note

In some cases, FPDs can have primary and backup images.


How to Upgrade FPD Images

You must determine if an FPD image upgrade is needed using the show hw-module fpd command and perform the upgrade, if needed, under the following circumstances:

  • Migrate the software to a later Cisco IOS XR software release.

  • Swap SPAs or SIPs from a system running a different Cisco IOS XR software release.

  • Insert a new SPA or SIP.

In the event that there is an FPD incompatibility with your card, you may receive an error message. If you upgrade to a newer version of the Cisco IOS XR software and there is an FPD incompatibility, you receive the following message:

LC/0/1/CPU0:Dec 23 16:33:47.945 : spa_192_jacket_v2[203]: %PLATFORM-UPGRADE_FPD-4-DOWN_REV : spa fpga2 instance 0 is down-rev (V0.6), upgrade to (V1.0). Use the "upgrade hw-module fpd" CLI in admin mode.

If the FPD image on the card is newer then what is required by the currently running Cisco IOS XR software image on the router, you receive the following error message:

LC/0/1/CPU0:Dec 23 16:33:47.955 : spa_192_jacket_v2[203]: %PLATFORM-UPGRADE_FPD-4-UP_REV : spa fpga instance 1 is up-rev(V1.10), downgrade to (V0.09) is "OPTIONAL". Use "upgrade hw-module fpd force" CLI in admin mode.

You should perform the FPD upgrade procedure if you receive such messages. Cards may not function properly if FPD incompatibilities are not resolved.


Note

The use of the force option when performing a FPD upgrade is not recommended except under explicit direction from Cisco engineering or TAC.


Before you begin

  • The FPD upgrade procedure is performed while the card is online. At the end of the procedure the card must be reloaded before the FPD upgrade is complete. To automatically reload the card, you can use the hw-module reload command during your next maintenance window. The upgrade procedure is not complete until the card is reloaded.

  • During the FPD upgrade, you must not do the following:

    • Reload, perform an online insertion and removal (OIR) of a line card (LC), or power down the chassis. Doing so may cause the node to enter an unusable state.

    • Press Ctrl-C if the console appears to hang without any output. Doing so may abort the upgrade.

  • If you are not sure whether a card requires an FPD upgrade, you can install the card and use the show hw-module fpd command to determine if the FPD image on the card is compatible with the currently running Cisco IOS XR software release.

SUMMARY STEPS

  1. show hw-module fpd location {all | node-id}
  2. admin
  3. (Optional) show fpd package
  4. upgrade hw-module fpd {all | fpga-type} [ force] location [all | node-id]
  5. exit
  6. (Optional) hw-module {location node-id | subslot subslot-id} reload
  7. show platform

DETAILED STEPS

  Command or Action Purpose
Step 1

show hw-module fpd location {all | node-id}

Example:


RP/0/RP0/CPU0:router# show hw-module fpd location all

or


RP/0/RP0/CPU0:router# show hw-module fpd location 0/4/cpu0

Displays the current FPD image versions for the specified card or all cards installed in the router. Use this command to determine if you must upgrade the FPD image on your card.

Step 2

admin

Example:


RP/0/RP0/CPU0:router# admin 

Enters administration EXEC mode.

Step 3

(Optional) show fpd package

Example:


RP/0/RP0/CPU0:router(admin)# show fpd package
(Optional)

Displays which cards are supported with your current Cisco IOS XR software release, which FPD image you need for each card, and what the minimum hardware requirements are for the various modules. (A minimum hardware requirement version of 0.0 indicates that all hardware can support this FPD image version.)

If there are multiple FPD images for your card, use this command to determine which FPD image to use if you want to upgrade only a specific FPD type.

Step 4

upgrade hw-module fpd {all | fpga-type} [ force] location [all | node-id]

Example:


RP/0/RP0/CPU0:router(admin)# upgrade hw-module fpd 
all location 0/3/1 
.
.
.
Successfully upgraded 1 FPD for SPA-2XOC48POS/RPR 
  on location 0/3/1

RP/0/RP0/CPU0:V3_DC_MT(admin)# upgrade hw-module fpd all location all
RP/0/RP0/CPU0:May 14 22:06:38.715 : upgrade_fpd_cli[65878]: %PLATFORM-UPGRADE_FPD-6-STATUS_UPG_LOC_ALL_OPT : 
pm fpga11 instance 14 on location 0/RP0/CPU0 was intentionally skipped during upgrade using location all option

Upgrades all the current FPD images that must be upgraded on the specified card with new images.

Before continuing to the next step, wait for confirmation that the FPD upgrade has successfully completed. Status messages, similar to these, are displayed to the screen until the FPD upgrade is completed:


FPD upgrade started.
FPD upgrade in progress..
FPD upgrade in progress..
FPD upgrade sent to location xxxx
FPD upgrade sent to location yyyy
FPD upgrade in progress..
FPD upgrade finished for location xxx
FPD upgrade in progress..
FPD upgrade finished for location yyyy
FPD upgrade completed.
 

The “FPD upgrade in progress.” message is printed every minute. These logs are information logs, and as such, are displayed if the logging console informational command is configured.

If Ctrl-C is pressed while the FPD upgrade is in progress, the following warning message is displayed:


FPD upgrade in progress on some hardware, 
aborting now is not recommended as it might 
cause HW programming failure and result in 
RMA of the hardware.
Do you want to continue? [Confirm(y/n)]
 

If you confirm that you want to abort the FPD upgrade procedure, this message is displayed:

 
FPD upgrade process has been aborted, please 
check the status of the hardware and reissue 
the upgrade command if required.
 
Note 
  • If your card supports multiple FPD images, you can use the show fpd package admin command to determine what specific image to upgrade in the upgrade hw-module fpd command.

  • A message is displayed when router modules cannot get upgraded during upgrade with location all option indicating that the FPGA is intentionally skipped during upgrade. To upgrade such FPGAs, you can use the CLI command with a particular location explicitly specified. For example, upgrade hw-module fpd all location 0/3/1 .

  • It is recommended to upgrade all FPGAs on a given node using the upgrade hw-module fpd all location {all | node-id} command. Do not upgrade the FPGA on a node using the upgrade hw-module fpd <individual-fpd> location {all | node-id} as it may cause errors in booting the card.

Step 5

exit

Example:


RP/0/RP0/CPU0:router(admin)# exit

Exits administration EXEC mode and returns to EXEC mode.

Step 6

(Optional) hw-module {location node-id | subslot subslot-id} reload

Example:


RP/0/RP0/CPU0:router# hw-module subslot 0/3/1 reload

or


RP/0/RP0/CPU0:router# hw-module location 0/3/cpu0 reload
(Optional)

Use the hw-module subslot reload command to reload a SPA and the hw-module location reload command to reload a SIP or line card.

Step 7

show platform

Example:


RP/0/RP0/CPU0:router# show platform

Verifies that the FPD image on the card has been successfully upgraded by displaying the status of all cards in the system.

Configuration Examples for FPD Image Upgrade

The following examples indicates the use of commands associated with the FPD image upgrade procedure.

show hw-module fpd Command Output: Example

Use the show hw-module fpd to display the current version of FPD images on the SPAs, SIPs and other cards installed on your router.

This command can be used to identify information about FPDs on any card. If you enter the location of a line card that is not a SPA, the output displays information about any programmable devices on that line card.

The following example shows how to display FPD compatibility for all modules in the router:



RP/0/RSP0/CPU0:router# show hw-module fpd location all
  
===================================== ==========================================
                                      Existing Field Programmable Devices
                                      ==========================================
                                        HW                       Current SW Upg/
Location     Card Type                Version Type Subtype Inst   Version   Dng?
============ ======================== ======= ==== ======= ==== =========== ====
0/RSP0/CPU0  CRS1-SIP-800              1.0     lc   fpga3    0      1.23     Yes
                                                    fpga1    0      1.05      No
                                                    fpga2    0      3.08^     No
--------------------------------------------------------------------------------
0/0/0       SPA-2XCHOC12/DS0           1.0     spa  rommon   0      2.02      No
                                               spa   fpga    0      1.36+     No
                                               spa   fpga2   0      1.00*     No
--------------------------------------------------------------------------------
NOTES:
1.  One or more FPD needs an upgrade or a downgrade.  This can be accomplished
    using the "admin upgrade hw-module fpd" CLI.
2.  * One or more FPD is running minimum software version supported.
      It can be upgraded using the "admin> upgrade hw-module fpd <fpd> force location <loc>" CLI.
3.  + One or more FPD is running up-rev FPGA version. Downgrade is "OPTIONAL" in this case.
      It can be downgraded using the "admin> upgrade hw-module fpd <fpd> force location <loc>" CLI.
4.  ^ One or more FPD will be intentionally skipped from upgrade using CLI with option "all" or during  
     "Auto fpd". It can be upgraded only using the "admin> upgrade hw-module fpd <fpd> location 
     <loc>" CLI with exact location.

Note

After Release 5.3.x, Upg/Dng? will display Yes only for upgrade.


The following example shows the FPD for which upgrage will be skipped.


RP/0/RP0/CPU0:router# show hw-module fpd location all
  
===================================== ==========================================
                                      Existing Field Programmable Devices
                                      ==========================================
                                        HW                       Current SW Upg/
Location     Card Type                Version Type Subtype Inst   Version   Dng?
============ ======================== ======= ==== ======= ==== =========== ====
0/SM1/SP     140G-4-S1S2S3              0.1  lc   rommonA   0    2.08       Yes
--------------------------------------------------------------------------------
                                             1c    rommon   0    2.08       Yes
--------------------------------------------------------------------------------
                                             1c    fpqa1    0    6.04^      No    
--------------------------------------------------------------------------------
                                             lc    fpga2    0    4.01       No
--------------------------------------------------------------------------------
NOTES:
1. ^ One or more FPD will be intentionally skipped from upgrade using CLI with option "all" or during "Auto fpd".
    It can be upgraded only using the "admin> upgrade hw-module fpd <fpd> location <loc>" CLI with exact location.

RP/0/RP0/CPU0:router# show hw-module fpd location 0/6/cpu0

Sun Apr 18 03:18:24.903 DST

===================================== ==========================================
                                      Existing Field Programmable Devices
                                      ==========================================
                                        HW                       Current SW Upg/
Location     Card Type                Version Type Subtype Inst   Version   Dng?
============ ======================== ======= ==== ======= ==== =========== ====
0/6/CPU0     CRS1-SIP-800               0.96  lc   fpga1   0       6.00     No
                                              lc   rommonA 0       2.100    No
                                              lc   rommon  0       2.100    No
--------------------------------------------------------------------------------
  

If the cards in the system do not meet the minimum requirements, the output contains a “NOTES” section that states how to upgrade the FPD image.

Table 2. show hw-module fpd Field Descriptions

Field

Description

Location

Location of the module in the rack/slot/module notation.

Card Type

Module part number.

HW Version

Hardware model version for the module.

Type

Hardware type. Can be one of the following types:

  • spa—Shared port adapter
  • lc—Line card

Subtype

FPD type. Can be one of the following types:

  • fabldr—Fabric downloader
  • fpga1—Field-programmable gate array
  • fpga2—Field-programmable gate array 2
  • fpga3—Field-programmable gate array 3
  • fpga4—Field-programmable gate array 4
  • fpga5—Field-programmable gate array 5
  • rommonA—Read-only memory monitor A
  • rommon—Read-only memory monitor B

Inst

FPD instance. The FPD instance uniquely identifies an FPD and is used by the FPD process to register an FPD.

Current SW Version

Currently running FPD image version.

Upg/Dng?

Specifies whether an FPD upgrade or downgrade is required. A downgrade is required in rare cases when the version of the FPD image has a higher major revision than the version of the FPD image in the current Cisco IOS XR software package.

show fpd package Command Output: Example

Use the show fpd package command in administration EXECAdmin EXEC mode mode to find out which SPAs and SIPs are supported with your current Cisco IOS XR software release, which FPD image package you need for each SPA or SIP, and what the minimum hardware requirements are for each module. If multiple FPD images are available for your card, they are listed as Subtype fpga2, fpga3, and so on.


Note

The FPD name used in the FPD Description column of the output of the show fpd package command includes the last ten characters of DCO-PID. Depending on the slot and port numbers, the FPD name is appended with DCO_0, DCO_1, or DCO_2. For example, the FPD names for CFP2-WDM-D-1HL in port 0 and port 1 are -WDM-D-1HL_DCO_0 and WDM-D-1HL_DCO_1 respectively.


The following example shows sample output from the show fpd package command:

show fpd package
Tue Jan 22 13:56:00.212 UTC
 
=============================== ================================================
                                        Field Programmable Device Package
                                ================================================
                                               Req     SW      Min Req   Min Req
Card Type            FPD Description           Reload  Ver     SW Ver  Board Ver
=================== ========================== ====== ======= ======== =========
--------------------------------------------------------------------------------
NC55-1200W-ACFW      LIT-PriMCU-ACFW(A)         NO      2.09    2.09    0.0 
--------------------------------------------------------------------------------
NC55-900W-ACFW-I     LIT-PriMCU-ACFW-I(A)       NO      1.04    1.04    0.0 
--------------------------------------------------------------------------------
NC55-900W-DCFW-I     LIT-PriMCU-DCFW-I(A)       NO      2.260   2.260   0.0 
--------------------------------------------------------------------------------
NC55-930W-DCFW-C     LIT-PriMCU-DCFW-C(A)       NO      2.259   2.259   0.0 
--------------------------------------------------------------------------------
NC55-MPA-12T-S       MPAFPGA                    YES     0.27    0.27    0.0 
--------------------------------------------------------------------------------
NC55-MPA-1TH2H-S     -WDM-D-1HL_DCO_2           NO     38.518  38.518   0.1 
                     MPAFPGA                    YES     0.53    0.53    0.0 
                     WDM-DE-1HL_DCO_2           NO     38.518  38.518   0.1 
                     WDM-DS-1HL_DCO_2           NO     38.268  38.268   0.1 
--------------------------------------------------------------------------------
NC55-MPA-2TH-HX-S    -WDM-D-1HL_DCO_0           NO     38.518  38.518   0.1 
                     -WDM-D-1HL_DCO_1           NO     38.518  38.518   0.1 
                     MPAFPGA                    YES     0.53    0.53    0.0 
                     WDM-DE-1HL_DCO_0           NO     38.518  38.518   0.1 
                     WDM-DE-1HL_DCO_1           NO     38.518  38.518   0.1 
                     WDM-DS-1HL_DCO_0           NO     38.268  38.268   0.1 
                     WDM-DS-1HL_DCO_1           NO     38.268  38.268   0.1 
--------------------------------------------------------------------------------
NC55-MPA-2TH-S       -WDM-D-1HL_DCO_0           NO     38.518  38.518   0.1 
                     -WDM-D-1HL_DCO_1           NO     38.518  38.518   0.1 
                     MPAFPGA                    YES     0.53    0.53    0.0 
                     WDM-DE-1HL_DCO_0           NO     38.518  38.518   0.1 
                     WDM-DE-1HL_DCO_1           NO     38.518  38.518   0.1 
                     WDM-DS-1HL_DCO_0           NO     38.268  38.268   0.1 
                     WDM-DS-1HL_DCO_1           NO     38.268  38.268   0.1 
--------------------------------------------------------------------------------
NC55-MPA-4H-HD-S     MPAFPGA                    YES     0.53    0.53    0.0 
--------------------------------------------------------------------------------
NC55-MPA-4H-HX-S     MPAFPGA                    YES     0.53    0.53    0.0 
--------------------------------------------------------------------------------
NC55-MPA-4H-S        MPAFPGA                    YES     0.53    0.53    0.0 
--------------------------------------------------------------------------------
NC55A2-MOD-SE-H-S    Bootloader(A)              YES     1.11    1.11    0.0 
                     CPU-IOFPGA(A)              YES     1.18    1.18    0.1 
                     MB-IOFPGA(A)               YES     0.18    0.18    0.1 
                     MB-MIFPGA                  YES     0.19    0.19    0.0 
                     SATA(A)                    NO      5.00    5.00    0.0 
--------------------------------------------------------------------------------
NCS-55A2-MOD-HD-S    Bootloader(A)              YES     1.11    1.11    0.0 
                     CPU-IOFPGA(A)              YES     1.18    1.18    0.1 
                     MB-IOFPGA(A)               YES     0.18    0.18    0.1 
                     MB-MIFPGA                  YES     0.19    0.19    0.0 
                     SATA(A)                    NO      5.00    5.00    0.0 
--------------------------------------------------------------------------------
NCS-55A2-MOD-HX-S    Bootloader(A)              YES     1.11    1.11    0.0 
                     CPU-IOFPGA(A)              YES     1.18    1.18    0.1 
                     MB-IOFPGA(A)               YES     0.18    0.18    0.1 
                     MB-MIFPGA                  YES     0.19    0.19    0.0 
                     SATA(A)                    NO      5.00    5.00    0.0 
--------------------------------------------------------------------------------
NCS-55A2-MOD-S       Bootloader(A)              YES     1.11    1.11    0.0 
                     CPU-IOFPGA(A)              YES     1.18    1.18    0.1 
                     MB-IOFPGA(A)               YES     0.18    0.18    0.1 
                     MB-MIFPGA                  YES     0.19    0.19    0.0 
                     SATA(A)                    NO      5.00    5.00    0.0 
--------------------------------------------------------------------------------
NCS-55A2-MOD-SE-S    Bootloader(A)              YES     1.11    1.11    0.0 
                     CPU-IOFPGA(A)              YES     1.18    1.18    0.1 
                     MB-IOFPGA(A)               YES     0.18    0.18    0.1 
                     MB-MIFPGA                  YES     0.19    0.19    0.0 
                     SATA(A)                    NO      5.00    5.00    0.0 
                     STATSFPGA                  YES     0.01    0.01    0.0

This table describes the significant fields shown in the display:

Table 3. show fpd package Field Descriptions

Field

Description

Card Type

Module part number.

FPD Description

Description of all FPD images available for the SPA.

Type

Hardware type. Possible types can be:

  • spa—Shared port adapter

  • lc—Line card

Subtype

FPD subtype. These values are used in the upgrade hw-module fpd command to indicate a specific FPD image type to upgrade.

SW Version

FPD software version recommended for the associated module running the current Cisco IOS XR software.

Min Req SW Vers

Minimum required FPD image software version to operate the card. Version 0.0 indicates that a minimum required image was not programmed into the card.

Min Req HW Vers

Minimum required hardware version for the associated FPD image. A minimum hardware requirement of version 0.0 indicates that all hardware can support this FPD image version.


Note

In the show fpd package command output, the “subtype” column shows the FPDs that correspond with each SPA image. To upgrade a specific FPD with the upgrade hw-module fpd command, replace the fpga-type argument with the appropriate FPD from the “subtype” column, as shown in the following example:


RP/0/RP0/CPU0:router(admin)# upgrade hw-module fpd fpga2 location 0/3/1 reload

upgrade hw-module fpd Command Output: Example

Use the upgrade hw-module fpd command to upgrade the FPD image on a SPA, SIP or line card.


RP/0/RP0/CPU0:Router# admin
RP/0/RP0/CPU0:Router(admin)# upgrade hw-module fpd fpga location 0/1/4
  
% RELOAD REMINDER:
  - The upgrade operation of the target module will not interrupt its normal
    operation. However, for the changes to take effect, the target module
    will need to be manually reloaded after the upgrade operation. This can
    be accomplished with the use of "hw-module <target> reload" command.
  - If automatic reload operation is desired after the upgrade, please use
    the "reload" option at the end of the upgrade command.
  - The output of "show hw-module fpd location" command will not display
    correct version information after the upgrade if the target module is
    not reloaded.
Continue? [confirm] y
  
SP/0/1/SP:Dec 22 05:41:17.920 : upgrade_daemon[125]: programming...with file /ne
t/node0_RP1_CPU0/hfr-lc-3.3.83/fpd/ucode/fpga_gladiator_sw0.6.xsvf
SP/0/1/SP:Dec 22 05:41:28.900 : upgrade_daemon[125]: ...programming...
SP/0/1/SP:Dec 22 05:41:28.906 : upgrade_daemon[125]: ...it will take a while...
SP/0/1/SP:Dec 22 05:41:29.004 : upgrade_daemon[125]: ...it will take a while...
SP/0/1/SP:Dec 22 05:43:03.432 : upgrade_daemon[125]: ...programming...
SP/0/1/SP:Dec 22 05:43:03.438 : upgrade_daemon[125]: ...it will take a while...
Successfully upgraded spa fpga instance 4 on location 0/1/4.
   

The following example shows how to upgrade the FPD image on a PLIM. Note that this upgrade does not upgrade the SPAs installed in the PLIM.


RP/0/RP0/CPU0:router(admin)# upgrade hw-module fpd all location 0/RP0/CPU0
Wed Mar 23 12:55:17.141 DST

***** UPGRADE WARNING MESSAGE: *****
  *  This upgrade operation has a maximum timout of 90 minutes.  *
  *  If you are executing the cmd for one specific location and  *
  *  card in that location reloads or goes down for some reason  *
  *  you can press CTRL-C to get back the RP's prompt.           *
  *  If you are executing the cmd for _all_ locations and a node *
  *  reloads or is down please allow other nodes to finish the   *
  *  upgrade process before pressing CTRL-C.                     *

% RELOAD REMINDER:
  - The upgrade operation of the target module will not interrupt its normal
    operation. However, for the changes to take effect, the target module
    will need to be manually reloaded after the upgrade operation. This can
    be accomplished with the use of "hw-module <target> reload" command.
  - If automatic reload operation is desired after the upgrade, please use
    the "reload" option at the end of the upgrade command.
  - The output of "show hw-module fpd location" command will not display
    correct version information after the upgrade if the target module is
    not reloaded.
NOTE: Chassis CLI will not be accessible while upgrade is in progress.
Continue? [confirm]

FPD upgrade in progress on some hardware, reload/configuration change 
on those is not recommended as it might cause HW programming failure 
and result in RMA of the hardware.

Starting the upgrade/download of following FPDs:
=========== ==== ======= ======= =========== =========
                                   Current    Upg/Dng
Location    Type Subtype Upg/Dng   Version    Version
=========== ==== ======= ======= =========== =========
0/6/CPU0    lc   fpga    upg         6.00        6.00   
            lc   rommon  dng         2.100       2.03   
------------------------------------------------------
FPD upgrade in progress. Max timeout remaining 89 min.
FPD upgrade in progress. Max timeout remaining 88 min.
FPD upgrade in progress. Max timeout remaining 87 min.
Successfully upgraded fpga for CRS1-SIP-800 on location 0/6/CPU0 from 6.00 to 6.00
Successfully downgraded rommon for 40G-MSC on location 0/6/CPU0 from 2.100 to 2.03

FPD upgrade has ended.
  

show platform Command Output: Example

Use the show platform command to verify that the SPA is up and running.


RP/0/RP0/CPU0:router# show platform
  
Node            Type            PLIM            State           Config State
-----------------------------------------------------------------------------
0/1/SP          MSC(SP)         N/A             IOS XR RUN      PWR,NSHUT,MON
0/1/CPU0        MSC             Jacket Card     IOS XR RUN      PWR,NSHUT,MON
0/1/0           MSC(SPA)        4XOC3-POS       OK              PWR,NSHUT,MON
0/1/1           MSC(SPA)        OC192RPR-XFP    OK              PWR,NSHUT,MON
0/1/4           MSC(SPA)        8XOC3/OC12-POS  OK              PWR,NSHUT,MON
0/RP1/CPU0      RP(Active)      N/A             IOS XR RUN      PWR,NSHUT,MON
   

Troubleshooting Problems with FPD Image Upgrades

This section contains information to help troubleshoot problems that can occur during the upgrade process.

Power Failure or Removal of a SPA During an FPD Image Upgrade

If the FPD upgrade operation is interrupted by a power failure or the removal of the SPA, it could corrupt the FPD image. This corruption of the FPD image file makes the SPA unusable by the router and the system displays the following messages when it tries to power up the SPA. When it cannot successfully power up the SPA, it places it in the failed state, as shown in the following example:

LC/0/3/CPU0:Feb  4 08:23:16.672 : spa_192_jacket[188]: %L2-SPA-5-OIR_INSERTED : SPA discovered in bay 0
  LC/0/3/CPU0:Feb  4 08:23:23.349 : spa_192_jacket[188]: %L2-SPA-5-OIR_ERROR : SPA (0): An error occurred (0x1002), error recovery action: reset SPA
  LC/0/3/CPU0:Feb  4 08:23:26.431 : spa_192_jacket[188]: %L2-SPA-5-OIR_INSERTED : SPA discovered in bay 0
  LC/0/3/CPU0:Feb  4 08:23:32.593 : spa_192_jacket[188]: %L2-SPA-5-OIR_ERROR : SPA (0): Too many retries, error recovery stopped
  LC/0/3/CPU0:Feb  4 08:23:32.593 : spa_192_jacket[188]: %L2-SPA-5-OIR_ERROR : SPA (0): An error occurred (0x1002), error recovery action: hold SPA in reset 
 

When a SPA is in the failed state, it may not register itself with the FPD upgrade mechanism. In this case, you do not see the SPA listed when you use the show hw-module fpd command. To verify the state of a SPA, use the show hw-module subslot error command and the show hw-module subslot status command.

Performing a SPA FPD Recovery Upgrade

To recover a SPA from the failed state because of a corrupted FPD image, you must manually shut down the SPA. Use the hw-module subslot subslot-id shutdown command in Global Configuration mode to administratively shutdown the SPA. After the SPA is shut down, you can use the upgrade hw-module fpd command in administration EXEC mode:


RP/0/RP0/CPU0:router# admin
RP/0/RP0/CPU0:router(admin)# upgrade hw-module fpd fpga location 0/3/0
  

Performing a SIP FPD Recovery Upgrade

If a SIP upgrade fails for whatever reason, do not reload the SIP. Try to perform the upgrade procedure again. You can perform the upgrade procedure multiple times, as long as you do not reload the SIP. The FPD upgrade procedure takes several minutes to complete; do not interrupt the procedure. If you reload the SIP when the FPD image is corrupted, the SIP malfunctions and you must contact Cisco technical support for assistance.

To recover a SIP from the failed state because of a corrupted FPD image, you must contact Cisco technical support.

To recover a SIP from the failed state because of a corrupted FPD image, you must turn off the automatic reset of the SIP card. Use the hw-module reset auto disable command in administration configuration mode, as shown in the following example:


RP/0/RP0/CPU0:router(admin-config)# hw-module reset auto disable location 0/1/4