![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
This appendix describes how to use the ROM monitor bootstrap program to identify hardware problems on the Cisco Catalyst 4000 Access Gateway Module (AGM) that you encounter during installation.
This appendix contains these major sections:
The ROM monitor runs when you power on or restart the AGM. During normal operation, the ROM monitor helps to initialize the processor hardware and boot the operating system software.To use the ROM monitor, your terminal or workstation must be connected to the console port of the switch. See the "Connecting a Terminal to the Console and Ethernet Management Ports" section for information on making this connection.
To enter ROMMON mode, perform the following steps:
Step 1 Enter the enable command at the Gateway> prompt to enter privileged mode.
Step 2 Enter the reload command at the Gateway# prompt to restart the AGM.
Step 3 Press the Break key for 60 seconds while the system is starting up. Pressing this key forces the AGM to stop booting and enter the ROMMON mode.
This example shows how to enter ROMMON mode:
Gateway>
Gateway> enable
Gateway# reload
System configuration has been modified. Save? [yes/no]:yes
Building configuration...
[OK]
Proceed with reload? [confirm]
16:51:22:%SYS-5-RELOAD:Reload requested
System Bootstrap, Version 12.1(5r)YF1, RELEASE SOFTWARE (fc1)
TAC Support: http://www.cisco.com/cgi-bin/ibld/view.pl?i=support
Copyright (c) 2001 by cisco Systems, Inc.
C4GWY platform with 65536 Kbytes of main memory
rommon 1 >
*** This ROMMON prompt will appear provided Autoboot is disabled.
*** The number "1" represents the line number, which increases
*** incrementally at each prompt.
rommon 1 > cont
*** Returns you to IOS.
Gateway#
telnet> send break
*** System received an abort due to Break Key ***
signal= 0x3, code= 0x500, context= 0x817aaa30
PC = 0x802948d0, Vector = 0x500, SP = 0x80006548
rommon 2 >
You can configure the AGM to enter ROMMON mode automatically upon a reboot by setting virtual configuration register bits 3, 2, 1, and 0 to 0.
To configure automatic reboot, perform the following steps:
Step 1 Enter the enable command at the Gateway> prompt to enter privileged mode.
Step 2 Enter the configuration command configuration-register 0x0 at the Gateway# prompt.
Step 3 Enter the reload command at the Gateway# prompt to restart the AGM.
This example shows how to configure for autoboot:
Gateway> enable
Gateway# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Gateway(config)# config-register ?
<0x0-0xFFFF> Config register number
Gateway(config)# config-register 0
Gateway(config)# end
Gateway#
The new configuration register value, 0x0, is effective after the reboot. This means that upon a reboot, the AGM remains in ROMMON mode and does not boot the operating system. To boot the operating system, you must do so from the console.
Refer to the boot command in the "General Use Commands" section and the tftpdnld command in the "Boot and System Image Recovery Commands" section.
This section describes the ROM monitor syntax conventions and the most commonly used commands. To display a complete list, enter ? or help at the ROMMON prompt, as follows:
rommon 1 > ?
![]() |
Note You can terminate any command by pressing the Break key at the console. |
The ROM monitor commands use the following conventions:
Convention | Purpose |
---|---|
[ ] | Square brackets [ ] denote an optional element. |
-s: | If a minus option is followed by a colon (for example, [-s:]), you must provide an argument for the option. |
italics | A term in italics means that you must fill in the appropriate information. |
This section describes some of the more commonly used ROM monitor commands:
For more information, refer to the Cisco IOS configuration guides and command references.
This section lists the ROM monitor general-use commands.
Enter the boot or b command to boot the Cisco IOS software image from either Flash memory, TFTP, or boothelper.
The following usage guidelines apply to the boot command:
boot c4gwy-io3s-mz 172.15.19.11
![]() |
Note If the device does not have an image or if the Flash is corrupt, the Flash ID might be lost. |
boot command options are as follows:
To display the running image, enter the show version and show hardware IOS commands.
Enter the dir device [partition] command to list the files on the named device. An example of this command is as follows:
rommon 8 > dir flash:
File size Checksum File name
2229799 bytes (0x220627) 0x469e c4gwy-io3s-mz-j-m2.113-4T
Enter the meminfo command to display the following details of main memory:
An example of this command is as follows:
rommon 9 > meminfo
Main memory size: 32 MB.
Available main memory starts at 0xa000e000, size 32704KB
IO (packet) memory size: 25 percent of main memory.
NVRAM size: 256KB
Enter the meminfo[-I] command to display supported Dual In-Line Memory Module (DIMM) configurations. An example of this command is as follows:
rommon 1 > meminfo -l
Supported memory configurations:
DIMM 0
---------
Enter the priv command to enter privileged ROMMON mode. An example of this command is as follows:
rommon 3 > priv
You now have access to the full set of monitor commands.
Warning:some commands will allow you to destroy your
configuration and/or system images and could render
the machine unbootable.
Enter the reset or i command to reset and initialize the AGM. This command's function is similar to power on.
An example of this command is as follows:
rommon 5 > reset
System Bootstrap, Version 12.0(20001221:021337) [ssamiull-gateway_g1 108], DEVELOPMENT
SOFTWARE
Copyright (c) 1994-2000 by cisco Systems, Inc.
Compiled Tue 26-Dec-00 17:52 by ssamiull-gateway_g1
Board Rev 0x04, Brazil Rev 0x03, Rio Rev 0x01, Disco Rev 0x01
C4924V platform with 65536 Kbytes of main memory
rommon 1 >
Enter the version command to display the software version of ROMMON. An example of this command is as follows:
rommon 1 > version
System Bootstrap, Version 12.0(20001221:021337) [ssamiull-gateway_g1 108], DEVELOPMENT
SOFTWARE
Copyright (c) 1994-2000 by cisco Systems, Inc.
Compiled Tue 26-Dec-00 17:52 by ssamiull-gateway_g1
Board Rev 0x04, Brazil Rev 0x03, Rio Rev 0x01, Disco Rev 0x01
rommon 2 >
This section lists the ROM monitor debugging commands.
Most debugging commands are functional only when IOS software has crashed or is aborted. If you enter a debugging command and IOS crash information is unavailable, this error message is displayed:
"xxx: kernel context state is invalid, can not proceed."
Enter the stack command produces a stack trace. An example of this command is as follows:
rommon 2 > k
Stack trace:
PC = 0x80266a38
Frame 00:FP = 0x80006560 PC = 0x80266a38
Frame 01:FP = 0x8000656c PC = 0x80265ac0
Frame 02:FP = 0x8000662c PC = 0x80262718
Frame 03:FP = 0x8000665c PC = 0x8002011c
Frame 04:FP = 0x8000666c PC = 0x80020068
Frame 05:FP = 0x80006684 PC = 0xfff03e7c
Invalid FP = 0x800066bc, cannot proceed
Enter the context command to display processor context. An example of this command is as follows:
rommon 5 > context
CPU context of the most recent exception:
PC = 0x801ca8d0 MSR = 0x00009032 CR = 0x22000022 LR = 0x801c61f0
CTR = 0x801ed28c XER = 0x00000000 DAR = 0xffffffff DSISR = 0xffffffff
DEC = 0xffffffff TBU = 0xffffffff TBL = 0xffffffff IMMR = 0xffffffff
R0 = 0x801c61f0 R1 = 0x80006540 R2 = 0xffffffff R3 = 0x00000000
R4 = 0x00000000 R5 = 0x81858a7c R6 = 0x00009032 R7 = 0xdeadfeed
R8 = 0x00000000 R9 = 0x00000000 R10 = 0x0000fe8c R11 = 0x00000000
R12 = 0x0000003c R13 = 0xffffffff R14 = 0xffffffff R15 = 0xffffffff
R16 = 0xffffffff R17 = 0xffffffff R18 = 0xffffffff R19 = 0xffffffff
R20 = 0xffffffff R21 = 0xffffffff R22 = 0xffffffff R23 = 0xffffffff
R24 = 0xffffffff R25 = 0xffffffff R26 = 0xffffffff R27 = 0xffffffff
R28 = 0xffffffff R29 = 0xffffffff R30 = 0xffffffff R31 = 0xffffffff
rommon 6 >
Enter the frame command to display an individual stack frame. An example of this command is as follows:
rommon 5 > frame 00
Frame 00:FP = 0x80006560 PC = 0x80266a38
at 0x80006568 (fp + 0x08) = 0x817b4280
rommon 6 > frame 01
Frame 01:FP = 0x8000656c PC = 0x80265ac0
at 0x80006574 (fp + 0x08) = 0x00000000
at 0x80006578 (fp + 0x0c) = 0x80010000
at 0x8000657c (fp + 0x10) = 0xfff30000
at 0x80006580 (fp + 0x14) = 0x80020000
at 0x80006584 (fp + 0x18) = 0x83ff7800
at 0x80006588 (fp + 0x1c) = 0x80020000
at 0x8000658c (fp + 0x20) = 0x8000667c
at 0x80006590 (fp + 0x24) = 0x00000000
at 0x80006594 (fp + 0x28) = 0x81250000
at 0x80006598 (fp + 0x2c) = 0x00000001
rommon 7 > frame 03
Frame 03:FP = 0x8000665c PC = 0x8002011c
at 0x80006664 (fp + 0x08) = 0x0122ed84
at 0x80006668 (fp + 0x0c) = 0x83ff7800
rommon 8 > frame 04
Frame 04:FP = 0x8000666c PC = 0x80020068
at 0x80006674 (fp + 0x08) = 0x00000002
at 0x80006678 (fp + 0x0c) = 0x00000000
at 0x8000667c (fp + 0x10) = 0x0122ed84
at 0x80006680 (fp + 0x14) = 0x83ff7800
rommon 9 > frame 05
Frame 05:FP = 0x80006684 PC = 0xfff03e7c
at 0x8000668c (fp + 0x08) = 0x00000005
at 0x80006690 (fp + 0x0c) = 0x800046ac
at 0x80006694 (fp + 0x10) = 0xfff24c90
at 0x80006698 (fp + 0x14) = 0x00000000
at 0x8000669c (fp + 0x18) = 0x00000000
at 0x800066a0 (fp + 0x1c) = 0x00000000
at 0x800066a4 (fp + 0x20) = 0x00000000
at 0x800066a8 (fp + 0x24) = 0x00000000
at 0x800066ac (fp + 0x28) = 0x00000000
at 0x800066b0 (fp + 0x2c) = 0x00000000
rommon 10 >
Enter the sysret command to display return information from the last booted system image. This information includes the reason for terminating the image, a stack dump of up to eight frames, and, if an exception is involved, the address where the exception occurred. An example of this command is as follows:
rommon 8 > sysret
System Return Info:
count: 19, reason: a SegV exception
pc:0x802b1040, error address: 0x802b1040
Stack Trace:
FP: 0x80908398, PC: 0x802b102c
FP: 0x809083b0, PC: 0x802b0b88
FP: 0x809083d8, PC: 0x8017039c
FP: 0x809083e8, PC: 0x8016f764
This section lists the ROM cookie and fxs_high_density cookie commands.
Enter the cookie command to display identification information for the AGM.
In nonprivileged mode, the cookie command displays read-only information for a AGM.
An example of this command is as follows:
rommon 2 > cookie
cookie:
01 01 00 10 7b fb 1a 36 53 00 00 00 01 7a 00 06
00 00 00 00 00 00 00 00 4a 41 42 04 44 30 44 41
32 01 05 00 00 00 00 00 00 00 00 00 05 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
In privileged mode, the cookie command lets you edit the switch information as follows:
rommon 3 > priv
You now have access to the full set of monitor commands.
Warning:some commands will allow you to destroy your
configuration and/or system images and could render
the machine unbootable.
rommon 4 > cookie
View/alter bytes of serial cookie by field --
Input hex byte(s) or:CR -> skip field; ? -> list values
Cookie Version Number:01
>
Vendor:01
Base MAC Address:00 10 7b fb 1a 36
Processor ID:53
Unused:00 00 00
PA Type:01 7a
MAC Addresses Allocated:00 06
Unused:00 00 00 00
Serial Number:00 00 00 00
PSL Location:4a 41 42
PSL Year:04
PSL Week:44
PSL Serial:30 44 41 32
Hardware Major Version:01
Hardware Minor Version:05
Deviation:00 00
RMA Failure Code:00
RMA Number:00 00 00
Unused:00 00 00
Board Revision:05
Board Configuration:00
PCA Number:00 00 00 00
rommon 5 >
Enter the fxs_high_density cookie command to display identification information for the Catalyst 4000 8-port RJ21 FXS module.
In nonprivileged mode, the fxs_high_density cookie command displays read-only information for an 8-port FXS module.
An example of this command is as follows:
rommon 1 > fxs_high_density
fxs_high_density cookie:
ff ff ff ff ff ff ff ff ff ff ff ff 00 02 43 69
73 63 6f 20 53 79 73 74 65 6d 73 20 49 6e 63 00
00 00 57 53 2d 55 34 36 30 34 2d 31 36 00 00 00
00 00 00 00 00 00 59 4f 55 52 43 4f 4e 43 45 52
54 4f 00 00 00 00 00 00 00 00 37 33 2d 36 34 37
36 2d 30 32 00 00 00 00 00 00 ff ff ff ff 4e 6f
6e 65 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
rommon 2 >
In privileged mode, the fxs_high_density cookie command allows you to edit the module information as follows:
rommon 2 > priv
You now have access to the full set of monitor commands.
Warning:some commands will allow you to destroy your
configuration and/or system images and could render
the machine unbootable.
rommon 3 > fxs_high_density
View/alter bytes of fxs_high_density serial cookie by field --
Input hex byte(s) or:CR -> skip field; ? -> list values
block_signature:ff ff
block_version:ff
block_length:ff
block_checksum:ff ff
seeprom_size:ff ff
block_count:ff ff
fru_major_type:ff ff
fru_minor_type:00 02
OEM_string:Cisco Systems Inc
product_number:WS-U4604-16
serial_number:YOURfxs_high_density
part_number:73-6476-02
part_revision:ff ff ff ff
mfg_deviation:None
hw_rev_major:ff ff
hw_rev_minor:ff ff
mfg_bits:ff ff
eng_bits:ff ff
snmpIOD:ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
power_consumption:ff ff
RMA failure code:ff ff ff ff
rommon 4 >
This section describes the ROM confreg command.
Enter the confreg command to display the contents of the virtual configuration register.
After entering the command, you will see a prompt asking you to alter the contents as follows:
rommon 7 > confreg
Configuration Summary
enabled are:
break/abort has effect
console baud: 9600
boot: the ROM Monitor
do you wish to change the configuration? y/n [n]: y
enable "diagnostic mode"? y/n [n]: y
enable "use net in IP bcast address"? y/n [n]:
enable "load rom after netboot fails"? y/n [n]:
enable "use all zero broadcast"? y/n [n]:
disable "break/abort has effect"? y/n [n]:
enable "ignore system config info"? y/n [n]:
change console baud rate? y/n [n]: y
enter rate: 0 = 9600, 1 = 4800, 2 = 1200, 3 = 2400
4 = 19200, 5 = 38400, 6 = 57600, 7 = 115200 [0]: 0
change the boot characteristics? y/n [n]: y
enter to boot:
0 = ROM Monitor
1 = the boot helper image
2-15 = boot system
[0]: 0
Configuration Summary
enabled are:
diagnostic mode
break/abort has effect
console baud: 9600
boot: the ROM Monitor
do you wish to change the configuration? y/n [n]:
You must reset or power cycle for new config to take effect
Enter the confreg [hexnum] command to change the virtual configuration register to the value specified. The value is always interpreted as hexadecimal.
The virtual configuration register resides in NVRAM. You can display or modify the register from either the ROM monitor or the operating system software. When you change the register, the new value is written into NVRAM, but is not effective until you reset or power-cycle the AGM.
To modify the configuration register from the operating system software, enter the following commands:
Gateway> enble
Gateway# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Gateway(config)# config-register 0x0
Gateway(config)# end
Gateway#
If your AGM will not boot, the IOS software image in Flash memory might be corrupt. If so, you can obtain a new one with the tftpdnld ROM monitor commands.
Enter the tftpdnld command to download an IOS software image from a remote server into Flash memory using TFTP. (You must have a TFTP server directly connected to the front-panel Ethernet management port.) Monitor variables are used to set up parameters for the transfer.
Usage: tftpdnld [-rxe]
![]() |
Note In nonprivileged mode, only the -r command line option is available. |
The syntax for specifying variables is as follows:
VARIABLE_NAME=value
The following variables are required:
The following variables are optional:
Command line options are as follows:
After you specify the variables, you must reenter the tftpdnld command as follows:
rommon 1 > tftpdnld
rommon 2 > IP_ADDRESS=172.15.19.11
rommon 3 > IP_SUBNET_MASK=255.255.255.0
rommon 4 > DEFAULT_GATEWAY=172.15.19.1
rommon 5 > TFTP_SERVER=172.15.20.10
rommon 6 > TFTP_FILE=/tftpboot/c4gwy-io3s-mz
rommon 7 > TFTP_VERBOSE=1
rommon 8 > tftpdnld
IP_ADDRESS=172.15.19.11
IP_SUBNET_MASK=255.255.255.0
DEFAULT_GATEWAY=172.15.19.1
TFTP_SERVER=172.15.20.10
TFTP_FILE=/tftpboot/c4gwy-io3s-mz
TFTP_VERBOSE=1
Invoke this command for disaster recovery only.
WARNING: all existing data in flash will be lost!
Do you wish to continue? y/n: [n]:
Enter y to begin downloading the IOS software image. When this process completes, the ROMMON prompt displays on your screen.
To terminate tftpdnld, press Break or Ctrl-C.
There are two ways to upgrade the ROM monitor:
To upgrade the ROM monitor, enter this IOS command in privileged mode:
chopin# upgrade rommon tftp://171.69.1.129/c4gwy_rommon.srec
This command downloads the new ROM monitor image from a TFTP server and then overwrites the previous image in Flash memory.
To upgrade the ROM monitor, follow these steps:
Step 1 Enter the following at the ROMMON prompt:
IP_ADDRESS=172.20.59.55
IP_SUBNET_MASK=255.255.255.0
DEFAULT_GATEWAY=172.20.59.1
TFTP_SERVER=171.69.1.129
TFTP_FILE=chopin/c4gwy-rommon-mz
Step 2 Enter sync to save the variables to NVRAM.
Step 3 Enter tftpdnld -r to boot the IOS image from the network.
![]() |
Note You can boot the c4gwy-rommon-mz image or boot the IOS image from Flash memory if present. |
Posted: Thu Dec 19 10:05:22 PST 2002
All contents are Copyright © 1992--2002 Cisco Systems, Inc. All rights reserved.
Important Notices and Privacy Statement.