Вы находитесь на странице: 1из 208

Embedded Computing for Business-Critical ContinuityTM

BBS on ATCA-F120 with SRstackware


Programmers Reference
P/N: 6806800K68C November 2010

2010 Emerson

All rights reserved.

Trademarks
Emerson, Business-Critical Continuity, Emerson Network Power and the Emerson Network Power logo are trademarks and service marks of Emerson Electric Co. 2010 Emerson Electric Co. All other product or service names are the property of their respective owners. Intel is a trademark or registered trademark of Intel Corporation or its subsidiaries in the United States and other countries. Java and all other Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. Microsoft, Windows and Windows Me are registered trademarks of Microsoft Corporation; and Windows XP is a trademark of Microsoft Corporation. PICMG, CompactPCI, AdvancedTCA and the PICMG, CompactPCI and AdvancedTCA logos are registered trademarks of the PCI Industrial Computer Manufacturers Group. UNIX is a registered trademark of The Open Group in the United States and other countries.

Notice
While reasonable efforts have been made to assure the accuracy of this document, Emerson assumes no liability resulting from any omissions in this document, or from the use of the information obtained therein. Emerson reserves the right to revise this document and to make changes from time to time in the content hereof without obligation of Emerson to notify any person of such revision or changes. Electronic versions of this material may be read online, downloaded for personal use, or referenced in another document as a URL to a Emerson website. The text itself may not be published commercially in print or electronic form, edited, translated, or otherwise altered without the permission of Emerson, It is possible that this publication may contain reference to or information about Emerson products (machines and programs), programming, or services that are not available in your country. Such references or information must not be construed to mean that Emerson intends to announce such Emerson products, programming, or services in your country.

Limited and Restricted Rights Legend


If the documentation contained herein is supplied, directly or indirectly, to the U.S. Government, the following notice shall apply unless otherwise agreed to in writing by Emerson. Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (b)(3) of the Rights in Technical Data clause at DFARS 252.227-7013 (Nov. 1995) and of the Rights in Noncommercial Computer Software and Documentation clause at DFARS 252.227-7014 (Jun. 1995).

Contact Address
Emerson Network Power - Embedded Computing Lilienthalstr. 15 85579 Neubiberg/Munich Germany

Contents

About this Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 1.1 1.2 2 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Software Building Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Installing the Basic Blade Services Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.1.1 Package Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.1.2 Installation Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Configuring a TFTP Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.2.1 Create /tftpboot Directory and Copy Target Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Upgrading U-Boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Installing the Open Firmware-Device Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 NFS Installation Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 2.5.1 Configuring the NFS Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 2.5.2 Copying and Installing the Root File System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 2.5.3 Configuring the ATCA-F120 to NFS Boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 2.5.4 Installing Remaining BBS Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Installing Software on the ATCA-F120 Flash Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 2.6.1 Flash Devices on the ATCA-F120 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 2.6.2 NOR Flash Bank Mapping in U-Boot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 2.6.3 NOR Flash Bank Mapping in Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 2.6.4 Mapping Table. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 2.6.5 Installing the Kernel and Operating System in Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 2.6.6 Upgrading the Backup Boot Bank . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 2.6.7 Installing the Kernel in Backup Boot Bank . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 Initrd and Flashboot Installation Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 2.7.1 Configuring ATCA-F120 for RamDisk Installation (initrd) . . . . . . . . . . . . . . . . . . . . . . . . . . 52 2.7.2 Installing BBS on NAND Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 2.7.3 Configuring ATCA-F120 to Boot from NAND Flash (flashboot) . . . . . . . . . . . . . . . . . . . . . 64

2.2 2.3 2.4 2.5

2.6

2.7

Firmware Upgrade Facility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 3.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67


3

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Contents Contents

3.2 3.3 3.4 3.5

Firmware Recovery Image Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Backup Concept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 fcuFirmware Upgrade Command-Line Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 Upgrading Firmware Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 3.5.1 FPGA Firmware Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 3.5.2 Upgrading the Kernel Image on ATCA-F120 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 3.5.3 Upgrading CPU Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 3.5.3.1 U-Boot Firmware Upgrade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 3.5.3.2 Cleaning the U-Boot Environment Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 3.5.4 Upgrading IPMC Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 3.5.4.1 Upgrading IPMC Firmware on the ATCA-F120 . . . . . . . . . . . . . . . . . . . . . . . . . . 78 3.5.4.2 Upgrading the RTM IPMC Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 3.5.4.3 Upgrading the Optical RTM IPMC Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

Linux Distribution Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 4.1 4.2 4.3 4.4 Distribution Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 Reliability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 Network Services Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 4.4.1 ATCA-F120 Ethernet Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 4.4.2 DHCP Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 4.4.3 TFTP Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 4.4.4 SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 Long POST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 4.5.1 Default Test Routines. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 4.5.2 Configuring the Long POST Behaviour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

4.5

Hardware Platform Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 5.1 5.2 5.3 5.4 5.5 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 hpmagentdHPM Agent Daemon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 hpmStart-Up Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 hpmShutdown and Reboot Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 hpmcmdHPM Command Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 5.5.1 Command Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Contents

5.5.2

Supported Commands. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 5.5.2.1 bye . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 5.5.2.2 bibdump . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 5.5.2.3 bibrepair . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 5.5.2.4 bibvalidate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 5.5.2.5 bootbankget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 5.5.2.6 bootbankset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 5.5.2.7 cmd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 5.5.2.8 deviceid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 5.5.2.9 ekeydownpath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 5.5.2.10 ekeyuppath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 5.5.2.11 exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 5.5.2.12 frudata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 5.5.2.13 fruinfoget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 5.5.2.14 fruinv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 5.5.2.15 fruread . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 5.5.2.16 fruwrite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 5.5.2.17 help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 5.5.2.18 ipmbaddress . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 5.5.2.19 ipmcdevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 5.5.2.20 ipmcstatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 5.5.2.21 ledget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 5.5.2.22 ledprop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 5.5.2.23 ledset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 5.5.2.24 loglevelget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 5.5.2.25 loglevelset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 5.5.2.26 macaddress . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 5.5.2.27 motshelftype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 5.5.2.28 partnumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 5.5.2.29 physlotnumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 5.5.2.30 portget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 5.5.2.31 portset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 5.5.2.32 quit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 5.5.2.33 rebootpath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 5.5.2.34 sdr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 5.5.2.35 sdr_dump . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
5

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Contents Contents

5.5.2.36 5.5.2.37 5.5.2.38 5.5.2.39 5.5.2.40 5.5.2.41 5.5.2.42 5.5.2.43 5.5.2.44 5.5.2.45 6

sendcmd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 sdrinfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 shelfaddress . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 shelfslots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 shutdownpath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 slotmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 slotnumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 upgrade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 watchdog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

Link Health Check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 6.1 6.2 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 LHC MIB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 6.2.1 Browsing the LHC MIB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 6.2.2 Enabling SNMP Access to the LHC MIB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 lhcdLHC Daemon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 lhclhcd Start-Stop Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 lhcLHC Command Line Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 6.5.1 Command Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 6.5.2 Command Usage for Common Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 6.5.3 Available Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 6.5.3.1 exit | q | quit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 6.5.3.2 get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 6.5.3.3 help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 6.5.3.4 index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 6.5.3.5 loglevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 6.5.3.6 next . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 6.5.3.7 objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 6.5.3.8 set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 6.5.3.9 tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 6.5.3.10 values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 6.5.3.11 version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 6.5.3.12 walk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 LHC Configuration Script and Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

6.3 6.4 6.5

6.6
6

Contents

6.7

6.8

6.9 7

LHC Fault Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 6.7.1 Determining to Change Active Network Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 6.7.2 Controlling the Active Network Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 6.7.3 Monitoring for Changes to the Active Network Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 6.7.4 Fault Management Notifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 LHC Configuration Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 6.8.1 Proctor Configuration Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 6.8.2 Responder Configuration Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 6.8.3 Baseboard Processor on Carrier Blade Configuration Example . . . . . . . . . . . . . . . . . . . . 146 6.8.4 AMC/PMC Module on Carrier Blade Configuration Example. . . . . . . . . . . . . . . . . . . . . . . 148 6.8.5 Leaky Bucket Description and Configuration Example . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 LHC Configuration for ATCA-F120 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

SRstackware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 7.1 7.2 7.3 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 Configuring SRstackware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 Default Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 7.3.1 SLOT1 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 7.3.2 SLOT2 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 Additional Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 7.4.1 SLOT1 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 7.4.2 SLOT2 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 7.4.3 Mapping Physical RTM Interfaces to SRstackware Ports . . . . . . . . . . . . . . . . . . . . . . . . . . 164 7.4.3.1 Copper RTM (RTM-ATCA-F120C) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 7.4.3.2 Optical RTM (RTM-ATCA-F120-OPT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 Default Switch Configuration Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 7.5.1 ATCA-F120 Switch Configuration Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 Custom Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 7.6.1 Enabling Protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 7.6.2 Enabling RTM ports. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 7.6.3 Sample Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 SNMP Usage Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 SNMP Traps Usage Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 7.8.1 Configuring Agent to Send SNMP Notifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 7.8.2 Configuring SNMP Manager to Receive SNMP Notifications . . . . . . . . . . . . . . . . . . . . . . 194
7

7.4

7.5 7.6

7.7 7.8

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Contents Contents

7.9 Configuring Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 7.10 Switch Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 7.10.1 Base Switch Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 7.10.2 Fabric Switch Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 8 HPI-B Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 8.1 A Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199

Related Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201 A.1 A.2 A.3 Emerson Network Power - Embedded Computing Documents . . . . . . . . . . . . . . . . . . . . . . . . . . 201 Related Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 Additional Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

List of Tables

Table 2-1 Table 2-2 Table 4-1 Table 4-2 Table 5-1 Table 6-1 Table 6-2 Table 7-1 Table 7-2 Table A-1 Table A-2 Table A-3

BBS Distribution Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Mapping Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Long POST Standard Test Routines - Generated IPMI Data . . . . . . . . . . . . . . . . . . . . . . . . 84 Long POST Default Test Routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 Command Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 ATCA-F120 Base Interface LHC Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 ATCA-F120 Fabric Interface LHC Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 Mapping Physical Interfaces of RTM-ATCA-F120C to SRstackware Ports . . . . . . . . . . . 165 Mapping Physical Interfaces of RTM-ATCA-F120-OPT to SRstackware Ports . . . . . . . . 165 Emerson Network Power - Embedded Computing Publications . . . . . . . . . . . . . . . . . . 201 Related Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 Additional Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

List of Tables

10

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

List of Figures

Figure 1-1 Figure 5-1 Figure 7-1 Figure 7-2 Figure 7-3 Figure 7-4

BBS Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 Software Levels of the HPM Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 ATCA-F120 Switch Management Fabric Interface Bridge Configuration . . . . . . . . 167 ATCA-F120 Switch Management Base Interface Bridge Configuration . . . . . . . . . 168 Base switch port mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 Fabric switch port mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

11

List of Figures

12

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

About this Manual

Overview of Contents
This manual is divided into the following chapters and appendices. Chapter 1, Introduction, on page 21 Chapter 2, Installing the Basic Blade Services Software, on page 25 Chapter 3, Firmware Upgrade Facility, on page 67 Chapter 4, Linux Distribution Description, on page 81 Chapter 5, Hardware Platform Management, on page 87 Chapter 6, Link Health Check, on page 123 Chapter 7, SRstackware, on page 155 Chapter 8, HPI-B Software, on page 199 Appendix A, Related Documentation, on page 201

Abbreviations
This document uses the following abbreviations:
Abbreviation AMC API AdvancedTCA ATCA ATIS BBS BC BIB BIOS BT Definition Advanced Mezzanine Card Application Programming Interface Advanced Telecommunications Computing Architecture Advanced Telecommunications Computing Architecture AdvancedTCA Interfaces Service Basic Blade Services Base Channel Board Information Block Basic Input Output System Block Transfer

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

13

About this Manual About this Manual

Abbreviation CGL CMC CMD CPU DAT DHCP DoS ECC ER EST ETH EVQ FC FCU FM FPGA FRI FRU FUF FWH GPIO HPI HPI-B HPM I/O IDE IP IPM

Definition Carrier Grade Linux Common Mezzanine Card Command Line Tool Central Processing Unit Domain Alarm Table Dynamic Host Configuration Protocol Denial of Service Embedded Communications Computing Expected Responder Eastern Standard Time Ethernet Event Queue Gabric Channel FUF Command Line Utility Fault Management Field Programmable Gate Array Firmware Recovery Image Field Replaceable Unit Firmware Upgrade Facility Firmware Hub General Purpose Input/Output Hardware Platform Interface Hardware Platform Interface Version B Hardware Platform Management Input Output Integrated Device Electronics Internet Protocol Intelligent Platform Management

14

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

About this Manual

Abbreviation IPMB IPMC IPMI KCS LED LHC LSP LT LUN MAC MIB MMC NTP OEM OSDL PC PCI PCIEX PEM PICMG PMC PNE PrPMC PXE RAM RDR RMCP

Definition Intelligent Platform Management Bus Intelligent Platform Management Controller Intelligent Platform Management Interface Keyboard Control Style Light Emitting Diode Link Health Check Linux Support Package Lower Threshold Logic Unit Number Media Access Control Management Information Base Module Management Controller Network Time Protocol Original Equipment Manufacturer Open Source Development Labs Personal Computer Peripheral Component Interconnect PCI Express Power Entry Module PCI Industrial Computers Manufacturers Group PCI Mezzanine Card Platform for Network Equipment Processor PMC Preboot Execution Environment Random Access Memory Resource Data Record Remote Monitoring and Control Protocol

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

15

About this Manual About this Manual

Abbreviation ROM RPM RTM SAF SAM SAS SATA SCSI SCXB SDK SDR SIP SIT SMI SNMP SSH SSU TAR TBD TCP TFTP TTY UC UDP USB UT VLAN WDT

Definition Read Only Memory RedHat Package Manager Rear Transition Module Service Availability Forum Shelf Manager and Alarm Module Serial Attached SCSI Serial ATA Small Computer System Interface System Controller Switching Blade Software Development Kit Sensor Data Record Serial Interface Protocol Simple Internet Transition Serial Management Interface Simple Network Management Protocol Secure Shell Synchronization Supply Unit Tape Archiver To Be Defined Transmission Control Protocol Trivial File Transfer Protocol Teletypewriter Update Channel User Datagram Protocol Universal Serial Bus Upper Threshold Virtual Local Area Network Watchdog Timer

16

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

About this Manual

Conventions
The following table describes the conventions used throughout this manual.
Notation 0x00000000 Description Typical notation for hexadecimal numbers (digits are 0 through F), for example used for addresses and offsets Same for binary numbers (digits are 0 and 1) Used to emphasize a word Used for on-screen output and code related elements or commands in body text Used to characterize user input and to separate it from system output Used for references and for table and figure descriptions Notation for selecting a submenu Notation for variables and keys Notation for software buttons to click on the screen and parameter description Repeated item for example node 1, node 2, ..., node 12 Omission of information from example/command that is not necessary at the time being

0b0000 bold Screen Courier + Bold Reference File > Exit <text> [text] ... . . . .. |

Ranges, for example: 0..4 means one of the integers 0,1,2,3, and 4 (used in registers) Logical OR

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

17

About this Manual About this Manual

Notation

Description Indicates a hazardous situation which, if not avoided, could result in death or serious injury

Indicates a hazardous situation which, if not avoided, may result in minor or moderate injury

Indicates a property damage message

No danger encountered. Pay attention to important information

Summary of Changes
See the table below for manual revisions and changes.
Part Number 6806800K68A 6806800K68B Date March 2010 August 2010 Description Initial version. Updated Chapter 2, Installing the Basic Blade Services Software, on page 25 and Chapter 3, Firmware Upgrade Facility, on page 67. Added SNMP Traps Usage Guidelines on page 193.

6806800K68C

November 2010

Comments and Suggestions


We welcome and appreciate your comments on our documentation. We want to know what you think about our manuals and how we can make them better.
18 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

About this Manual

Mail comments to us by filling out the following online form: http://www.emersonnetworkpowerembeddedcomputing.com/ > Contact Us > Online Form In "Area of Interest" select "Technical Documentation". Be sure to include the title, part number, and revision of the manual and tell us how you used it.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

19

About this Manual About this Manual

20

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Chapter 1

Introduction

1.1

Overview
This manual is applicable to the following part numbers: SA-BBS-WR-F120 SA-BBS-WR-F120-F The Basic Blades Services (BBS) software provides a set of services that support the blade on which the software is installed. BBS includes Wind River Platform For Network Equipment Linux Edition 1.4 Several custom hardware management functions for the unique hardware of the blade. A set of management routines for Linux and all hardware interfaces. Management access includes support for SNMP and a local console interface based on a standard Linux command shell.

1.2

Software Building Blocks


BBS services include a common set of functionality which is available for all AdvancedTCA blades and AMC modules, and a unique set of functionality which is tailored to a particular blade or module.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

21

Introduction

The figure below depicts the architecture of the BBS software. Figure 1-1
HPM CMD HPM Agent Linux Distribution IPMC Firmware Processor Firmware

BBS Architecture
FUF LHC CMD SRS Shell HPI-B Customer Application Application

LHC SNMP Daemon Agent

Fabric Middleware Management Operating System Firmware

HPM: Hardware Platform Management LHC: Link Health Check CMD Command Line Tool FUF: Firmware Upgrade Facility HPI: Hardware Platform Interface

BBS consists of the following software and services: Firmware Upgrade Facility The Firmware Upgrade Facility (FUF) provides a uniform way to upgrade firmware on Emerson blades and AMC modules, regardless on which flash locations the firmware is stored. FUF upgrades the BIOS firmware as well as the IPMC firmware (via HPM agent). The FUF currently consists of a Firmware Upgrade Command Line Utility (FCU), flash device drivers, and specially prepared firmware recovery image files. The FUF can be used on switch and node blades and on AMC modules. Linux This BBS is based on Wind River Platform For Network Equipment Linux Edition 1.4. Various Linux services (above the kernel) will be activated by the BBS installation scripts. Hardware Platform Management HPM in AdvancedTCA systems is based on Intelligent Platform Management Interface specification (IPMI). IPMI commands can be complex and cumbersome. Using a certain set of commands, HPM facilitates the blade or module-level hardware management.

22

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Introduction

Link Health Check The Link Health Check (LHC) supports the configuration and operation of the LHC protocol. LHC performs the verification of Layer 2 connectivity and the distribution of the active network plane. SRstackware SRstackware package supports configuration and operation of switch devices through various protocols that it provides. HPI-B This release contains an RPM which contains all files necessary for developing HPI-B applications. For further information refer to the System Management Interface Based on HPI-B (Centellis 31K/4100) Users Guide. SNMP Agent As each BBS blade/module is individually managed, the default installation script installs and initializes the "Net-SNMP" agent.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

23

Introduction

24

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Chapter 2

Installing the Basic Blade Services Software

2.1

Overview
The following sections describe how to install the BBS software for the ATCA-F120. Consult your local Emerson sales representative for information about how to obtain BBS images.

2.1.1

Package Information
BBS software is packaged with the Red Hat Package Manager (RPM) and it is installed as a part of the standard installation. In general, you will not need to install or upgrade an individual package. The following table lists all files which constitute the BBS package. These files may vary from release to release. Table 2-1 BBS Distribution Files
File Name kernel Hard Disk Installation rootfs.tar.gz modules.tar.gz f120-wr-pne2.0-files.tar.gz BBS RPM Files bbs-artmf120-cop-mmc1.04.138.rpm bbs-artmf120-opt-mmc1.04.138.rpm bbs-atcaf120-cpu-1.3.4_04.rpm bbs-atcaf120-fpga-16.rpm bbs-atcaf120-ipmc-1.04.138.rpm bbs-atcaf120-kernel2.6.21.7_hrt1_cfs_v22_grsec.rpm MMC firmware for the copper RTM MMC firmware for the optical RTM CPU firmware (U-Boot) FPGA firmware IPMC firmware Kernel image Root file system for hard disk installation Loadable kernel modules F120 specific rootfs files Description Operating System Kernel (Kernel version 2.6.27)

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

25

Installing the Basic Blade Services Software

Table 2-1 BBS Distribution Files (continued)


File Name bbs-clkagentcmd-atcaf120-1.0.01-pne20.rpm bbs-fuf-atcaf120-1.3.8-13windriver.rpm bbs-hpib-1.16.12-1.ppc_e500v2wrspne2.0-linux.rpm bbs-hpib-clientsrc-1.16.121.ppc_e500v2-wrspne2.0-linux.rpm bbs-hpib-daemon-1.16.121.ppc_e500v2-wrspne2.0-linux.rpm bbs-hpib-devel-1.16.121.ppc_e500v2-wrspne2.0-linux.rpm bbs-hpib-snmp-0.9.504-1.ppcwrspne2.0-linux.rpm bbs-hpmagentcmd-atcaf120-1.3.1216-windriver.rpm bbs-lhc-4.1.510.windriver.ppc.rpm srstackware-config-f120-2.1.2-4.ppc.rpm srstackware-f120-2.1.2-4.ppc.rpm srstackware-demo-config-f120-2.1.24.ppc.rpm srstackware-enhanced-f120-2.1.2-4.ppc.rpm Miscellaneous files files.sha1sum atcaf120-initrd.gz.uboot F120.dtb amc7211.tar.gz atca7221.tar.gz u-boot-1.3.4-04.bin Installation file INITRD image for installation Device tree for installation Installation file Installation file Raw U-Boot image for installation Description Telco Clock agent Firmware upgrade facility HPI-B package HPI-B client package HPI-B daemon package HPI-B developer package HPI-B SNMP package Hardware Platform Management Link Health Check SRstackware config RPM SRstackware Binaries SRstackware Demo configuration files SRStackware Enhanced SRS Binaries

26

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

2.1.2

Installation Overview
The installation process boots a custom ramdisk kernel from the network (CD installation is currently not supported). An interactive installation script then configures the target NAND flash, retrieves and installs the required files, and prompts you for system configuration information. The blade must have access to a TFTP server to retrieve the files. The procedures in this chapter assume that you are installing from a network following these basic steps that are described in the following subsections: 1. Configure the TFTP server. 2. Prepare the ATCA-F120 to boot from the network. 3. Boot from the network. 4. Install and configure the software. 5. Configure the ATCA-F120 to boot from NAND flash.

2.2

Configuring a TFTP Server


To install the BBS software over a network, you should prepare a TFTP server on a host and create a directory structure for the boot images and installation files. The following section describes the procedure to configure the TFTP server.

2.2.1

Create /tftpboot Directory and Copy Target Files


It is customary to place TFTP files in the tftpboot directory. Regardless of the file system node you specify as the root for your TFTP service, the installation scripts expect a certain directory structure when retrieving files.

Creating the /tftpboot Directory and Copying the Target Files


To create the expected directory structure and to copy the necessary files, follow these steps:

1. On the host create a /tftpboot directory, if it does not already exist. For example: mkdir /tftpboot

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

27

Installing the Basic Blade Services Software

2. Create a subdirectory for your blade, for example: mkdir /tftpboot/atca-f120 3. Copy or move the installation files to the subdirectory.

2.3

Upgrading U-Boot
PNE2.0 requires U-Boot version 1.3.4 or later. This section describes how to upgrade U-Boot version 1.3.4 or later from U-Boot itself. You can also upgrade the U-Boot using FCU BBS utility. Refer to Upgrading CPU Firmware on page 75 for more information. U-Boot binary image u-boot-<version>.bin should be in the TFTP download directory for upgrading U-Boot. Refer to Configuring a TFTP Server on page 27 before proceeding with U-Boot upgrade.

U-Boot Upgrade
Follow these steps to upgrade to U-Boot version 1.3.4 from U-Boot itself:

1. Power-up or reboot the blade. 2. At the console, press any key when you see the following message followed by a number counting down on the screen: Hit any key to stop autoboot: 10..9..8.. 3. Take note of the currently defined U-Boot environment variables (serverip, rootpath, ipaddr, gatewayip, netmask, bootfile, etc.) by typing as follows:

28

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

printenv <variable>
The default baud rate for U-Boot is 9600. After cleaning the environment variables and resetting the blade, you need to change your terminal or terminal server to default baud rate.

4. Clean the old environment variables in both active and backup boot bank. For example: protect off 1:0; erase fe000000 fe01ffff protect off 2:0; erase fc000000 fc01ffff 5. Download the binary image: tftpboot 1000000 atca-f120/u-boot-<version>.bin 6. Install the image: protect off 1:252-258
erase fff80000 ffffffff

cp.b 1000000 fff80000 80000 7. Reset the blade: reset 8. Verify the U-Boot image is upgraded to version 1.3.4 (or later) from the prologue as shown below: U-Boot 1.3.4.3 (Nov 27 2008 - 14:25:38), Build: 3
CPU: 8548E, Version: 2.0, (0x80390020) Core: E500, Version: 2.0, (0x80210020) Clock Configuration: CPU:1334 MHz, CCB: 534 MHz, DDR: 267 MHz (534 MT/s data rate), LBC: L1: D-cache 32 kB enabled I-cache 32 kB enabled Board: ATCA-F120 Reset Cause: CPU_HRESET PCI1: unused
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

33 MHz

29

Installing the Basic Blade Services Software

PCI2: 32 bit, 66 MHz, sync FPGA version: 16

IPMC version: 1.4.138 9. If necessary, restore the appropriate U-Boot environment variables. For example: setenv serverip <your TFTP servers IP address> setenv ipaddr <your blades IP address> setenv gatewayip <your network gateways IP address> setenv netmask <your networks netmask> setenv bootfile <kernel image on TFTP server> setenv ramdiskfile <initrd image on TFTP server> saveenv

2.4

Installing the Open Firmware-Device Tree


U-Boot version 1.3.4-3 or later has in-built Open Firmware Device (OF) Tree for ATCA-F120. In such case, the U-Boot will display the following output. DEV-TREE: addr=0x0ffbdfb8 If you are using the U-Boot with built-in OF-Device Tree, skip this section. Refer to Configuring a TFTP Server on page 27 before installing the OF-Device Tree.

Installing Open Firmware Device Tree


OF-Device Tree image F120.dtb should be in the TFTP download directory. Follow these steps to install OF-Device Tree.

1. Power-up or reboot the blade. 2. At the console, press any key when you see the following message followed by a number counting down on the screen: Hit any key to stop autoboot: 10..9..8..

30

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

3. Check for correct environment variables (serverip, rootpath, ipaddr, gatewayip, netmask, bootfile) by typing: printenv <variable> 4. If necessary, update the appropriate environment variables. For example: setenv serverip <your TFTP servers IP address>
setenv setenv setenv setenv setenv ipaddr <your blades IP address> gatewayip <your network gateways IP address> netmask <your networks netmask> bootfile <kernel image on TFTP server> ramdiskfile <initrd image on TFTP server>

saveenv 5. Download the binary image: tftpboot 1000000 atca-f120/F120.dtb 6. Install the OF-Device Tree: protect off 1:41
erase fe520000 fe53ffff

cp.b 1000000 fe520000 1ffff 7. Verify that the OF-Device Tree is downloaded and installed correctly: fdt addr fe520000 fdt print / {
model = "F120"; compatible = "MPC85xx"; #address-cells = <0x1>; #size-cells = <0x1>; aliases { ethernet0 = "/soc8548@e0000000/ethernet@24000"; ethernet1 = "/soc8548@e0000000/ethernet@25000"; ethernet2 = "/soc8548@e0000000/ethernet@26000"; ethernet3 = "/soc8548@e0000000/ethernet@27000"; phy0 = "/soc8548@e0000000/mdio@24520/ethernetphy@0"; phy1 = "/soc8548@e0000000/mdio@24520/ethernetphy@1";
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 31

Installing the Basic Blade Services Software

phy2 = "/soc8548@e0000000/mdio@24520/ethernetphy@2"; phy3 = "/soc8548@e0000000/mdio@24520/ethernetphy@3"; serial0 = "/soc8548@e0000000/serial@4500"; serial1 = "/soc8548@e0000000/serial@4600"; pci1 = "/pci@e0008000"; pci2 = "/pci@e0009000"; }; cpus { #cpus = <0x1>; #address-cells = <0x1>; #size-cells = <0x0>; PowerPC,8548@0 { device_type = "cpu"; reg = <0x0>; d-cache-line-size = <0x20>; i-cache-line-size = <0x20>; d-cache-size = <0x8000>; i-cache-size = <0x8000>; timebase-frequency = <0x3f940aa>; bus-frequency = <0x1fca0550>; clock-frequency = <0x4f790d48>; }; }; memory { device_type = "memory"; reg = <0x0 0x20000000>; }; soc8548@e0000000 { #address-cells = <0x1>; #size-cells = <0x1>; #interrupt-cells = <0x2>; device_type = "soc"; ranges = <0x0 0xe0000000 0x100000>; reg = <0xe0000000 0x100000>; bus-frequency = <0x1fca0550>; memory-controller@2000 { compatible = "fsl,8548-memory-controller";
32 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

reg = <0x2000 0x1000>; interrupt-parent = <0x1>; interrupts = <0x12 0x2>; }; l2-cache-controller@20000 { compatible = "fsl,8548-l2-cache-controller"; reg = <0x20000 0x1000>; cache-line-size = <0x20>; cache-size = <0x80000>; interrupt-parent = <0x1>; interrupts = <0x10 0x2>; }; i2c@3000 { device_type = "i2c"; compatible = "fsl-i2c"; reg = <0x3000 0x100>; interrupts = <0x1b 0x0>; interrupt-parent = <0x1>; dfsrr; }; i2c@3100 { device_type = "i2c"; compatible = "fsl-i2c"; reg = <0x3100 0x100>; interrupts = <0x1b 0x0>; interrupt-parent = <0x1>; dfsrr; }; mdio@24520 { #address-cells = <0x1>; #size-cells = <0x0>; device_type = "mdio"; compatible = "gianfar"; reg = <0x24520 0x20>; ethernet-phy@0 { interrupt-parent = <0x1>; interrupts = <0x37 0x0>; reg = <0x0>; device_type = "ethernet-phy";
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 33

Installing the Basic Blade Services Software

linux,phandle = <0x2>; }; ethernet-phy@1 { interrupt-parent = <0x1>; interrupts = <0x37 0x0>; reg = <0x1>; device_type = "ethernet-phy"; linux,phandle = <0x3>; }; ethernet-phy@2 { interrupt-parent = <0x1>; interrupts = <0x37 0x0>; reg = <0x2>; device_type = "ethernet-phy"; linux,phandle = <0x4>; }; ethernet-phy@3 { interrupt-parent = <0x1>; interrupts = <0x37 0x0>; reg = <0x3>; device_type = "ethernet-phy"; linux,phandle = <0x5>; }; }; ethernet@24000 { #address-cells = <0x1>; #size-cells = <0x0>; device_type = "network"; model = "eTSEC"; compatible = "gianfar"; reg = <0x24000 0x1000>; address = [00 e0 0c 01 00 fd]; mac-address = [00 e0 0c 01 00 fd]; interrupts = <0xd 0x2 0xe 0x2 0x12 0x2>; interrupt-parent = <0x1>; phy-handle = <0x2>; }; ethernet@25000 { local-mac-address = [00 80 42 25 d3 a3];
34 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

#address-cells = <0x1>; #size-cells = <0x0>; device_type = "network"; model = "eTSEC"; compatible = "gianfar"; reg = <0x25000 0x1000>; address = [00 e0 0c 01 01 fd]; mac-address = [00 80 42 25 d3 a3]; interrupts = <0x13 0x2 0x14 0x2 0x18 0x2>; interrupt-parent = <0x1>; phy-handle = <0x3>; }; ethernet@26000 { local-mac-address = [00 80 42 25 d3 a4]; #address-cells = <0x1>; #size-cells = <0x0>; device_type = "network"; model = "eTSEC"; compatible = "gianfar"; reg = <0x26000 0x1000>; address = [00 e0 0c 01 02 fd]; mac-address = [00 80 42 25 d3 a4]; interrupts = <0xf 0x2 0x10 0x2 0x11 0x2>; interrupt-parent = <0x1>; phy-handle = <0x4>; }; ethernet@27000 { local-mac-address = [00 80 42 25 d3 a5]; #address-cells = <0x1>; #size-cells = <0x0>; device_type = "network"; model = "eTSEC"; compatible = "gianfar"; reg = <0x27000 0x1000>; address = [00 e0 0c 01 03 fd]; mac-address = [00 80 42 25 d3 a5]; interrupts = <0x15 0x2 0x16 0x2 0x17 0x2>; interrupt-parent = <0x1>; phy-handle = <0x5>;
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 35

Installing the Basic Blade Services Software

}; serial@4500 { cell-index = <0x0>; device_type = "serial"; compatible = "ns16550"; reg = <0x4500 0x100>; clock-frequency = <0x1fca0550>; interrupts = <0x1a 0x2>; interrupt-parent = <0x1>; }; serial@4600 { cell-index = <0x1>; device_type = "serial"; compatible = "ns16550"; reg = <0x4600 0x100>; clock-frequency = <0x1fca0550>; interrupts = <0x1a 0x2>; interrupt-parent = <0x1>; }; global-utilities@e0000 { compatible = "fsl,mpc8548-guts"; reg = <0xe0000 0x1000>; fsl,has-rstcr; }; pic@40000 { clock-frequency = <0x0>; interrupt-controller; #address-cells = <0x0>; #interrupt-cells = <0x2>; reg = <0x40000 0x40000>; built-in; compatible = "chrp,open-pic"; device_type = "open-pic"; big-endian; linux,phandle = <0x1>; }; lbus@5000 { #interrupt-cells = <0x2>; #size-cells = <0x1>;
36 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

#address-cells = <0x2>; bus-width = <0x2>; clock-frequency = <0x1f78a40>; ranges = <0x0 0x0 0xfe000000 0x2000000 0x1 0x0 0xfc000000 0x2000000 0x2 0x0 0x0 0x0 0x3 0x0 0x0 0x0 0x4 0x0 0x0 0x0 0x7 0x0 0xf2000000 0x10000>; flash@0 { device_type = "flash"; compatible = "boot-flash1-0"; reg = <0x0 0x0 0x2000000>; environment { device_type = "mtd_partition"; partition = <0x0 0x20000>; }; kernel { device_type = "mtd_partition"; partition = <0x20000 0x500000>; }; empty { device_type = "mtd_partition"; partition = <0x520000 0x1a60000>; }; uboot { device_type = "mtd_partition"; partition = <0x1f80000 0x80000>; }; }; flash@1 { device_type = "flash"; compatible = "boot-flash2-0"; reg = <0x1 0x0 0x2000000>; environment { device_type = "mtd_partition"; partition = <0x0 0x20000>; }; kernel { device_type = "mtd_partition"; partition = <0x20000 0x500000>; };
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 37

Installing the Basic Blade Services Software

empty { device_type = "mtd_partition"; partition = <0x520000 0x1a60000>; }; uboot { device_type = "mtd_partition"; partition = <0x1f80000 0x80000>; }; }; fpga@7 { device_type = "sysconfig"; reg = <0x7 0x0 0x200>; }; bt@7 { device_type = "ipmi_bt"; reg = <0x7 0x0 0x3>; interrupt-parent = <0x1>; interrupts = <0xe7 0x2>; }; }; }; pci@e0008000 { interrupt-map-mask = <0xf800 0x0 0x0 0x7>; interrupt-parent = <0x1>; interrupts = <0x8 0x2>; bus-range = <0x0 0x0>; ranges = <0x2000000 0x0 0x80000000 0x80000000 0x0 0x20000000 0x1000000 0x0 0x0 0xe2000000 0x0 0x100000>; clock-frequency = <0x3f940aa>; #interrupt-cells = <0x1>; #size-cells = <0x2>; #address-cells = <0x3>; reg = <0x8000 0x1000>; compatible = "85xx"; device_type = "pci"; }; pci@e0009000 { interrupt-map-mask = <0xf800 0x0 0x0 0x7>;

38

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

interrupt-map = <0x8000 0x0 0x0 0x1 0x1 0x34 0x2 0x1 0x35 0x1 0x8000 0x0 0x0 0x3 0x1 0x36 0x4 0x1 0x37 0x1 0x8800 0x0 0x0 0x1 0x1 0x35 0x2 0x1 0x36 0x1 0x8800 0x0 0x0 0x3 0x1 0x37 0x4 0x1 0x34 0x1 0x9000 0x0 0x0 0x1 0x1 0x36 0x2 0x1 0x37 0x1 0x9000 0x0 0x0 0x3 0x1 0x34 0x4 0x1 0x35 0x1>; interrupt-parent = <0x1>; interrupts = <0x9 0x2>; bus-range = <0x0 0x0>; ranges = <0x2000000 0x0 0xa0000000 0xa0000000 0x20000000 0x1000000 0x0 0x0 0xe3000000 0x0 0x1000000>; clock-frequency = <0x3f940aa>; #interrupt-cells = <0x1>; #size-cells = <0x2>; #address-cells = <0x3>; reg = <0x9000 0x1000>; compatible = "85xx"; device_type = "pci"; bcm5600@10 { device_type = "network"; compatible = "bix"; reg = <0x8000 0x0 0x0 0x0 0x0>; vendor-id = <0x14e4>; device-id = <0xb502>; interrupts = <0x1>; }; bcm5604@11 { device_type = "network"; compatible = "fix"; reg = <0x8800 0x0 0x0 0x0 0x0>; vendor-id = <0x14e4>; device-id = <0xb800>; interrupts = <0x1>; }; bcm5604@12 { device_type = "network"; compatible = "fix"; reg = <0x9000 0x0 0x0 0x0 0x0>; 0x8000 0x8000 0x8800 0x8800 0x9000 0x9000 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

0x1 0x1 0x1 0x1 0x1 0x1

0x0

39

Installing the Basic Blade Services Software

vendor-id = <0x14e4>; device-id = <0xb502>; interrupts = <0x1>; }; };

};
The ATCA-F120 is now ready to install and boot PNE2.0. For installing NFS, continue to NFS Installation Procedure. For installing Initrd/Flashboot, continue to Installing Software on the ATCA-F120 Flash Devices.

40

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

2.5
2.5.1

NFS Installation Procedure


Configuring the NFS Server
Configure the NFS Server
Follow these steps to configure the ATCA-F120 to boot from TFTP and to mount the root file system through NFS server:

1. On the NFS server, log in as root. 2. Create a directory to contain the ATCA-F120 root file system, if it does not exist. For example: # mkdir -p /export/atca-f120 3. All NFS server exports need to be defined in the /etc/exports file: /export/atca-f120 *(rw,sync,no_root_squash,no_all_squash) 4. Restart NFS server: # /etc/init.d/nfs restart

2.5.2

Copying and Installing the Root File System


Copying and Installing the Root File System
Follow these steps for copying and installing the Root File System:

1. On the NFS server, log in as root. 2. Change to the ATCA-F120s root file system mount point (created above): # cd /export/atca-f120 3. Copy or move the BBS gzipped tar files into the exported directory.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

41

Installing the Basic Blade Services Software

4. Untar the following gzipped tar files in following order: 1. Untar the root file system: # tar -xzf rootfs.tar.gz 2. Untar the modules: # tar -xzf modules.tar.gz 3. Untar the ATCA-F120 specific files: # tar -xzf f120-wr-pne2.0-files.tar.gz

2.5.3

Configuring the ATCA-F120 to NFS Boot


Configuring the ATCA-F120 to NFS Boot
Follow these steps to configure the ATCA-F120 to network boot the kernel using NFS mount point. Following example assumes the TFTP server is also the NFS server and has the same IP address. Alternatively, you can set the nfsroot= variable used in nfsbootargs to reflect your NFS servers IP address.

1. Power-up or reboot the blade. 2. At the console, press any key when you see the following message followed by a number counting down on the screen: Hit any key to stop autoboot: 10..9..8.. 3. Check for correct environment variables (serverip, rootpath, ipaddr, gatewayip, netmask, bootfile) by typing: printenv <variable> 4. If necessary, update the appropriate environment variables. For example: setenv serverip <your TFTP servers IP address>
setenv ipaddr <your blades IP address> setenv gatewayip <your network gateways IP address> setenv netmask <your networks netmask>
42 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

saveenv Using the example shown above, setenv rootpath /export/atca-f120


setenv bootfile atca-f120/kernel

saveenv
Do not add /tftpboot/ to the bootfile variable.

5. Check for the nfsbootargs script setup. In the following example, the NFS server is defined through TFTP servers IP address ($serverip): print nfsbootargs nfsbootargs=setenv bootargs root=/dev/nfs rw nfsroot=$serverip:$rootpath ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev :off console=$consoledev,$baudrate $drvargs mem=$mem $othbootargs; 6. Configure the blade to auto-boot using NFS: setenv bootcmd run nfsboot 7. Save your changes: saveenv 8. To network boot the blade using TFTP and NFS, mount the root file system and enter: run bootcmd

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

43

Installing the Basic Blade Services Software

2.5.4

Installing Remaining BBS Files


Install the Remaining BBS Files
After the blade boots, rest of the BBS needs to be installed. Reboot the blade after installing the RPMs.

1. Log in to the ATCA-F120 as root. 2. Create a directory to store the RPM files. For example: # mkdir p /opt/BBS 3. Change the directory as shown below: # cd /opt/BBS 4. Copy the BBS RPM files to current directory. 5. Install the BBS RPMs: # rpm -ivh --nodeps *.rpm
# ldconfig

# depmod -ae 6. Reboot the blade to activate BBS: # reboot -f

2.6

Installing Software on the ATCA-F120 Flash Devices


Before installing the ATCA-F120 operating system and firmware in to the flash devices, you should fully understand the flash memory layout and how certain the flash devices memory is mapped and remapped.

2.6.1

Flash Devices on the ATCA-F120


ATCA-F120 contains four flash devices, which includes two 32MB NOR flash devices and two 2G NAND flash devices. From Linux, they are partitioned and named as follows: dev: size erasesize name

44

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

mtd0: 00020000 00020000 mtd1: 00500000 00020000 mtd2: 01a60000 00020000 mtd3: 00080000 00020000 mtd4: 02000000 00020000 mtd5: 00020000 00020000 mtd6: 00500000 00020000 mtd7: 01a60000 00020000 mtd8: 00080000 00020000 mtd9: 02000000 00020000 mtd10:40000000 00020000 mtd11:40000000 00020000 mtd12:80000000 00020000

"environment-boot-flash1" "kernel-boot-flash1" "empty-boot-flash1" "uboot-boot-flash1" "boot-flash1" "environment-boot-flash2" "kernel-boot-flash2" "empty-boot-flash2" "uboot-boot-flash2" "boot-flash2" "user-flash1" "user-flash2" "tftpboot"

Devices mtd0 through mtd4 point to memory partitioned in one of the two 32MB NOR flash devices. Devices mtd5 through mtd9 point to memory partitioned in the other 32MB NOR flash device. Active bank points to the current flash devices (Refer NOR Flash Bank Mapping in UBoot for more information). mtd4 points to the entire 32MB of memory which includes the memory pointed by the mtd0 through mtd3 partitions. Similarly, mtd9 points to the entire 32MB of memory which includes the memory pointed by the mtd5 through mtd8 partitions.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

45

Installing the Basic Blade Services Software

Devices mtd10 and mtd11 points to 1GB memory in the first 2G NAND flash devices. These are typically used as the root file system devices (selected by the root= cmdline parameter). In U-Boot, the MTD device specifies the root file system and it is passed to Linux via the mtdroot U-Boot environment variable. To use mtd10 (user-flash1) as the root file system, set mtdroot to "/dev/mtdblock10". To use mtd11 (user-flash2) as the root file system, set mtdroot to /dev/mtdblock11. Device mtd12 points to the entire 2G memory in the remaining NAND flash device. This is used as the /tftpboot file system. The NOR Flash devices are identified in U-Boot as Primary (#0) and Secondary (#1). The BOOT_SELECT signal determines the active bank to boot after every reset. From U-Boot and Linux, the access to the NOR flash device memory is mapped to the devices based on the active bank.

2.6.2

NOR Flash Bank Mapping in U-Boot


The NOR flash bank devices are individually mapped in U-Boot at addresses 0xfe000000 and 0xfc000000. The active bank is mapped to the address range of 0xfe000000-0xffffffff. The inactive bank is mapped to the address range of 0xfc000000-0xfdffffff. BOOT_SELECT signal determines the active bank to set the signal or to change it through the IPMC/user. For example: If Bank #0 is active, then 0xfe020000 points to the kernel image in Bank #0 and 0xfc020000 points to the kernel image in Bank #1 (the inactive bank). If Bank #1 is active, then 0xfe020000 points to the kernel image in Bank #1 and 0xfc020000 points to the kernel image in Bank #0 (the inactive bank).

46

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

Similarly the NOR flash devices mapping is done for all remaining partitions. (Refer Table 2-2 on page 48 for more information). The remapping will not affect the memory in 2G NAND flash devices (user-flash1, user-flash2 or tftpboot partitions).

2.6.3

NOR Flash Bank Mapping in Linux


The NOR flash devices are mapped with Linux devices from mtd0 through mtd9. The active bank is mapped to mtd4. The individual partitions inside the device are mapped to Linux devices mtd0, mtd1, mtd2 and mtd3. These devices will always points to the active bank. The inactive bank is mapped to mtd9. The individual partitions inside the device are mapped to Linux devices mtd5, mtd6, mtd7 and mtd8. These devices will always points to the inactive bank. For example: If Bank #0 is active, mtd1 (kernel-boot-flash1) points to the kernel image in Bank #0 and mtd6 (kernel-boot-flash2) points to the kernel image in Bank #1. If Bank #1 is active, mtd1 (kernel-boot-flash1) points to the kernel image in Bank #1 and mtd6 (kernel-boot-flash2) points to the kernel image in Bank #0. The remapping will not affect the memory in the 2G NAND flash devices (i.e., user-flash1, user-flash2 or tftpboot partitions). Device mtd10 will always points to user-flash1, mtd11 will always points to user-flash2 and mtd12 will always points to tftpboot depends on the active boot bank.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

47

Installing the Basic Blade Services Software

2.6.4

Mapping Table
Following table lists the mapping between U-Boot address and Linux devices with 32MB flash bank based on active bank. Table 2-2 Mapping Table
Active Bank U-Boot Address 0xfe000000 0xfe020000 0xfe520000 0xfff80000 0xfe000000 0 0xfc000000 0xfc020000 0xfc520000 0xfdf80000 0xfc000000 0xfe000000 0xfe020000 0xfe520000 0xfff80000 0xfe000000 1 0xfc000000 0xfc020000 0xfc520000 0xfdf80000 0xfc000000 Linux Device Name mtd0 mtd1 mtd2 mtd3 mtd4 mtd5 mtd6 mtd7 mtd8 mtd9 mtd0 mtd1 mtd2 mtd3 mtd4 mtd5 mtd6 mtd7 mtd8 mtd9 Description environment-boot-flash1 kernel-boot-flash1 empty-boot-flash1 uboot-boot-flash1 boot-flash1 environment-boot-flash2 kernel-boot-flash2 empty-boot-flash2 uboot-boot-flash2 boot-flash2 environment-boot-flash1 kernel-boot-flash1 empty-boot-flash1 uboot-boot-flash1 boot-flash1 environment-boot-flash2 kernel-boot-flash2 empty-boot-flash2 uboot-boot-flash2 boot-flash2 0 1 1 0 Maps To Bank

48

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

2.6.5

Installing the Kernel and Operating System in Flash


To select the Linux device during the installation, you should ensure which bank is active currently. To know the active bank, restart the device to display the Boot flash selection information as shown below: Board: ATCA-F120 Reset Cause: IPMC PCI1: unused PCI2: 32 bit, 66 MHz, sync FPGA version: 16 IPMC version: 1.4.130 CPU#2 Workaround enabled Boot flash selection: Primary (#0) You can also determine the active bank by typing print bootbank command at the UBoot console prompt. Although it is not necessary, it is recommended to install the kernel and operating system when booted from the Primary boot bank (Bank #0). After the initial installation, install the backup kernel image in backup boot bank using FCU without switching to Bank#1. The following suggestion assumes Bank #0 is the active boot bank and Bank #1 is the backup boot bank. It is not necessary to boot from the Secondary boot bank (Bank #1) to install the kernel image in Bank #1.

A typical pairing is done between the kernel and the root file system to use mtd1 for the kernel and mtd10 for the root file system.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

49

Installing the Basic Blade Services Software

During the installation process, enter "1" to select the mtd1 partition when queried for the "MTD partition number to install the kernel" and enter "10' to select the mtd10 partition when queried for the "MTD partition number to install the filesystem". If booted from Bank #0, this will install the kernel in Bank #0. To use mtd10 as root file system, enter root=/dev/mtdblock10 in Linux command line. This is the default value and set via "mtdroot" U-Boot environment variable. If Bank #1 is the active boot bank, mtd1 will point to the Bank #1 and mtd6 will point to Bank #0.

2.6.6

Upgrading the Backup Boot Bank


If required, install the backup image in the inactive bank (Bank #1) using BBS utility FCU. BBS utility FCU will always install the kernel image in inactive bank and also it avoids repetition. FCU is also used to upgrade the backup U-Boot bank mtd8. The U-Boot environment variables may change during the U-Boot upgrade. This also requires a boot bank switch and reset to update the U-Boot environment variables in Bank #1. After customizing the U-Boot variables in Bank #1, do switch and reset to restore the Bank #0 as active bank. It is assumed that the UBoot environment variable customization for Bank #0 is already done. Before invoking FCU at the time of installing kernel or updating U-Boot, you should ensure that active bank is Bank#0 and for backup images, Bank#1 is active.

2.6.7

Installing the Kernel in Backup Boot Bank


You can also install the kernel in backup boot bank by repeating the installation process without switching to boot Bank#1. This can be done only for installing the kernel and not for upgrading U-Boot.

50

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

During installation process, enter "6" to select the mtd6 partition to install the kernel. The kernel image will be installed in the Bank#1 and it will be loaded when the IPMC detects any problem in the bank switch. If required, install a second root file system image in a separate partition. Enter "11" to select the mtd11 partition during the installation process. To use mdt11 as the root file system, enter root=/dev/mtdblock11 in Linux console. Also, it can be set via U-Boot environment variable "mtdroot". The backup kernel installation does not require installing a root file system in mtd11 to boot from Bank#1.

If second root file system is not installed and in case of installing the kernel in the backup boot bank without FCU, enter "10" to select mtd10 partition as the root file system. But any customization to the root file system is made after the original installation will be lost. Boot bank switch will not affect the root file system partitions (mtd10 and mtd11) and the tftpboot partition (mtd12). Changes to BOOT_SELECT will not remap the NAND flash devices (by IPMC or the user). This uses the same root file system even after the boot bank is switched and the backup kernel is employed. If the secondary root file system is required, change the U-Boot environment variable "mtdroot" to point to the secondary root file system device.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

51

Installing the Basic Blade Services Software

2.7
2.7.1

Initrd and Flashboot Installation Procedure


Configuring ATCA-F120 for RamDisk Installation (initrd)
Configure the ATCA-F120 for RamDisk Installation
Follow these steps to configure the ATCA-F120 to network boot the kernel and to install the kernel, root file system, and BBS RPMs on the boot flash:

1. Power-up or reboot the blade. 2. At the console, press any key when you see the following message followed by a number counting down on the screen: Hit any key to stop autoboot: 10..9..8.. 3. Check for the correct environment variables (serverip, rootpath, ipaddr, gatewayip, netmask, bootfile) by typing: printenv <variable> 4. If necessary, update the appropriate environment variables. For example: setenv serverip <your TFTP servers IP address> setenv ipaddr <your blades IP address> setenv gatewayip <your network gateways IP address> setenv netmask <your networks netmask> setenv bootfile <kernel image on TFTP server> setenv ramdiskfile <initrd image on TFTP server> saveenv Using the TFTP configuration example shown above, set the bootfile and ramdiskfile environment variables: setenv bootfile atca-f120/kernel
setenv ramdiskfile atca-f120/atca-f120-initrd.gz.uboot

52

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

saveenv
Do not add "/tftpboot/" to the bootfile or ramdiskfile environment variables.

5. Check whether the rambootargs script is setup as per your requirement: print rambootargs rambootargs=setenv bootargs root=/dev/ram rw ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev :off console=$consoledev,$baudrate $drvargs mem=$mem $othbootargs; 6. To boot the blade, enter: run ramboot

2.7.2

Installing BBS on NAND Flash


The linuxrc script executes automatically after the system comes up. It guides you through the flashboot installation process.

Installing BBS on NAND Flash


Follow the steps for installing the BBS on NAND Flash:

1. The installation script checks for the necessary commands in the system as shown below: **************************
** Installation Ramdisk ** ************************** Checking for necessary commands... mount...............[ umount...............[ tar...............[ gzip...............[ exists exists exists exists ] ] ] ]
53

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

mkdir...............[ rmdir...............[ rm...............[ cp...............[ mv...............[ date...............[ chmod...............[ chown...............[ grep...............[ stty...............[ ping...............[ ifconfig...............[ reboot...............[ hwclock...............[ cut...............[ tftp...............[ awk...............[ seq...............[ sha1sum...............[ tr...............[ chroot...............[ flash_eraseall...............[ flash_unlock...............[ flashcp...............[

exists exists exists exists exists exists exists exists exists exists exists exists exists exists exists exists exists exists exists exists exists exists exists exists

] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ]

Necessary commands found, safe to continue.... 2. Start the installation by answering y to the query: -----Do you wish to begin the installation? [y/n] y -----There is no default value for this query. Choosing y will begin the installation procedure. Choosing n will abort the installation. After selecting y, the following message will appear: -----Creating /mnt/tmp.dl (444028k of 516644k) on shared memory...

------

54

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

3. Choose Static or Dynamic IP configuration. While using Dynamic Host Configuration Protocol (DHCP), answer 'n' to the following query ('n' is default): You may choose to alter the default IP management scheme of
DHCP here by answering 'yes' to the next question.

Do you wish to use static IP management?

[y/N] n

DHCP server should be properly configured to provide the IP address for ATCA-F120 TFTP server. TFTP server loads the installation files if DHCP and TFTP server are different. Refer to server option dhcpd.conf in the DHCP server.

For Static IP configuration, you need to answer for the following queries: Please enter the following information accurately. Please enter the IP address [xxx.xxx.xxx.xxx] Please enter the netmask [xxx.xxx.xxx.xxx] Please enter the gateway [xxx.xxx.xxx.xxx] Provide a Domain Name Server to use [xxx.xxx.xxx.xxx] Do you wish to enter another DNS address? [y/N] n Provide a domain name [domain.company.com] Which TFTP server do you wish to use? [xxx.xxx.xxx.xxx] 4. Select the TFTP server installation directory as shown: Note: Just enter the directory name without leading or trailing slashes. What is the installation files directory? [] atca-f120 5. Downloading installation files. The following screen appears during file download process: Downloading 'files.sha1sum' from 'atca-f120'....Done.
Downloading 'kernel from 'atca-f120'....Done. Downloading 'rootfs.tar.gz from 'atca-f120'....Done. Downloading 'modules.tar.gz from 'atca-f120'....Done. Downloading 'f120-wr-pne2.0-files.tar.gz from 'atcaf120'....Done. Downloading 'amc7211.tar.gz from 'atca-f120'....Done.
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 55

Installing the Basic Blade Services Software

Downloading 'atca7221.tar.gz from 'atca-f120'....Done. Downloading 'bbs-artmf120-cop-mmc-1.04.138.rpm from 'atcaf120'....Done. Downloading 'bbs-artmf120-opt-mmc-1.04.138.rpm from 'atcaf120'....Done. Downloading 'bbs-atcaf120-cpu-1.3.4_03.rpm from 'atcaf120'....Done. Downloading 'bbs-atcaf120-fpga-16.rpm from 'atca-f120'....Done. Downloading 'bbs-atcaf120-ipmc-1.04.138.rpm from 'atcaf120'....Done. Downloading 'bbs-atcaf120-kernel2.6.21.7_hrt1_cfs_v22_grsec.rpm from 'atca-f120'....Done. Downloading 'bbs-fuf-atcaf120-1.3.7-13-windriver.rpm from 'atca-f120'....Done. Downloading 'bbs-hpib-1.16.12-1.ppc_e500v2-wrspne2.0-linux.rpm from 'atca-f120'....Done. Downloading 'bbs-hpib-clientsrc-1.16.12-1.ppc_e500v2-wrspne2.0linux.rpm from 'atca-f120'....Done. Downloading 'bbs-hpib-daemon-1.16.12-1.ppc_e500v2-wrspne2.0linux.rpm from 'atca-f120'....Done. Downloading 'bbs-hpib-devel-1.16.12-1.ppc_e500v2-wrspne2.0linux.rpm from 'atca-f120'....Done. Downloading 'bbs-hpmagentcmd-atcaf120-1.3.9-15-windriver.rpm from 'atca-f120'....Done. Downloading 'bbs-lhc-4.1.4-9.windriver.ppc.rpm from 'atcaf120'....Done. Downloading 'srstackware-config-f120-2.1.2-4.ppc.rpm from 'atcaf120'....Done. Downloading 'srstackware-demo-config-f120-2.1.2-4.ppc.rpm from 'atcaf120'....Done. Downloading 'srstackware-f120-2.1.2-4.ppc.rpm from 'atcaf120'....Done. Downloading 'srstackware-enhanced-f120-2.1.2-4.ppc.rpm from 'atcaf120'....Done.

Downloading 'bbs-clkagentcmd-atcaf120-1.0.0-1-pne20.rpm from 'atca-f120'....Done.

56

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

The linuxrc script determines which files to download and install based on the contents of the files.sha1sum file. Changing the contents of this file will change the installation process and may lead to installation failure.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

57

Installing the Basic Blade Services Software

6. Set the time. Set the system time correctly before installing the downloaded files. If you wish to use NTP to set the system time, answer 'y' to the query. If the DHCP server assigned NTP servers, it displays as shown below: Current date/clock :Tue Nov 4 16:29:16 UTC 2008

DHCP Server assigned NTP server(s) xxx.xxx.xxx.xxx Do you wish to use NTP to set the current time? [Y/n] y Using address xxx.xxx.xxx.xxx for NTP server. If the DHCP server did not provide NTP servers, an IP address is requested: Current date/clock :Tue Nov 4 16:29:16 UTC 2008 Do you wish to use NTP to set the current time? [Y/n] y Please enter the NTP server address [xxx.xxx.xxx.xxx] If you do not have an NTP server, or wish to set the time manually, answer 'n' to the query to use NTP to set the current time: Current date/clock :Tue Nov 4 16:29:16 UTC 2008 Do you wish to use NTP to set the current time? [Y/n] n Do you wish to set the date manually? [Y/n] y Enter date in 'MM/DD/YYYY' format. [] Note: Time has to be set in UTC/GMT format Enter time in 'HH:MM' and 24-hour format. [] 7. Select the MTD partition number to install the kernel and root file system. Here, you are requested to specify the MTD partitions to be used for installing the kernel image and root file system: Following MTD partitions available:
dev: mtd0: mtd1: mtd2: mtd3:
58

size 00020000 00500000 01a60000 00080000

erasesize name 00020000 "enviroment-boot-flash1" 00020000 "kernel-boot-flash1" 00020000 "empty-boot-flash1" 00020000 "uboot-boot-flash1"

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

mtd4: 02000000 00020000 "boot-flash1" mtd5: 00020000 00020000 "enviroment-boot-flash2" mtd6: 00500000 00020000 "kernel-boot-flash2" mtd7: 01a60000 00020000 "empty-boot-flash2" mtd8: 00080000 00020000 "uboot-boot-flash2" mtd9: 02000000 00020000 "boot-flash2" mtd10: 40000000 00020000 "user-flash1" mtd11: 40000000 00020000 "user-flash2" mtd12: 80000000 00020000 "tftpboot" MTD partiton number to install the kernel? []1

Verifying mtd device: mtd1...Done. MTD partiton number to install the filesystem? [] 10
Verifying mtd device: mtd10...Done.

To install the kernel in the active boot bank, select MTD partition number 1 (kernel-boot-flash1). To install the kernel in the backup boot bank, select MTD partition number 6 (kernel-boot-flash2). Install the root file system on either mtd10 or mtd11. If you choose to use mtd11 for the root file system, you should select "11", and you need to change the U-Boot environment variable "mtdroot" to "/dev/mtdblock11". 8. Select the file system type. Recommended filesystem types for NAND flash are: jffs2 (default), yaffs2
Note: When using yaffs2 you have to change default filesystem type that is used in the kernel command line (bootargs) used by u-boot. (change rootfstype=jffs2 to rootfstype=yaffs2)

filesystem type? [] yaffs2

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

59

Installing the Basic Blade Services Software

Select yaffs2 file system and ensure that the kernel command line specified in UBoot reflects this choice.
Emerson recommends to use yaffs2 file system. The yaffs2 file system is faster than jffs2.

Current versions of U-Boot use the "fstype" environment variable to specify the file system type (jffs2 or yaffs2) to the flashbootargs variable. Update "fstype" to match the file system type selected. Older versions of U-Boot does not have "fstype" environment variable. So you need to update the U-Boot environment variable "flashbootargs" to reflect file system types. 9. Answer y to erase the MTD partitions. Do you wish to erase/format the rootfs MTD partition (mtd11)? [Y/n] y Do you wish to erase/format the tftpboot MTD partition (mtd12)? [y/N] n The linuxrc script will unlock, erase and format the MTD partitions selected when answering 'y' to the first question (erase/format the rootfs).

Erasing and formatting the device will destroy all data on that device. If you wish to preserve any data on the device (e.g., on the /tftpboot partition), answer 'n". Beware that the installation process will still overwrite the duplicate files.

Preparing mtd device: mtd11...Unlocking...Erasing...Done.


Formatting mtd device: mtdblock11 with yaffs2...Done.

Mounting mtd device: mtdblock12 with yaffs2...Done.


BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

60

Installing the Basic Blade Services Software

10.Check SHA1 checksums and installation. While downloading the files, their SHA1 checksums are calculated and checked against the checksums in the files.sha1sum file. File installation will be done based on the checksums match. i.e, the kernel image is installed in the kernel MTD partition, all tar files are uncompressed and all RPMs are installed using the Red Hat Package Manager. The console displays the following installation progress: ------Writing files to disk/flash ------Checking SHA1 Checksum for kernel...Good Installing kernel... to /dev/mtd1 Unlocking... Erasing... Copying...Done Checking SHA1 Checksum for rootfs.tar.gz...Good Uncompressing using TAR...Done Checking SHA1 Checksum for modules.tar.gz...Good Uncompressing using TAR...Done Checking SHA1 Checksum for f120-wr-pne2.0-files.tar.gz...Good Uncompressing using TAR...Done Checking SHA1 Checksum for amc7211.tar.gz...Good Uncompressing using TAR...Done Checking SHA1 Checksum for atca7221.tar.gz...Good Uncompressing using TAR...Done Checking SHA1 Checksum for bbs-artmf120-cop-mmc1.04.138.rpm...Good Preparing rpm wrapper script...Done Installing using RPM...Done. Checking SHA1 Checksum for bbs-artmf120-opt-mmc1.04.138.rpm...Good Installing using RPM...Done. Checking SHA1 Checksum for bbs-atcaf120-cpu-1.3.4_03.rpm...Good Installing using RPM...Done. Checking SHA1 Checksum for bbs-atcaf120-fpga-16.rpm...Good Installing using RPM...Done. Checking SHA1 Checksum for bbs-atcaf120-ipmc-1.04.138.rpm...Good Installing using RPM...Done. Checking SHA1 Checksum for bbs-atcaf120-kernel2.6.21.7_hrt1_cfs_v22_grsec.rpm...Good Installing using RPM...Done.
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 61

Installing the Basic Blade Services Software

Checking SHA1 Checksum for bbs-fuf-atcaf120-1.3.7-13windriver.rpm...Good Installing using RPM...Done. Checking SHA1 Checksum for bbs-hpib-1.16.12-1.ppc_e500v2wrspne2.0-linux.rpm...Good Installing using RPM...Done. Checking SHA1 Checksum for bbs-hpib-clientsrc-1.16.121.ppc_e500v2-wrspne2.0-linux.rpm...Good Installing using RPM...Done. Checking SHA1 Checksum for bbs-hpib-daemon-1.16.12-1.ppc_e500v2wrspne2.0-linux.rpm...Good Installing using RPM...Executing bbs-hpib-daemon post-install script: Stopping HPI-B daemon. HPI-B daemon runs on ATCA-M100 already - exiting. Done. Checking SHA1 Checksum for bbs-hpib-devel-1.16.12-1.ppc_e500v2wrspne2.0-linux.rpm...Good Installing using RPM...Done. Checking SHA1 Checksum for bbs-hpmagentcmd-atcaf120-1.3.9-15windriver.rpm...Good Installing using RPM...Done. Checking SHA1 Checksum for bbs-lhc-4.1.49.windriver.ppc.rpm...Good Installing using RPM...Done. Checking SHA1 Checksum for srstackware-config-f120-2.1.24.ppc.rpm...Good Installing using RPM...Done. Checking SHA1 Checksum for srstackware-demo-config-f120-2.1.24.ppc.rpm...Good Installing using RPM...Done. Checking SHA1 Checksum for srstackware-f120-2.1.24.ppc.rpm...Good Installing using RPM...Done. Checking SHA1 Checksum for srstackware-enhanced-f120-2.1.24.ppc.rpm...Good Installing using RPM...Done. Checking SHA1 Checksum for bbs-clkagentcmd-atcaf120-1.0.0-1pne20.rpm...Good
62 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

Installing using RPM...Done. Disabling rpm wrapper script...Done.

Configuring run level...Done. 11.Final configuration. Answer the following questions to set the host name and root password for this system.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

63

Installing the Basic Blade Services Software

------Beginning final configuration ------Choose a hostname for this machine [] atca-f120

Set Root password New UNIX password: <new root password> Retype new UNIX password: <new root password again> passwd: password updated successfully Root password set. After finishing the installation and final configuration, the blade will reboot automatically. This may take few minutes depending on the data in NAND Flash device. The console displays the following rebooting progress: Cleaning up root filesystem...Done.
Unmounting local filesystems...Done. Rebooting in 5 seconds... (Ctrl-C to break into shell)

Restarting system.

2.7.3

Configuring ATCA-F120 to Boot from NAND Flash (flashboot)


Configure the ATCA-F120 to Boot from NAND Flash
Follow these steps to configure the U-Boot to boot the Linux kernel stored in NAND flash and to mount the root file system. This procedure uses the U-Boot script flashboot.

1. Power-up or reboot the blade. 2. At the console, press any key when you see the following message followed by a number counting down on the screen: Hit any key to stop autoboot: 10..9..8.. 3. Check for the correct environment variables (serverip, rootpath, ipaddr, gatewayip, netmask, bootfile) by typing: printenv <variable>
64 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Installing the Basic Blade Services Software

4. If necessary, update the appropriate environment variables. For example: setenv serverip <your TFTP servers IP address>
setenv setenv setenv setenv setenv ipaddr <your blades IP address> gatewayip <your network gateways IP address> netmask <your networks netmask> bootfile <kernel image on TFTP server> ramdiskfile <initrd image on TFTP server>

saveenv 5. Set the correct mtdblock for the root filesystem: setenv mtdroot /dev/mtdblock10 saveenv or setenv mtdroot /dev/mtdblock11 saveenv Refer to Installing BBS on NAND Flash on page 53 for more information. The mtdblock should match the mtd partition chosen for the root file system. 6. Check whether the flashbootargs environment variable is properly configured. All latest versions of U-Boot has "fstype" environment variable to specify the file system type jffs2 or yaffs2. If you have selected the yaffs2 file system type in Installing BBS on NAND Flash, you need to update the U-Boot environment variable "fstype" to reflect the file system type. print flashbootargs flashbootargs=setenv bootargs root=$mtdroot rw rootfstype=$fstype ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netde v:off console=$consoledev,$baudrate $drvargs mem=$mem $othbootargs; print fstype fstype=jffs2 Also change the "fstype" environment variable to yaffs2 as shown: setenv fstype yaffs2 saveenv

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

65

Installing the Basic Blade Services Software

Older versions of U-Boot does not have "fstype" environment variable. So you need to update the U-Boot environment variable "flashbootargs" to reflect file system types. print flashbootargs flashbootargs=setenv bootargs root=$mtdroot rw rootfstype=jffs2 ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netde v:off console=$consoledev,$baudrate $drvargs mem=$mem $othbootargs; If you have selected the yaffs2 file system in Installing BBS on NAND Flash, change the rootfstype argument in the "flashbootargs" environment variable to yaffs2. setenv flashbootargs setenv bootargs root=$mtdroot rw rootfstype=yaffs2 ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netde v:off console=$consoledev,$baudrate $drvargs mem=$mem $othbootargs; saveenv 7. Configure the blade to auto-boot from NAND Flash: setenv bootcmd run flashboot 8. Save your changes: saveenv 9. To boot the blade, enter: run bootcmd

66

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Chapter 3

Firmware Upgrade Facility

3.1

Overview
The Firmware Upgrade Facility (FUF) provides a uniform way to upgrade firmware on Emerson hub blades, node blades, and AMC modules. It consists of a Firmware Upgrade Command-line Utility (FCU), flash device drivers, and specially prepared firmware recovery image files.

3.2

Firmware Recovery Image Files


FCU supports specially prepared firmware recovery image (FRI) files as well as firmware images in the HPM.1 format. HPM.1 is a PICMG standard to upgrade IPMCs. By default, the image files for the current hardware configurations are loaded as part of the BBS software in /opt/motorola/rom when the blade-specific firmware support packages are installed. The following image files are currently supported:
Filename atca-f120-kernel.fri atca-f120-cpu.fri artm-f120-opt-<version>.hpm artm-f120-cop-<version>.hpm atca-f120-<version>.hpm Description Kernel image for ATCA-F120 U-boot firmware image for ATCA-F120 MMC firmware image for RTM-ATCA-F120-OPT MMC firmware image for RTM-ATCA-F120C IPMC firmware image for ATCA-F120

3.3

Backup Concept
Firmware for the IPMC on the Emerson ATCA-F120 switch is stored in an on-chip flash which has one active and one backup section. When upgrading the IPMC firmware, only the firmware in the backup section is updated. After the upgrade, the new firmware is checked and if it is functional and valid, the IPMC switches to the new, updated firmware. This happens without causing a payload reset. This upgrade mechanism prevents both sections from having bad IPMC firmware and allows for the next firmware upgrade to be done easily.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

67

Firmware Upgrade Facility

When upgrading the U-Boot firmware or Linux kernel, FCU only writes into the currently standby bank. After the upgrade, the stand-by bank must be marked for next use, this means it will be executed after the next reboot.

3.4

fcuFirmware Upgrade Command-Line Utility


Description The Firmware Upgrade Command-line Utility (FCU) allows you to: Query the current versions of firmware installed on a blade and determine which firmware devices are active. Verify that a specified upgrade image is sound and compatible with the current hardware. Upgrade a firmware image. Mark a device to be used as the boot source on the next reset. Switch between the active and stand-by IPMC firmware banks without causing a payload reset. Show the version of a firmware image file and compare the version of a firmware image file with the version of the currently installed firmware. By default, the FCU binary executable is installed in /opt/motorola/bin. This directory has been added to the PATH environment variable. The FCU verify and upgrade operations require specially prepared FRI files or HPM files (see Firmware Recovery Image Files on page 67). Synopsis fcu --help [-t<slave address>] fcu --version fcu -q [-d <device-id>] [-t<slave address>] fcu -v -f <filename> [-t<slave address>] fcu -u -f <filename> [-t<slave address>] fcu -a -f <filename>

68

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Firmware Upgrade Facility

fcu -m -b <bank-letter> -d <device-id> [-t<slave address>] fcu -s -f <filename> fcu -c -f <filename> fcu --activate -b <bank-letter> -d <device-id> Parameters -a --full-upgrade This option is a shortcut for performing the verify, upgrade, and mark operations. The file option -f is required. This option should not be combined with other operations. -r --activate This command is available for IPMC devices and images which conform to the HPM.1 standard. HPM.1 compliant IPMCs store a redundant set of firmware images which may have the states operational, rollback or deferred. Using the --activate option, you can set the state of the addressed firmware bank to "operational". Unlike the --mark option, the --activate command does not affect the payload operation, this means you can set a previously "rollback" firmware bank to "operational" without rebooting or resetting the payload. The target IPMC is immediately functional after switching to the new firmware. You can obtain the current states of the firmware banks by using the -q command. The state appears as part of the bank name, for example: "B - Rollback". -b <bank-letter> --bank=<bank-letter> Specifies a flash bank (A or B, for example), where <bank-letter> is the letter designating a specific bank. This option can be used with the mark or activate operation. Use the query option -q to list available banks. -c --compare

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

69

Firmware Upgrade Facility

Compares the image contained in the specified device with a specified file in the file system. This may be useful after an image upgrade to verify that the device actually contains a new and different image. -d <device-id> --device=<device-id> Specifies a target firmware device, where <device-id> is the name of the device. This option is used with the mark or query operations. Device ID values vary by hardware. You can display supported devices on a given blade by using fcu --help. Currently supported values are listed in the following table.
Device ID atca-f120-cpu atca-f120-kernel atca-f120-hpm.1-ipmc artm-f120-cop-hpm.1-ipmc Description U-Boot firmware device for ATCA-F120 Kernel device of ATCA-F120 IPMC firmware device MMC firmware device of RTM (RTM-F120-COP)

-f <filename> --file=<filename> Specifies the FRI file, where <filename> is the complete path and filename of the image file. This option is used with the verify and upgrade operations. --force This option allows the installation of images with non-matching part-number and part-revision FRU data fields. This option should be used with extreme caution only because installing an incompatible image on a device may render it inoperable. --help Displays a brief message describing command usage. It also displays a list of the devices supported on the blade.This option is exclusive and should not be used with other options. -m --mark

70

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Firmware Upgrade Facility

Tells FCU to set the boot select so that on the next boot the specified firmware bank will be active. When mark is combined with the upgrade operation, there is no need to specify a bank; the bank just upgraded will be marked. Otherwise, you must specify a bank and a device. Note that on the ATCA-F120 the firmware image and the kernel image are coupled, this means when you mark a U-Boot image for the next reboot, the corresponding Linux kernel image is automatically marked as well. Refer also to the ATCA-F120 Installation and Use guide for details about the flash memory layout. -q --query Tells FCU to return firmware information for a specific device (if used with -d) or information about all firmware devices. The query operation is exclusive and is not intended to be combined with other operations. Some firmware images are stored in redundant flash devices which can be marked for use after the next reboot (using the -m command). For these firmware images, the -q command displays whether image is marked or not. For HMP.1 compliant firmware images, the -q command displays the state of the image, i.e. operational, rollback or deferred. -s --show Shows detailed information about a specified file. The information shown includes for example image type, version, manufacturer name etc. This command may be useful before a firmware upgrade to determine the version of a new image file. -t --target This option is needed to specify the IPMC address if the operation is to be done on a remote IPMC. If you do not specify this option, the software tries to access the local IPMC. The -t option provides a possibility to perform the firmware upgrade on a different blade. -u --upgrade Tells FCU to upgrade the currently inactive bank of the device specified by the target FRI file. The file option -f is required. The upgrade operation may be combined with the verify and mark operations.
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 71

Firmware Upgrade Facility

-v --verify Tells FCU to verify the image file specified by the required -f option. This operation verifies that the specified file is sound and compatible with the current hardware. The verify operation may be combined with the upgrade and mark operations. --version Displays version information for the utility. This option is exclusive and should not be used with other options. Usage Some FCU options can be combined. Some options are exclusive. The following list describes the valid option combinations: --compare --file=<filename> --full-upgrade --file=<filename> --full-upgrade --file=<filename> --target=xxxxxx --help --mark --bank=<bank-letter> --device=<device-id> --query --query --device=<device-id> --show --file=<filename> --upgrade --file=<filename> --upgrade --mark --file=<filename> --upgrade --file=<filename> --target=xxxxxx --verify --file=<filename> --verify --upgrade --file=<filename> --activate --bank=<bankletter> --device=<deviceID> --verify --upgrade --mark --file=<filename> --version
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

72

Firmware Upgrade Facility

Multi character options may be abbreviated so long as they are unique. For example, --full is equivalent to --full-upgrade. Typing --ver, however, will not work since it matches both --verify and --version. Single-character options may be combined without repeating the hyphen, as in these examples: fcu vf /opt/motorola/rom/<filename> fcu q d <device-id> fcu q d-t 0x90 <device-id> fcu mb a d <device-id> Options are not case-sensitive. For example, --help is equivalent to --HeLp. However, option arguments, such as filename and device ID, are case-sensitive. When upgrading firmware, it is strongly recommended that you upgrade only one device at a time. While FCU performs many checks during upgrade to ensure success, if something goes wrong and both firmware banks become corrupted, the blade will be inoperable.

3.5
3.5.1

Upgrading Firmware Image


This section describes recommended procedures for upgrading firmware devices.

FPGA Firmware Update


Updating the FPGA Firmware
Follow these steps for updating the FPGA firmware:

1. To retrieve the current FPGA version on ATCA-F120, you must reset the blade and note the "FPGA version" displayed in U-Boot. U-Boot 1.3.4.3 (May 23 2009 - 11:30:13), Build: 3
CPU: 8548E, Version: 2.0, (0x80390020) Core: E500, Version: 2.0, (0x80210020) Clock Configuration: CPU:1334 MHz, CCB: 534 MHz,
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 73

Firmware Upgrade Facility

DDR: 267 MHz (534 MT/s data rate), LBC: D-cache 32 kB enabled I-cache 32 kB enabled Board: ATCA-F120 Reset Cause: CPU_HRESET PCI1: unused PCI2: 32 bit, 66 MHz, sync FPGA version: 16 IPMC version: 1.4.138 CPU#2 Workaround enabled L1:

33 MHz

Boot flash selection: Primary (#0) 2. Upgrade the FPGA when the FPGA version in the release is newer than the current version installed. This must be done from Linux. # /usr/sbin/upd_fpga /opt/motorola/rom/fpga_f120_<version>.xsvf 3. Extract and reset the blade for the new FPGA image to take effect.

3.5.2

Upgrading the Kernel Image on ATCA-F120

This section is applicable only if the kernel image is booted through flash device. If the kernel is booted via network (as a part of NFS boot), skip this section and proceed to Upgrading CPU Firmware on page 75.

FCU is used to upgrade the kernel image in the flash devices. By default, FCU will not allow the current active bank to upgrade.

74

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Firmware Upgrade Facility

Upgrading the Kernel Image on ATCA-F120


If the initrd/flashboot installation is performed correctly, the current (active) boot bank should have proper kernel installed. Follow these steps to upgrade the kernel:

1. Query the current kernel images on the blade as shown: # fcu -qd atca-f120-kernel 2. Show the version of the new kernel image. # fcu -sf /opt/motorola/rom/atca-f120-kernel.fri 3. If the kernel image version in the release is newer than the backup version installed, upgrade the backup kernel image. # fcu -vuf /opt/motorola/rom/atca-f120-kernel.fri 4. If you are not upgrading the active bank, skip to Upgrading CPU Firmware on page 75. Perform boot switch in case of not upgrading the active bank. Mark the backup bank for the next boot usage.
To switch banks, you must specify the CPU device atca-f120-cpu.

# fcu -mb {A|B} -d atca-f120-cpu 5. Reboot the blade for the new kernel to take effect: # reboot -f 6. Repeat steps 1 through 5 to upgrade the other kernel bank and restore the original boot bank as the active boot bank.

3.5.3

Upgrading CPU Firmware


FCU is used to upgrade the CPU firmware. By default, FCU will not allow the current (active) bank to upgrade. Invoking FCU will upgrade the backup boot bank.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

75

Firmware Upgrade Facility

3.5.3.1

U-Boot Firmware Upgrade


Upgrading the U-Boot Firmware on the ATCA-F120
Follow these steps to upgrade U-Boot:

1. Query the current U-Boot firmware on the ATCA-F120: # fcu -qd atca-f120-cpu Make note of the bank Marked for next use (active bank). The backup bank will not be marked for next use.
Since the Marked for next use status is not reliable, the active bank should be checked using the U-Boot environment variable bootbank. Bank A corresponds to boot bank 0 and Bank B corresponds to boot bank 1.

2. Show the version of the new U-Boot image: # fcu -sf /opt/motorola/rom/atca-f120-cpu.fri 3. If the U-Boot image is newer than the backup version, upgrade the U-Boot firmware: # fcu -vuf /opt/motorola/rom/atca-f120-cpu.fri In case of upgrading the both banks, take a note of the bank which is upgraded ('A' or 'B'). This value will be used to specify which bank to mark for next use (i.e., next boot) or later. 4. Query the new image to ensure the version information is correct: # fcu qd atca-f120-cpu 5. If you are not upgrading the active bank, skip to Cleaning the U-Boot Environment Variables on page 77. Perform boot switch in case of not upgrading the active bank. Mark the backup bank for the next boot usage. # fcu -mb {A|B} -d atca-f120-cpu

76

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Firmware Upgrade Facility

6. Reboot the blade for the new U-Boot to take effect: # reboot f 7. Repeat steps 1 through 6 to upgrade the other boot bank and restore the original boot bank as the active boot bank.

3.5.3.2

Cleaning the U-Boot Environment Variables


After upgrading U-Boot, it is necessary to clean the U-Boot environment variables and restore them to their default values.

Cleaning the U-Boot Environment Variables


Follow the steps for cleaning the U-Boot environment variables:

1. Power-up or reboot the blade. 2. At the console, press any key when you see the following message followed by a number counting down on the screen: Hit any key to stop autoboot: 10..9..8.. 3. Before cleaning the environment variables, take note of the currently defined UBoot environment variables (serverip, rootpath, ipaddr, gatewayip, netmask, bootfile, etc.) by typing as: printenv <variable>
Note down the baudrate environment variable. The default baud rate for U-Boot is 9600. After cleaning the environment variables and resetting the blade, you need to change your terminal or terminal server to default baud rate.

4. Clean the old environment variables in both active boot bank and the backup boot bank: protect off 1:0; erase fe000000 fe01ffff protect off 2:0; erase fc000000 fc01ffff

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

77

Firmware Upgrade Facility

5. Reset the blade: reset 6. Configure the U-Boot environment variables accordingly.

3.5.4

Upgrading IPMC Firmware


Before upgrading the IPMC firmware on the ATCA-F120 baseboard or the RTMs, please check the IPMC Firmware Release Notes version. In some instances, the IPMC firmware cannot upgrade locally (i.e., using the fcu command). In such case, the IPMC firmware upgrade must be done remotely using hpmcmd -c upgrade command. Please refer to the specific Release Notes for instructions on how and when to upgrade the IPMC firmware remotely.

Upgrading the IPMC firmware locally through remote call may render your baseboard or RTM unusable.

3.5.4.1

Upgrading IPMC Firmware on the ATCA-F120


Upgrading IPMC Firmware on the ATCA-F120 Baseboard
Follow these steps to upgrade the IPMC firmware locally on ATCA-F120 baseboard:

1. Query the current IPMC firmware on the ATCA-F120: # fcu qd atca-f120-hpm.1-ipmc 2. Show the version of the new IPMC image: # fcu -sf /opt/motorola/rom/atca-f120-<version>.hpm 3. If the IPMC image version in the release is newer than the current version installed, upgrade the IPMC firmware: # fcu -vuf /opt/motorola/rom/atca-f120-<version>.hpm 4. Query the new image to ensure that the version information is correct: # fcu -qd atca-f120-hpm.1-ipmc

78

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Firmware Upgrade Facility

The upgrade takes effect immediately without rebooting. If you wish to upgrade the rollback bank, repeat steps 1 through 4.

3.5.4.2

Upgrading the RTM IPMC Firmware


Upgrading the Copper RTM IPMC Firmware
Follow these steps to upgrade the IPMC firmware locally on the Copper RTM:

1. Query the current IPMC firmware on the Copper RTM: # fcu qd artm-f120-cop-hpm.1-ipmc 2. Show the version of the new IPMC image: # fcu -sf /opt/motorola/rom/artm-f120-cop-<version>.hpm 3. If the IPMC image version in the release is newer than the current version installed, upgrade the IPMC firmware: # fcu -vuf /opt/motorola/rom/artm-f120-cop-<version>.hpm 4. Query the new image to ensure that the version information is correct: # fcu -qd atca-f120-cop-hpm.1-ipmc
The upgrade takes effect immediately without rebooting. If you wish to upgrade the rollback bank, repeat steps 1 through 4.

3.5.4.3

Upgrading the Optical RTM IPMC Firmware


Upgrading the Optical RTM IPMC Firmware
Follow these steps to upgrade the IPMC firmware on the Optical RTM:

1. Query the current IPMC firmware on the Optical RTM:


The device name uses -cop- to identify the RTM type (Optical or Copper). The file name uses "-opt-" to identify the Optical RTM image.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

79

Firmware Upgrade Facility

# fcu -qd artm-f120-cop-hpm.1-ipmc 2. Show the version of the new IPMC image: # fcu -sf /opt/motorola/rom/artm-f120-opt-<version>.hpm 3. If the IPMC image version in the release is newer than the current version installed, upgrade the IPMC firmware: # fcu -vuf /opt/motorola/rom/artm-f120-opt-<version>.hpm 4. Query the new image to ensure that the version information is correct: # fcu -qd atca-f120-cop-hpm.1-ipmc
The upgrade takes effect immediately without rebooting. If you wish to upgrade the rollback bank, repeat steps 1 through 4.

80

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Chapter 4

Linux Distribution Description

4.1

Distribution Description
The BBS for the ATCA-F120 is based on Wind River Platform For Network Equipment Linux Edition 1.4, which is a Linux distribution built on Linux 2.6 kernel technology,

4.2

Reliability
This distribution is configured to use the journaling file system jffs2. The majority of errors caused by improper shutdown are fixed automatically during boot.

4.3

Login
A Linux shell can be accessed via the face plate serial port. If you use a serial console or terminal emulator, the serial/RTM port settings are 9600 baud, no parity, eight data bits, and one stop bit. If you use SSH, see Network Services Configuration on page 82 for default IP address assignments. If you want to login as root via SSH, you need to first configure SSH using the console serial port. Set PermitRootLogin in the file /etc/ssh/sshd_config to yes. For this to take effect you must either reboot the blade/module or run the command /etc/init.d/ssh restart. The following table lists available default login accounts.
Login Name root Password root

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

81

Linux Distribution Description

4.4

Network Services Configuration


The following sections describe the default configuration for network services. Network services configuration varies for ATCA-F120 blades depending on whether the blade is inserted into logical slot 1 or logical slot 2. Configuration scripts rely on HPM software to determine slot location (see Chapter 5, Hardware Platform Management, on page 87). If scripts are unable to determine slot location, they default to a slot 1 configuration regardless of the actual slot. This may result in network conflicts.

4.4.1

ATCA-F120 Ethernet Interfaces


The following interfaces are configured at startup.
Interface Description VLAN IP Address

Slot 1 Configuration eth3.21 eth3.22 eth0 eth2.11 eth2.12 Base channel 1 Base channel 2 Face plate Fabric channel 1 Fabric channel 2 21 22 None 11 12 192.168.21.1 192.168.22.1 Configured in U-Boot 192.168.11.1 192.168.12.1

Slot 2 Configuration eth3.21 eth3.22 eth0 eth2.11 eth2.12 Base channel 1 Base channel 2 Face Plate Fabric channel 1 Fabric channel 2 21 22 None 11 12 192.168.21.2 192.168.22.2 Configured in U-Boot 192.168.11.2 192.168.12.2

82

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Linux Distribution Description

The following interfaces remain unconfigured:


Interface eth3 Description Connection to base interface switch. eth3.21, eth3.22, and eth3.24 are associated with tagged VLANs on this interface. BBS does not configure IP addresses on this interface and instead instantiates VLAN devices (eth3.21, for example) on it with the vconfig command. Connection to fabric interface switch. eth2.11 and eth2.12 are associated with tagged VLANs on this interface. BBS does not configure IP addresses on this interface and instead instantiates VLAN devices (eth2.11, for example) on it with the vconfig command. Cross-connection to the other ATCA-F120 Sit is a shortcut for Simple Internet Transition. This device is used to encapsulate IPv6 into an IPv4 tunnel. BBS does not configure this device.

eth2

eth1 sit0

For switch port configuration defaults, including VLAN assignments, see Default Configuration on page 156.

4.4.2

DHCP Server
A DHCP server on the ATCA-F120 starts in run levels 25. The server configuration varies depending on the slot location.
Slot Location Slot 1 Listens On Base channel 1 Address Range 192.168.21.100 to 192.168.21.125

Slot 2

Base channel 2

192.168.22.100 to 192.168.22.125

4.4.3

TFTP Server
The "xinetd" daemon starts running the TFTP server on the ATCA-F120 when it is needed. This server starts in run level 2.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

83

Linux Distribution Description

4.4.4

SSH
A secure shell server starts in run levels 25 and listens on all Ethernet interfaces listed in ATCAF120 Ethernet Interfaces on page 82.

4.5

Long POST
The long POST (Power-On Self test) is an extension to the standard POST which the ATCA-F120 executes after power-up. The standard POST is executed on U-boot level and includes tests on hardware-level. The long POST, however, is executed during the booting of the Linux operating system and includes higher-level tests. This section describes which tests are by default executed during the long POST, how to obtain the results of these tests and how to add your own test routines.

4.5.1

Default Test Routines


The long POST test routines are implemented as Linux scripts which are invoked during the Linux boot phase. The routines which are to be executed need to be defined in the U-Boot variable runLP. Further details are given in Configuring the Long POST Behaviour on page 85. Each test routine displays the test status on the console and writes it to the Linux log module (via logger). Furthermore, each test routine writes status information to the IPMI sensor "System Firmware Progress" (type 0xF0). The used event data values are Emerson-specific. The following table provides details. Table 4-1 Long POST Standard Test Routines - Generated IPMI Data
Action Test routine is started Data Written to System Firmware Progress Sensor Offset 0: 0x02 Offset 1: 0xFD Offset 2: 0x1E Tests routine detects an error. Offset 0: 0x00 Offset 1: 0xFD Offset 2: 0x1E

84

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Linux Distribution Description

For further details about how to interpret the system firmware progress sensor in the ATCAF120 context. refer to the following guide ATCA-F120 Installation and Use->U-Boot chapter . The following table lists the names of the default long POST test routines and describes which tests each routine performs. Table 4-2 Long POST Default Test Routines
Test Routine Name bcmBase bcmFabric ethBase Description Tests all base interface ports (Broadcom BCM56502) by performing a loop back test. Tests all fabric interface ports (Broadcom BCM56800 and BCM56502) by performing a loopback test. Tests network interface between CPU and on-board base interface switch by transmitting/receiving some data . The transmission is verified by comparing counters on the CPUs ethernet interface and the switch device . Tests network interface between CPU and fabric interface switches by transmitting/receiving some data . The transmission is verified by comparing counters on the CPUs ethernet interface and the switch device.

ethFabric

4.5.2

Configuring the Long POST Behaviour


The names of the test scripts which are to be executed have to be defined in the ATCA-F120 UBoot variable runLP as a comma-separated list, for example as follows: bcmBase,bcmFabric,ethBase,ethFabric . The scripts are expected to be located in the following directory: /etc/rd.d/init.d. So in order to add your own scripts, simply add an entry to the U-Boot variable runLP and place the script in /etc/rc.d/init.d. Depending on your system configuration, you may want to design your test scripts to generate console output, write to the log module and store any results in the IPMI System firmware progress sensor as done by the default test scripts. When Linux is booted, the Linux start-up script /etc/init.d/LPmain.sh is executed. It reads and analyses the U-Boot variable runLP and invokes the listed test scripts (if any) in the given order. For more advanced customizations, you may want to modify the /etc/init.d/rd.d/LPmain.sh script.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

85

Linux Distribution Description

86

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Chapter 5

Hardware Platform Management

5.1

Overview
Hardware management in AdvancedTCA systems is based on the Intelligent Platform Management Interface (IPMI) specification. IPMI commands can be complex and cumbersome. To facilitate blade-level management, Emerson provides the Hardware Platform Management (HPM) package that provides a set of commands that are based on IPMI commands but which are easier to use than the IPMI command itself. An HPM command can encapsulate a sequence of IPMI commands, for example upgrade the firmware or read the FRU data. An HPM command can be the unifier for OEM IPMI commands that are different on different blade types, for example reading the CPU boot bank. For a catalogue of supported IPMI commands of the blade refer to the respective IPMI manual. The HPM package consists of HPM daemon called hpmagentd Command line client called hpmcmd Script framework for managing shutdown and reboot events The hpmcmd sends a given HPM command to the hpmagentd and displays the received response on the console. The hpmagentd executes the incoming HPM commands and returns the result to a hpmcmd client. HPM commands include: Retrieving and modifying FRU data Reading and controlling status of IPMI-controlled LEDs Relaying e-key events to SRstackware on both hub and node blades Executing shutdown and reboot scripts in response to cold reset or graceful reboot requests Communicating local slot location information

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

87

Hardware Platform Management

The hpmagentd makes use of OpenIPMI to talk to the local IPMC. OpenIPMI consists of two main parts: A device driver that goes into the Linux kernel, and a user-level library. The following picture shows the software levels that are involved in the HPM architecture: Figure 5-1 Software Levels of the HPM Architecture

The SMI (System Management Interface) driver provides the low level interface for talking to the IPMC and could be a KCS driver or BT (block transfer driver) or other. If you need more information about the software aspects of the blade IPM controller, refer to the respective IPMI manual.

5.2

hpmagentdHPM Agent Daemon


Description The HPM agent daemon handles local communication to the intelligent platform management controller (IPMC) on a blade using the SMI. This SMI gets set up by the OpenIPMI driver. By default, the hpmagentd binary executable is installed in /opt/motorola/bin/. This directory has been added to the PATH environment variable.

88

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

This daemon has an init script called hpm that will start the daemon in run level 3 with the default settings. When hpmagentd receives a graceful reboot or shutdown alert from the IPMC, it will call the respective script to run the reboot or shutdown sequence. Synopsis hpmagentd [-l log-level] [-r reboot-script] [-s shutdown-script] hpmagentd {-i | -u | -h | -v} Parameters -l log-level Specifies the level of message logging, where log-level is one of the standard syslog levels:
Log Level 0 1 2 3 4 5 6 7 Description Emergency Alert Critical Error Warning Notice (default) Information Debug

-r reboot-script Specifies a graceful reboot script that will be called when a blade graceful reboot request is received by the IPMC, where reboot-script is the complete path and filename of the target script. The default is /opt/motorola/bin/hpmreboot (see hpmShutdown and Reboot Scripts on page 91). -s shutdown-script

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

89

Hardware Platform Management

Specifies a shutdown script that will be called when a blade shutdown request is received by the IPMC, where shutdown-script is the complete path and filename of the target script. The default is /opt/motorola/bin/hpmshutdown (see hpmShutdown and Reboot Scripts on page 91). -L Disable LED management -i hpmagentd runs interactively, that is it will not run as daemon. -u | -h Displays a brief message about command usage. -v Displays the version of hpmagentd and the version of the OpenIPMI library it is linked against.

5.3

hpmStart-Up Script
Description An HPM agent init script, hpm, allows you to start, stop, and restart the HPM agent daemon using the agents default option settings. By default, this script is installed in the /opt/motorola/etc/init.d directory during installation of the BBS software. It is also linked to /etc/rec.d/recS.d to automatically start the HPM agent when the system boots. Synopsis hpm {start | stop | restart | force-reload} Parameters start Starts the hpm agent daemon.

90

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

stop Terminates the hpm agent daemon. restart Terminates and then starts the hpm agent daemon. force-reload Terminates and then starts the hpm agent daemon.

5.4

hpmShutdown and Reboot Scripts


Description At any time during normal operation, a shelf manager may issue a shutdown (FRU Activation Deactivate) or graceful reboot (FRU Control Reboot) request to the IPMC on a given blade. The IPMC then forwards this information to the HPM agent. The HPM agent listens for such requests from the IPMC. When it receives a request, it calls the respective script to run the reboot or shutdown sequence. In case of a shutdown indication, all running processes should be notified about the shutdown. In case of a reboot notification, the payload is responsible for invoking the reboot procedure. The IPMC is not involved in this process. This allows processes currently running on the blade to prepare for shutdown. After the notification, it takes roughly 30 seconds before the payload is powered off. Two default scripts, hpmshutdown and hpmreboot, are installed by default in the /opt/motorola/bin directory. Currently, these scripts simply print a banner indicating they have run and then issue shutdown -h now (hpmshutdown script) or reboot (hpmreboot script). You may modify the default scripts to suit the needs of your system application or create new scripts. If you create new scripts, use the -s and -r options when starting hpmagentd to specify the new locations and names of the scripts. You may also need to update the hpm start up script in /opt/motorola/etc/init.d/hpm. Synopsis hpmshutdown hpmreboot

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

91

Hardware Platform Management

5.5

hpmcmdHPM Command Utility


Description The HPM command utility uses a socket to send commands to the HPM agent. The HPM agent takes care of translating the user-friendly commands into the elaborated IPMI commands that the IPMC is able to understand. Those IPMI commands are transferred to the local IPMC. Only one HPM command can be outstanding with the HPM agent at any particular moment. This means that even though multiple instances of hpmcmd can be started, the HPM agent will handle only one command at a time. Once a command is sent, the hpmcmd program waits until the answer from the HPM agent is received or until a time-out occurs. The HPM command utility can be started in interactive mode, where a prompt is displayed and the user enters commands; it can read in a file of commands; or it can process a single command. By default, the hpmcmd binary executable is installed in /opt/motorola/bin. During installation of the BBS software, this directory is added to the PATH environment variable. If you do not provide any options you will see the following prompt once the program starts running: hpmcmd> From there you can start executing commands. Synopsis hpmcmd [-p new-prompt] [-o output] [-i input | -c command] hpmcmd [--prompt new_prompt] [--output_file output] [--input_file input | -cmd_line command] Parameters -p new-prompt Specifies the prompt you would like to have for the hpmcmd interactive mode, where newprompt is any string. The default prompt is hpmcmd>. This option should not be combined with the -i or -c options.
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

92

Hardware Platform Management

-i input-file Specifies the name of a file with HPM commands, where input-file is the complete path and filename of the target file, a standard ASCII file with one command per line (comments are not supported). The default is Standard Input (stdin). This option should not be combined with the -c option. Once it has executed all commands in the file, hpmcmd terminates. -o output-file Specifies the name of an output file, where output-file is the complete path and filename of the target file. The default is Standard Output (stdout). -c command This option executes a single command and terminates, where command is one of the supported commands. This allows you to use the arrow history functions supported in the base shell; a history is not available inside the hpmcmd program. This option should not be combined with the -i option. If this option is combined with -o, -c should be last option entered, since all arguments that follow -c on the command line will be considered part of the command.

5.5.1

Command Overview
The following table lists all commands from the hpmcmd program available on the ATCA-F120. You can display this list and a short command description using the help command (see section help on page 105). A detailed description of the commands is given in section Supported Commands on page 95. Table 5-1 Command Overview
Command bibdump bibrepair bibvalidate bootbankget Description Gets the contents of the BIB (Board Information Block) Repairs an invalid BIB (Board Information Block) Validates the BIB (Board Information Block) Gets the bootbank to boot from

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

93

Hardware Platform Management

Table 5-1 Command Overview (continued)


Command bootbankset bye cmd deviceid ekeydownpath ekeyuppath exit frudata fruinfoget fruinv fruread fruwrite help ipmbaddress ipmcdevice ipmcstatus ledget ledprop ledset loglevelget loglevelset macaddress motshelftype partnumber physlotnumber Description Sets the bootbank to boot from Exits the hpmcmd program Executes any IPMI command Gets the Device Id Gets the location/path of a script whoch is invoked on ekeying port down events Gets the location/path of a script whoch is invoked on ekeying port up events Exits the hpmcmd program Gets FRU info in hex numbers Gets string fields from the FRU Gets the FRU size and addressable units Gets x number of bytes from the FRU Writes x number of bytes from the FRU Gets list of hpmcmd commands Gets the local board IPMB address Gets the payload interface to the IPMC Gets the IPMC Status Gets the state of a specific FRU LED Get the LED properties for this FRU Controls the state of a specific FRU LED Gets the hpmagentd log level Sets the hpmagentd log level (0-7) Gets the MAC addresses Gets the Emerson Shelf Type from the Shelf FRU (Board Product Name) Gets the board part number Gets the board physical slot number

94

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

Table 5-1 Command Overview (continued)


Command portget portset quit rebootpath sdr sdr_dump sdrinfo sendcmd shelfaddress shelfslots shutdownpath slotmap slotnumber upgrade version watchdog Description Gets the current state E-Key governed intfs Enables/Disables ports in a channel Exits the hpmcmd program Gets hpmagentd reboot script path Gets the SDR records Gets the SDR records in raw format Gets SDR information Sends an IPMI command Gets the Shelf Address String Gets number of slots in the shelf Gets hpmagentd shutdown script path Gets the slotmap of the shelf Gets the board logical slot number Upgrades the IPMC firmware Gets the hpmcmd version and the hpmagentd version Controls Payload WDT functionality

5.5.2

Supported Commands
This section lists the supported commands. All commands are case insensitive. The examples illustrate the use of hpmcmd in single-command mode (-c). If you start hpmcmd without the c or -i options (that is, interactive mode), you simply enter these commands at the HPM command prompt. Some of the hpm commands can be sent to a remote IPMC by specifying the -t option. This option is not mandatory. If it is not specified, the command is sent to the local IPMC. The following sections describe the available commands.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

95

Hardware Platform Management

5.5.2.1

bye

Description This command s for exiting the hpmcmd program when running in interactive mode. Synopsis bye

5.5.2.2

bibdump

Description This command returns the contents of the BIB in hexadecimal format. Synopsis bibdump [-t ipmbAddr] Parameters -t Sends the command to ipmbAddr.

5.5.2.3

bibrepair

Description This command fixes checksum errors in the BIB. Synopsis bibrepair Parameters -t Sends the command to ipmbAddr. [-t ipmbAddr]

96

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

5.5.2.4

bibvalidate

Description This command returns whether the BIB information is valid or not. Synopsis bibvalidate Parameters -t Sends the command to ipmbAddr. [-t ipmbAddr]

5.5.2.5

bootbankget

Description This command retrieves the boot bank which is currently marked as active for the CPU specified by payload_cpu_selector. Firmware for the CPU on Emerson AdvancedTCA blades is stored in redundant, persistent memory devices. This allows the firmware image in one bank to serve as a backup for the other bank. During normal operation, the CPU on a blade determines which bank to boot from based on a GPIO signal controlled by the IPMC. This bank is considered the active boot device. Because you can change the active device with the hpmcmd bootbankset command, active status does not necessarily indicate which device was used on the last boot. It simply represents which device is set to be used on the next boot. Synopsis bootbankget <payload_cpu_selector> Parameters payload_cpu_selector Is an integer between 0 and the number of CPU devices supported on the blade.
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 97

Hardware Platform Management

On the PrAMC-7201 the only valid value for payload_cpu_selector is 0. Example hpmcmd -c bootbankget 0

5.5.2.6

bootbankset

Description This command sets the boot bank for a particular CPU from which the blade is supposed to boot. Synopsis bootbankset <payload_cpu_selector> <newBootBank> Parameters payload_cpu_selector Is an integer between 0 and the number of CPU devices supported on the blade. newBootBank Can be set to BANK0 or BANK1 Example hpmcmd -c bootbankset 0 bank1

5.5.2.7

cmd

Description This command allows you to enter commands understood by the IPMC. Commands are entered as a sequence of hexadecimal numbers as defined in the IPMI 1.5 Specification. Synopsis cmd <ipmi address> <netfn cmd> <cmd data>

98

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

Parameters ipmi address The IPMI address specifies the IPMC that receives the command, it can be the local IPMC or another IPMC on the IPMB. The IPMI address for the local IPMC consists of <f LUN> where f is the BMC channel number. The IPMI address for a remote IPMC consists of <0 SA LUN>. netfn cmd Identifies the command type. cmd data Specifies the message data associated with the command. Example GetDeviceId command to the local IMPC: hpmcmd -c cmd f 0 6 1 GetDeviceId command to the remote IPMC on address 9a: hpmcmd -c cmd 0 9a 0 6 1 GetDeviceId command to the remote IPMC on address 7a: hpmcmd -c cmd 0 7a 0 6 1

5.5.2.8

deviceid

Description This command retrieves the raw IPMI Get Device ID response and decodes the IPMI message. Synopsis deviceid [-t ipmbAddr[:mmcAddr]] Parameters -t

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

99

Hardware Platform Management

Sends the command to ipmbAddr[:mmcAddr]. ipmbAddr is the string lc if it is a local mmcAddr. Example hpmcmd -c deviceid The least significant byte of the Auxiliary Revision indicates the build number inside the release.

5.5.2.9

ekeydownpath

Description Gets the location/path of a script which is invoked whenever an interface port is to be closed. The script is used to implement an e-keying mechanism in software and will invoke ifconfig to close the port. You may want to do modifications to this script. Synopsis ekeydownpath

5.5.2.10 ekeyuppath
Description Gets the location/path of a script which is invoked whenever an interface port is to be opened. The script is used to implement an e-keying mechanism in software and will invoke ifconfig to open the port. You may want to do modifications to this script. Synopsis ekeyuppath

5.5.2.11 exit
Description This command is for exiting the hpmcmd program when running in interactive mode.
100 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

Synopsis exit

5.5.2.12 frudata
Description This command dumps the content of the FRU data in hexadecimal format. Synopsis frudata <fruid> [-t ipmbAddr[:mmcAddr]] Parameters fruid Is 0 for the main blade and 1 for the rear transition module. -t Sends the command to ipmbAddr[:mmcAddr]. ipmbAddr is the string lc if it is a local mmcAddr. Example hpmcmd -c frudata 0

5.5.2.13 fruinfoget
Description This command retrieves information from the specified FRU. Synopsis fruinfoget <fruid> [field] [-v] [-t ipmbAddr[:mmcAddr]] Parameters fruid
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 101

Hardware Platform Management

Is 0 for the main blade and 1 for the rear transition module. field Is one of the following data fields. If no field is specified, it retrieves the whole fruinfo for that FRU.
Field bmanufacturer bproductname bserialnumber bpartnumber pmanufacturer pproductname ppartnumber pversion pserialnumber passettag Description Board manufacturer Board product name Board serial number Board part number Product manufacturer Product product name Product part number Product version number Product serial number Product inventory asset identifier

-v Verbose mode to get point-to-point connectivity information where no specific field is requested. -t Sends the command to ipmbAddr[:mmcAddr]. ipmbAddr is the string lc if it is a local mmcAddr. Example hpmcmd -c fruinfoget 1 bmanufacturer The following example for fruinfoget is without fields and -v option. hpmcmd -c fruinfoget 0

102

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

5.5.2.14 fruinv
Description This command retrieves the FRU size and the addressable unit for the specified FRU. Synopsis fruinv <fruid> [-t ipmbAddr[:mmcAddr]] Parameters fruid Is 0 for the main blade and 1 for the rear transition module (if supported). -t Sends the command to ipmbAddr[:mmcAddr]. ipmbAddr is the string lc if it is a local mmcAddr. Example hpmcmd -c fruinv 0

5.5.2.15 fruread
Description This command gets a range of data from the specified FRU. Synopsis fruread <fruid> <startAddress> <nBytes> [-t ipmbAddr[:mmcAddr]] Parameters fruid Is 0 for the main blade and 1 for the rear transition module (if supported). startAddress
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 103

Hardware Platform Management

Is the starting address in decimal. nBytes Number of bytes to read in decimal; cannot exceed 16 because of IPMI message size limitations. -t Sends the command to ipmbAddr[:mmcAddr]. ipmbAddr is the string lc if it is a local mmcAddr. Example hpmcmd -c fruread 0 0 8

5.5.2.16 fruwrite
Description This command allows to write x number of bytes to a FRU. Synopsis fruwrite <fruid> <startAddress> <nBytes> [-t ipmbAddr[:mmcAddr]] Parameters fruid Is 0 for the main blade. startAddress Starting address in decimal numbers. nBytes is the number of bytes to write in decimal. nBytes cannot exceed16 because of IPMI message size limitations. -t
104 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

Sends the command to ipmbAddr[:mmcAddr]. ipmbAddr is the string lc if it is a local mmcAddr.

5.5.2.17 help
Description This command lists the available commands from the hpmcmd program with a brief explanation about the command. Synopsis help

5.5.2.18 ipmbaddress
Description This command retreives the blade IPMB address. Synopsis ipmbaddress

5.5.2.19 ipmcdevice
Description This command retrieves the payload tty device. Synopsis ipmcdevice

5.5.2.20 ipmcstatus
Description This command retrieves the IPMC operating mode, payload control and outstanding events. Synopsis ipmcstatus [-v] [-t ipmbAddr]
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 105

Hardware Platform Management

Parameters -v Verbose mode to get additional information operation -t Sends the command to ipmbAddr. Example hpmcmd -c ipmcstatus -v

5.5.2.21 ledget
Description This command gets information about a specified LED controlled by the IPMC. Synopsis ledget <fruid> <led> [-t ipmbAddr[:mmcAddr]] Parameters fruid Is 0 for the main blade and 1 for the rear transition module (if supported). led Is BLUE for the hot swap LED or LEDN for FRU LED<n>. <n> is a number between 1 and the maximum FRU LEDs supported by the blade. -t Sends the command to ipmbAddr[:mmcAddr]. ipmbAddr is the string lc if it is a local mmcAddr. Example hpmcmd -c ledget 0 led1
106 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

5.5.2.22 ledprop
Description This command displays the FRU LED properties under IPMC control. Synopsis ledprop <fruid> Parameters fruid 0 for the main board and 1 for the RTM. Example hpmcmd -c ledprop 0 FRU LEDs under IPMC control: LED0 = BLUE LED1 = RED or AMBER LED2 = GREEN

5.5.2.23 ledset
Description This command controls the override state of a specific FRU LED. The RTM FRU LEDs reflect the state of the main blade (FRU 0) LEDs. Therefore, overriding the state to something different than the main FRU LED state will not have any effect. The blue LED is the only one that can be controlled separately. Synopsis ledset <fruid> <led> <operation> [offms] [onms] [color] [-t ipmbAddr[:mmcAddr]]

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

107

Hardware Platform Management

Parameters fruid Is 0 for the main blade and 1 for the rear transition module (if supported). led Is BLUE for the hot swap LED or LEDN for FRU LED<n>. <n> is a number between 1 and the maximum FRU LEDs supported by the blade operation ON = enable override state and turn LED on. OFF = enable override state and turn LED off. BLINK = enable override state and blink LED; off_duration and on_duration specify the blink duration; the default on and off duration is 300 ms. LOCAL = cancel override state and restore LED control to the IPMC, that is, local state. TEST = run lamp test for specified on_duration, then restore prior state. offms 102500 in 10-millisecond increments; only valid if operation is BLINK onms Only valid if operation is BLINK or TEST: If operation is BLINK, 102500 in 10-millisecond increments If operation is TEST, 100-12800 in 100-millisecond increments color LED0 = BLUE LED1 = RED LED2 = GREEN LED3 = AMBER -t Sends the command to ipmbAddr[:mmcAddr]. ipmbAddr is the string lc if it is a local mmcAddr.

108

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

Example hpmcmd -c ledset 0 led1 on

5.5.2.24 loglevelget
Description This command retrieves the current hpmagentd log level. See loglevelset for more detail. Synopsis loglevelget Example hpmcmd -c loglevelget Loglevel 5 (NOTICE)

5.5.2.25 loglevelset
Description This command sets the level of message logging for hpmagentd. Synopsis loglevelset <newLogLevel> Parameters newLogLevel

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

109

Hardware Platform Management

Is one of the standard syslog levels:


Level 0 1 2 3 4 5 6 7 Description Emergency Alert Critical Error Warning Notice Information Debug

Example hpmcmd -c loglevelset 7

5.5.2.26 macaddress
Description This command retrieves a list of available MAC addresses. Synopsis macaddress [-t ipmbAddr] Parameters -t Sends the command to ipmbAddr. Example hpmcmd -c macaddress BASE Interface Channel 0 : 00:0E:0C:85:E9:91 BASE Interface Channel 1 : 00:0E:0C:85:E9:90
110 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

5.5.2.27 motshelftype
Description This command retreives the shelf FRU (IPMB 20) Board Area Product Name (FRU 254). Synopsis motshelftype Example hpmcmd -c motshelftype CHS1406

5.5.2.28 partnumber
Description This command retrieves the part number of the main blade. Synopsis partnumber [-t ipmbAddr[:mmcAddr]] Parameters -t Sends the command to ipmbAddr[:mmcAddr]. ipmbAddr is the string lc if it is a local mmcAddr. Example hpmcmd -c partnumber

5.5.2.29 physlotnumber
Description This command retrieves the physical slot number in which the blade is plugged in. Synopsis
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 111

Hardware Platform Management

physlotnumber

5.5.2.30 portget
Description This command shows the current state of interfaces governed by e-keying. If no channel is specified, portget returns data for all channels in the specified interface. If neither interface nor channel are specified, portget will return data for all interfaces. Synopsis portget [interface] [channel] [-t ipmbAddr[:mmcAddr]] Parameters interface Valid values are: BASE | FABRIC | UPDATE channel an integer in the following range: 116 for Base 115 for Fabric 1 for Update The value of channel must be valid for the blade. For example, node blades have only 2 channels for the base interface; using a value of 4 will return an error. -t Sends the command to ipmbAddr[:mmcAddr]. ipmbAddr is the string lc if it is a local mmcAddr. Example hpmcmd -c portget AMC 0

112

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

5.5.2.31 portset
Description This command enables and disables ports in a channel. The following table lists the valid values for each parameter. Synopsis portset <intf> <chan> <grpid> <type> <typeX> <ports> <oper> ipmbAddr[:mmcAddr]] Parameters intf Valid values are: BASE | FABRIC | UPDATE chan an integer in the following range: 116 for Base 115 for Fabric 1 for Update The value of channel must be valid for the blade. For example, node blades have only 2 channels for the base interface; using a value of 4 will return an error. grpid Always 0 according to current shelf FRU information type [-t

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

113

Hardware Platform Management

Valid values are:


Valid Value BASE ETHER OEM Description for base interface for fabric interface for the update interface, which is Emerson specific

typeX Always 0 in current implementation. Valid values are: 0 (for 1000Base-BX) 1 (for 10GBase-BX4) 2 (for FC-PI) ports A sequence of ports to act on. For base and update channels, port is always 0. For fabric channels, port can specify up to 4 ports as specified in PICMG 3.1: Option 1: 0 Option 2: 01 Option 3: 0123 Option 7: 3 oper Valid values are DISABLE or ENABLE. -t Sends the command to ipmbAddr[:mmcAddr]. ipmbAddr is the string lc if it is a local mmcAddr. Example hpmcmd -c portset base 1 0 base 0 0 enable

114

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

5.5.2.32 quit
Description This command is for exiting the hpmcmd program when running in interactive mode. Synopsis quit

5.5.2.33 rebootpath
Description This command retrieves the path and filename of the current hpmagentd rebbot script. Synopsis rebootpath Example hpmcmd -c rebootpath /opt/motorola/bin/hpmreboot

5.5.2.34 sdr
Description This command shows the SDR records. Synopsis sdr Example hpmcmd -c sdr recID 1: full sensor record owner is IPMB 20 sensor num 10 on lun 00 channel 00 logical entity: power module - instance 61 SBC +1.05V Vtt : voltage : threshold recID 2: full sensor record
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 115

Hardware Platform Management

owner is IPMB 20 sensor num 11 on lun 00 channel 00 logical entity: power module - instance 61 SBC +1.1V : voltage : threshold recID 3: full sensor record owner is IPMB 20 sensor num 12 on lun 00 channel 00 logical entity: power module - instance 61 SBC +1.2V SAS : voltage : threshold . . . recID 74: OEM sensor record

5.5.2.35 sdr_dump
Description This command shows the SDR records in binary and hex format. Synopsis sdr_dump Example hpmcmd -c sdr_dump SDR Records: 01 00 51 01 39 04 22 12 12 00 d0 ca ff 00 00 53 42 43 20 2b . . . 61 67 65 20 45

20 04 d8 31

00 00 00 2e

10 00 00 30

14 33 c2 35

61 00 00 56

7f 00 01 20

69 00 01 56

02 00 00 74

01 c0 00 74

04 22 "..Q.9 ...a.i..."" 07 cd "."......3......" 00 ce "..............." "SBC +1.05V Vtt"

"age E"

5.5.2.36 sendcmd
Description

116

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

This command allows a user to send any of the commands supported in the IPMI spec to a remote IPMC. Synopsis sendcmd <IPMBaddress> <netfn> <cmd> <data0> ... <dataN> Parameters IPMBaddress Destination IPMB address in hex digits. netfn IPMI request net function in hex digits. cmd IPMI request command in hex digits data0 ... dataN IPMI request data bytes. if any, in hex digits. Example hpmcmd -c sendcmd 90 06 59 07 59 C1

5.5.2.37 sdrinfo
Description This command shows the SDR information. Synopsis sdrinfo Example

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

117

Hardware Platform Management

hpmcmd -c sdrinfo SDR LUN LUN LUN LUN Information: 0 has 066 sensors; 1 has 000 sensors; 2 has 000 sensors; 3 has 000 sensors;

static static static static

sensor sensor sensor sensor

population population population population

5.5.2.38 shelfaddress
Description This command retrieves the shelf address string from the shelf FRU. Synopsis shelfaddress Example hpmcmd -c shelfaddress 01

5.5.2.39 shelfslots
Description This command retrieves the total number of blade slots in the shelf. Synopsis shelfslots Example hpmcmd -c shelfslots 14 slots

5.5.2.40 shutdownpath
Description

118

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

This command retrieves the path and filename of the current hpmagentd shutdown script. Synopsis shutdownpath Example hpmcmd -c shutdownpath /opt/motorola/bin/hpmshutdown

5.5.2.41 slotmap
Description This command prints a slotmap table for the shelf the blade is installed in. Synopsis slotmap Example hpmcmd -c slotmap ------------------------------------------------------------Physical Slot: 01 02 03 04 . 05 06 07 08 09 10 . 11 12 13 14 Logical Slot: 01 03 05 07 . 09 11 13 04 06 08 . 10 12 14 02 IPMB Address: 82 86 8A 8E . 92 96 9A 88 8C 90 . 94 98 9C 84 -------------------------------------------------------------

5.5.2.42 slotnumber
Description This command retrieves the logical slot number of the slot where the blade is plugged in. Synopsis slotnumber Example

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

119

Hardware Platform Management

hpmcmd -c slotnumber 2

5.5.2.43 upgrade
Description This command is used to upgrade the IPMC firmware. It is only possible to upgrade the firmware remotely from one blade to another, not from the blade itself. In case of an RTM upgrade the front blade will be powered down. Synopsis upgrade <image> [-t ipmbAddr [:mmcAddr]] Parameters image Full path of the upgrade image file -t Sends the command to ipmbAddr[:mmcAddr]. ipmbAddr is the string lc if it is a local mmcAddr.

5.5.2.44 version
Description This command retrieves the version of the hpmcmd software and sends a request to get the version of the hpmagent daemon that is running. Once the information is gathered, it is printed. Synopsis version Example

120

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Hardware Platform Management

hpmcmd -c version hpmcmd version bbs 3.1.0 build X hpmagentd version bbs 3.1.0 build X

5.5.2.45 watchdog
Description This command is used handle the payload BMC watchdog. Synopsis watchdog set <tmr_use> <tmr_action> <pre_timeout> <flags> <lsb_val> <msb_val> watchdog set default watchdog watchdog watchdog watchdog get start stop reset

Parameters set Possible values are

tmr_use tmr_action

dont_stop stop no_action hard_reset power_cycle power_down

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

121

Hardware Platform Management

pre_timeout flags lsb_val msb_val

0-255 clear dont_clear 0-255 0-255

122

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Chapter 6

Link Health Check

6.1

Overview
The Link Health Check (LHC) package supports configuration and operation of the LHC protocol. LHC performs two functions within a Centellis system: Verification of Layer2 connectivity Distribution of active network plane The LHC daemon can be configured to manage one or more instances. Each instance has a role of either proctor or responder. In the proctor role, LHC periodically sends QUERY messages and expects RESPONSE messages. It also sends RESPONSE messages in response to QUERY messages received from other proctors. In the responder role, LHC sends RESPONSE messages in response to received QUERY messages. Generally, the LHC daemon on hub blades will be configured with one instance with a proctor role. The LHC daemon on a payload blade with no internal switches will be configured with one instance with a responder role. The LHC daemon on carrier blades with an internal switch will be configured with two instances. One instance will have a responder role with respect to the system network and the other one will have a proctor role with respect to the blades internal network that connects to the AMCs/PMCs The LHC daemon on an AMC/PMC will be configured with one instance with a responder role. The LHC package includes: SNMP access to LHC Configuration and management daemon Command line utility program

6.2

LHC MIB
LHC makes its internal structures available as MIB tables and objects. To enable SNMP access, you must link to the enterprise MIB provided in the LHC package and enable SNMP access on the blade. You can also configure LHC by using the lhcd configuration script or via the lhccmd command line utility.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

123

Link Health Check

6.2.1

Browsing the LHC MIB


To support LHC, Emerson has created an enterprise MIB known as the LHC MIB, /opt/motorola/mibs/LHC-MIB.txt. This MIB defines the tables, objects, and MIB variables used to control and monitor LHC. This MIB can be reviewed with any SNMPv2 compatible MIB browser.

6.2.2

Enabling SNMP Access to the LHC MIB


By default, the LHC MIB is installed in /opt/motorola/mibs. Add this directory to the MIBDIRS environment variable: export MIBDIRS=$MIBDIRS:/opt/motorola/mibs The blade is delivered with SNMP disabled per default. To enable the SNMP daemon, the start script in /etc/init.d/snmpd.disabled must be renamed to /etc/init.d/snmpd. The default /etc/snmp/snmpd.conf file creates the user "LocalUser" with the password "LocalUserPassword". You can simply modify snmpd.conf to add, delete, or modify users or communities you require. After you modify snmp.conf or /etc/default/snmpd, you must start or restart the SNMP daemon for changes to take effect.

6.3

lhcdLHC Daemon
Description The Link Health Check (LHC) management daemon, lhcd, manages the LHC protocol. It serves several purposes: Provides, through a command interface, the ability to customize operation of the LHC protocol Collects operational statistics which allow monitoring of the LHC protocol Accepts commands from fault management to change the active network plane Notifies fault management of events of interest, such as responder not responding

124

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Link Health Check

During normal operation, the LHC daemon process, lhcd, is created and runs as a system daemon. An init script, lhc, allows you to start and stop the LHC daemon. For further information, see lhclhcd Start-Stop Script on page 126. Synopsis lhcd [-c config_file] -f shelfnum -s slotnum -t sitenum [-l log-level][-p pid-file] lhcd -v Parameters -h Displays a brief usage. -c config_file If supplied, LHC reads in the specified file (including path) that contains commands to configure LHC. -f shelfnum Blade is in shelf specified by shelfnum. This is a required option. The shelf number, slot number, site number, and instance number are used in MIB indices to uniquely identify each LHC instance. This is particularly significant in multishelf configurations. -s slotnum Blade is in slot specified by slotnum, where slotnum is the logical slot number where the blade is inserted. You can retrieve the slot number by entering hpmcmd -c slotnumber. This is a required option. The shelf number, slot number, site number, and instance number are used in MIB indices to uniquely identify each LHC instance. -t sitenum

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

125

Link Health Check

Blade is in site specified by sitenum, where sitenum is the logical site number where the blade is inserted. This is a required option. The shelf number, slot number, site number, and instance number are used in MIB indices to uniquely identify each LHC instance. Note that even though the site number is used to identify an AMC on a carrier blade, a site number must be supplied for LHC instances that are not running on an AMC/PMC. The recommended value for nonAMC/PMC is 255. -l log-level Sets log level to one of the standard syslog levels:
Log Level 0 1 2 3 4 5 6 7 Description Emergency Alert Critical Error Warning Notice (default) Information Debug

-p pidfile Is the complete path and filename for the daemons process ID file. This file is used by start-stop daemon to locate the correct lhcd process when stopping the daemon. If no PID file is specified, the file lhc.pid is created in the current working directory (pwd) from which LHC was started. -v Displays the version information.

6.4

lhclhcd Start-Stop Script


Description

126

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Link Health Check

The lhc init script allows you to start, stop, and restart the LHC daemon. The script relies on the HPM agent to retrieve important blade-specific information. By default, this script is installed in the /opt/motorola/etc/init.d directory during installation of the BBS software. It is linked to /etc/rc.d/rc2.d so that LHC starts automatically in the run level 3. You can use this script to start, stop, or restart the LHC daemon by changing to the /opt/motorola/etc/init.d directory and typing lhc with the appropriate option, for example: ./lhc start Synopsis lhc {start|debug_start|start_no_cfg|stop|restart| force-reload|generate_config} Parameters start Note that after starting LHC using the start parameter, the daemon automatically reads in a configuration file in the /opt/motorola/etc/lhc directory. The filename is of the form lhc.<shelf>.<slot>.<site>.cfg.

Starts lhcd. debug_start Starts lhcd with debug-level logging (7) rather than the default (5). start_no_cfg Starts lhcd without reading in a configuration file. stop Terminates lhcd.
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 127

Link Health Check

restart Terminates lhcd, and then starts lhcd. force-reload Terminates lhcd, and then starts lhcd. generate_config Deletes the configuration file of the form, if it exists, and then regenerates it by executing the file lhcConfig.gen in the /opt/motorola/etc/lhc directory. Environment Variables You do not need to explicitly set the following variables. Under normal operating conditions the init script sets the environmental variables by executing /etc/default/hpmvars.

SHELF_NUMBER SLOT_NUMBER SITE_NUMBER

Specifies the shelf number used with the lhcd -f option. Specifies the logical slot number of the blade used with the lhcd -s option. Specifies the site number used with the lhcd -t option.

6.5

lhcLHC Command Line Utility


Description The LHC command utility, lhccmd, provides shell-level access to the LHC daemon management component (lhcd) for LHC configuration and monitoring. Synopsis lhccmd [-v] lhccmd command

128

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Link Health Check

Parameters -v Shows version of lhccmd. Also displays version of lhcd if it is running.

6.5.1

Command Overview
The following table lists the commands provided by the lhccmd utility. For complete command information, see Available Commands on page 131.
Command get objectName index get tableName index help | ? index tableName loglevel 0...7 mem dump mem ignore mem unignore next objectName index next tableName index objects tableName quit | q | exit set objectName index value_keyword setc objectName index "value" seti objectName index value seto objectName index value Description MIB Get MIB Getrow Print usage information Show MIB index information for a table Set/Show log level Dump LEAP memory Ignore allocated LEAP memory Un-ignore all LEAP memory MIB Next MIB Nextrow Show MIB object IDs for table Exit MIB Enumerated Value Set MIB Character String Set MIB Integer Set MIB Octet String Set next on page 134 next on page 134 objects on page 135 exit | q | quit on page 131 set on page 135 set on page 135 set on page 135 set on page 135 Command Reference get on page 132 get on page 132 help on page 132 index on page 132 loglevel on page 133

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

129

Link Health Check

Command tables values objectName version walk tableName

Description Show MIB table IDs Show values for MIB object Display version information MIB table Walk

Command Reference tables on page 136 values on page 136 version on page 137 walk on page 137

6.5.2

Command Usage for Common Parameters


Many commands support common parameters to specify MIB objects to operate on. The common command parameters include: tablename Name of a MIB table. For specific values, use the lhccmd tables command. The tableName parameter is case-sensitive. Table names must be entered exactly as they appear in the MIB. objectName Name of a MIB object within a table. For specific values, use the lhccmd objects tableName command, where tableName is the name of a specific table. The objectName parameter is case-sensitive. Object names must be entered exactly as they appear in the MIB. index MIB index as a sequence of numbers (for example, 2.1.1.12). The format of the index parameter is a dot-separated group of fields. In general, each field of the index is a single 32-bit value. However, fields that denote a MAC address or an IP address have multiple dotseparated elements. A MAC address has six elements; each element is eight bits of the 48-bit MAC address. Note that MAC addresses are ordinarily expressed as a sequence of hexidecimal octets, for example: 00.0E.83.EB.33.6F. To indicate that an index element is a hexidecimal value, prefix it with "0x" as follows: 0x00.0x0E.0x83.0xEB.0x33.0x6F.

130

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Link Health Check

The fields that make up index vary for each type of object, as described in the following table. For more information about specific indices, refer to the LHC MIB /opt/motorola/mibs/LHC-MIB.txt.
MIB Table lhcTable lhcComTable lhcProctorTable lhcResponderTable lhcL2InterfaceTable lhcProctorL2InterfaceTable lhcProctorResponderGroupTable lhcProctorExpectedResponderTabl e lhcAuthorizedProctorTable Index Format shelf.slot.site shelf.slot.site.instance shelf.slot.site.instance shelf.slot.site.instance shelf.slot.site.instance.L2interfaceindex shelf.slot.site.instance.L2interfaceindex shelf.slot.site.instance.L2interfaceindex.RGL2address shelf.slot.site.instance.L2interfaceindex.RGL2address .ERshelf.Erslot.Ersite shelf.slot.site.instance.L2interfaceindex.RGL2address .APshlef.APslot.APsite

value Value to set for a read-write object. For specific values, see the LHC MIB /opt/motorola/mibs/LHC-MIB.txt.

6.5.3

Available Commands
This section lists the supported commands.

6.5.3.1

exit | q | quit

Description Terminates lhcd. MIB tables for status and control of LHC are destroyed. Synopsis exit q quit

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

131

Link Health Check

6.5.3.2

get

Description This command gets the specified MIB object or table row. Depending on whether objectName or tableName is used, the command corresponds to a MIB get or MIB getrow command. Synopsis get [objectName] [index] get [tableName] [index] Parameters objectName See Command Usage for Common Parameters on page 130. tableName See Command Usage for Common Parameters on page 130. index See Command Usage for Common Parameters on page 130.

6.5.3.3

help

Description This command displays all available commands. Synopsis help <command> ?

6.5.3.4

index

Description

132

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Link Health Check

This command displays the list of elements that make up the MIB index for the table name provided as an argument. For each index element, the number of 32-bit values required for the element appears in parentheses. For example, an IP address will use four 32-bit values (x.x.x.x) when appearing in a MIB index. Synopsis index [tableName] Parameters tableName See Command Usage for Common Parameters on page 130.

6.5.3.5

loglevel

Description This command is used to set the LHC level. Synopsis loglevel [level] Parameters level Is a valid syslog log level from 0 to 7.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

133

Link Health Check

All log messages with a level equal to or numerically lower than the selected level will appear in the system log file. A value of 0 indicates that only the most critical log messages will appear. A value of 7 indicates that all log messages will appear.
Log Level 0 1 2 3 4 5 6 7 Description Emergency Alert Critical Error Warning Notice (default) Information Debug

6.5.3.6

next

Description This command gets the next MIB object or table row after the specified object or table row. Depending on whether objectName or tableName is used, the command corresponds to a MIB next or MIB nextrow command. Synopsis next [objectName] [index] next [tableName] [index] Parameters objectName See Command Usage for Common Parameters on page 130. index See Command Usage for Common Parameters on page 130.

134

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Link Health Check

6.5.3.7

objects

Description This command displays a list of MIB objects within lhcd. Synopsis objects [tableName] Parameters tableName See Command Usage for Common Parameters on page 130.

6.5.3.8

set

Description This command sets the value of a specified object. Synopsis set [objectName] [index] [value_keyword] seti [objectName] [index] [value] setc [objectName] [index] [\"value\"] seto [objectName] [index] [value] Parameters objectName See Command Usage for Common Parameters on page 130. index See Command Usage for Common Parameters on page 130. value See Command Usage for Common Parameters on page 130.
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 135

Link Health Check

Command set

Description Enumerated value set. This command sets the requested MIB object to the integer value associated with the value_keyword argument, where value_keyword is the textual representation of the integer value as defined in LHC-MIB. Allowable values are found in the SYNTAX section of a particular MIB object. Values for value_keyword are case-sensitive. For example, the SYNTAX of lhcRole is defined by the MIB as: SYNTAX lhcRole To set lhcRowStatus for index 2.2.255.1 to up, either of the following two commands may be used: seti lhcRowStatus 2.2.255.1 1 (integer set) set lhcRowStatus 2.2.255.1 up (enumerated value set) Integer set. Sets the object using an integer value, where value in this case is a specific integer. Value may be a decimal integer or hexadecimal integer (that is, preceded by 0x, for example, 0x100). Character string set. Sets the object using a character string, where value this case is a character string. Double quotes are a required part of the command syntax. When used with lhccmd from a shell prompt or shell script, the double quotes must be escaped by using backslashes before each double quote or by enclosing the quoted value in single quotes.

seti

setc

seto

Octet string set. Sets the object using an octet string, where value in this case is a dot separated hexadecimal string of the form hh.hh...hh, for example, FF.01.02.A1.

6.5.3.9

tables

Description This command displays a list of MIB tables supported by lhcd. Synopsis tables

6.5.3.10 values
Description

136

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Link Health Check

When an object is defined in the MIB as having an enumerated list of integer values, this command will display both the text (which may be provided as the value argument in the lhccmd set command) and the associated integer value (which may be provided as the value argument in the lhccmd seti command). Synopsis values [objectName] Parameters objectName See Command Usage for Common Parameters on page 130.

6.5.3.11 version
Description Displays the version of the loaded lhcd executable. Synopsis version

6.5.3.12 walk
Description This command walks the specified MIB table, displaying every row. Synopsis walk [tableName] Parameters tableName See Command Usage for Common Parameters on page 130.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

137

Link Health Check

6.6

LHC Configuration Script and Configuration File


LHC ships with a configuration script called lhcConfig.gen. It is located at /opt/motorola/etc/lhc/. The first time the LHC start-stop script (see lhclhcd Start-Stop Script on page 126) is used to start the LHC daemon, the configuration script is executed and generates a configuration file with a name of the format lhc.<shelf>.<slot>.<site>.cfg. The start-stop script then starts the LHC daemon, passing the generated configuration file name as a command line argument. The LHC daemon reads in the generated configuration file in order to learn its initial configuration. The lhc start-stop script checks for the existence of the generated configuration file. If a configuration file exists, the lhc start-stop script does not regenerate a configuration file from the configuration script.

6.7

LHC Fault Management


LHC exists as an aid to Fault Management (FM). LHC checks that the internal system network links are healthy, and reports failure and subsequent recovery of the links. Additionally, LHC is responsible for ensuring that all blades in a system use the same network plane. When FM (or some other entity) on a system controller determines that a switchover of the active network plane must be performed, LHC proctor is notified via its API. LHC then distributes the current active network plane to all blades in the system. On a ATCA-7107 or ATCA-7221 payload blade (responder), the LHC daemon receives the QUERY message indicating that the active plane has changed. LHC informs FM via an "active plane" FM notification. It is then up to the FM software to decide what to do.

6.7.1

Determining to Change Active Network Plane


When FM receives a RESPONSE delinquent or QUERY delinquent notification, it is an indication that there is a link failure to the blade identified in the notification. Either of these notifications could cause FM to decide to switchover the active network plane.

138

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Link Health Check

6.7.2

Controlling the Active Network Plane


If FM decides to switchover the active network plane, a MIB set communicates this fact to LHC. The following LHC command may be used to set the MIB variable, or an actual MIB set could be used: lhccmd seti lhcProctorRequestedActivePlane 1.2.255.1 2 This command would tell the (local) Proctor with indexing <shelf 1, slot 2, site 255, instance 1> to make plane 2 the active network plane.

6.7.3

Monitoring for Changes to the Active Network Plane


When LHC determines that an active network plane switchover has occurred, LHC generates an Active Plane FM notification. The same FM notification is generated whether the LHC role is Proctor or Responder.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

139

Link Health Check

6.7.4

Fault Management Notifications


When LHC detects a fault, LHC generates a Fault Management notification. LHC uses syslog to send the notifications to FM. Each FM notification begins with the standard syslog preamble including timestamp, followed by the string "LHC #<instance number>:" where <instance number> is the LHC instance number as used in the MIB indexing. The rest of the notification varies depending upon what fault is being notified. The format of each notification is shown in the following table.
Name Active Plane Definition/Semantics Inform which plane is active The configuration file specified on the command line was not found. RESPONSE message has been received with the same sequence number from the same source. Syntax LHC #<inst_num>: active plane <plane_num>, originator sh <shelf> sl <slot> st <site> serial <ser_num> LHC: Config file (<file_name>) not found, errno=<error_number> Dependencies -

Config file not found

Duplicate Response

LHC #<inst_num>: RESPONSE duplicate <eth_name>/<shelf>/<slot>/<site>/< mcast_mac_address> seq_num=<sequence_num> src MAC=<source mac address> LHC #<inst_num>: RESPONSE late or spurious <eth_name>/<shelf>/<slot>/<site>/< mcast_mac_address> seq_num=<sequence_num> src MAC=<source mac address> LHC #<inst_num>: L2 connection (<eth_name>) failed with error <error_number>

Late or spurious response

RESPONSE message was received containing an unknown sequence number. The message either arrived late or was sent in error. The layer 2 connection failed to open. LHC will not be able to communicate on the indicated interface. The layer 2 connection that previously failed has now been successfully opened.

Layer 2 connection failed

Layer 2 connection restored

LHC #<inst_num>: L2 connection (<eth_name>) restored

140

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Link Health Check

Name QUERY Delinquent

Definition/Semantics QUERY message has not been received from an authorized proctor

Syntax LHC #<inst_num>: QUERY delinquent <eth_name>/<shelf>/<slot>/<site>/< mcast_mac_address>

Dependencies For a particular Authorized Proctor, once this notification appears, it will not appear again until the "QUERY Received" notification appears For a particular Authorized Proctor, once this notification appears, it will not appear again until the "QUERY Delinquent" notification appears -

QUERY Received

QUERY message has been received from an authorized proctor

LHC #<inst_num>: QUERY received <eth_name>/<shelf>/<slot>/<site>/< mcast_mac_address>

QUERY from unauthorized proctor

QUERY message has been received from an unauthorized proctor

LHC #<inst_num>: QUERY from unauthorized proctor <eth_name>/<shelf>/<slot>/<site>/< mcast_mac_address>

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

141

Link Health Check

Name RESPONSE Delinquent

Definition/Semantics RESPONSE message not received from an expected responder

Syntax LHC #<inst_num>: RESPONSE delinquent <eth_name>/<shelf>/<slot>/<site>/< mcast_mac_address>

Dependencies For a particular expected responder, once this notification appears, it will not appear again until the "RESPONSE received" notification appears For a particular expected responder, once this notification appears, it will not appear again until the "RESPONSE Delinquent" notification appears -

RESPONSE Received

RESPONSE message has been received from an expected responder

LHC #<inst_num>: RESPONSE received <eth_name>/<shelf>/<slot>/<site>/< mcast_mac_address>

RESPONSE from unexpected responder Src MAC address changed

RESPONSE message has been received from an unexpected responder The source MAC address in the QUERY message is different from the MAC address received in the previous QUERY. This could indicate a misconfiguration, i.e., two proctors are configured with the same shelf/slot/site.

LHC #<inst_num>: RESPONSE from unexpected responder <eth_name>/<shelf>/<slot>/<site> LHC <inst_num>: src MAC changed since last QUERY <eth_name>/<shelf>/<slot>/<site>/< mcast_mac_address> new MAC=<new mac address> prev MAC=<previous mac address>

142

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Link Health Check

6.8

LHC Configuration Examples


This section provides some examples on how to configure LHC. LHC configuration is done via the LHC MIB. An L2 Interface entry represents an L2 interface, such as eth2, or a VLAN on an L2 interface, such as eth2.21. A Responder Group entry represents an LHC QUERY message sent to a configured MAC address (usually a multicast address) on a periodic basis, to which some number of Expected Responders should respond with an LHC RESPONSE message. An Expected Responder entry represents an entity from whom an LHC RESPONSE message is expected to be received. An Authorized Proctor entry represents an entity from whom an LHC QUERY message is expected and allowed to be received. The examples in this section are all based on the following single shelf system (shelf #1). Configuration of only the base interface is shown, whereas normally, the base and fabric interfaces are configured. The example single shelf system contains two switches (in logical slots 1 & 2) and two payload blades (in logical slots 4 & 5). Node blade #4 is a "standard" blade, while #5 is a carrier blade with two AMCs (in sites 7 & 8). On SCxB #1, VLAN eth0.21 connects to the node blades and SCxB #2 while VLAN eth0.22 connects to SCxB #2. On node blade #4, eth0 connects to SCxB #1 and eth1 connects to SCxB #2. On Node blade #5 baseboard processor, eth0.21 connects to SCxB #1, eth0.35 connects to AMC #7 and AMC #8. On the AMCs, eth0.35 connects to the baseboard processor. Note that the site number in MIB indexing for non-AMCs is 255.

6.8.1

Proctor Configuration Examples


Configuration for a proctor involves creating L2 Interfaces, responder groups, expected responders, and typically, authorized proctors. LHC Instance #1 is created with role proctor. (shelf 1 slot 1 site 255 instance 1) lhccmd set lhcRowStatus lhcccmd set lhcRole lhccmd set lhcRowStatus 1.1.255.1 createAndWait 1.1.255.1 proctor 1.1.255.1 active

Two L2 interfaces are created within the LHC instance #1, interface #1 for eth0.21 and #2 for eth0.22. (shelf 1 slot 1 site 255 instance 1 index 1) and (shelf 1 slot 1 site 255 instance 1 index 2).
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 143

Link Health Check

lhccmd set

lhcL2InterfaceRowStatus

1.1.255.1.1 1.1.255.1.1 1.1.255.1.1 1.1.255.1.2 1.1.255.1.2 1.1.255.1.2

createAndWait \"eth0.21\" active createAndWait \"eth0.22\" active

lhccmd setc lhcL2InterfaceName lhccmd set lhccmd set lhcL2InterfaceRowStatus lhcL2IntefaceRowStatus

lhccmd setc lhcL2InterfaceName lhccmd set lhcL2InterfaceRowStatus

Within interface #1, create a single responder group #1 with destination MAC address 01.c0.f9.00.00.01. This responder group fields RESPONSE messages from the payload blades and SCxB #2. (shelf 1 slot 1 site 255 instance 1 index 1 MAC 01c0f9000001) lhccmd set createAndGo Within that Responder Group, create three expected responders to represent the two payload blades and SCxB #2. (shelf 1 slot 1 site 255 instance 1 index 1 MAC 01c0f9000001 ERshelf 1 ERslot 2 ERsite 255) and (shelf 1 slot 1 site 255 instance 1 index 1 MAC 01c0f9000001 ERshelf 1 ERslot 4 ERsite 255) and (shelf 1 slot 1 site 255 instance 1 index 1 MAC 01c0f9000001 ERshelf 1 ERslot 5 ERsite 255) lhccmd set lhcProctorExpectedResponderRowStatus 1.1.255.1.1.0x01.0xc0.0xf9.0x00.0x00.0x01.1.2.255 createAndGo lhccmd set lhcProctorExpectedResonderRowStatus 1.1.255.1.1.0x01.0xc0.0xf9.0x00.0x00.0x01.1.4.255 createAndGo lhccmd set lhcProctorExpectedResponderRowStatus 1.1.255.1.1.0x01.0xc0.0xf9.0x00.0x00.0x01.1.5.255 createAndGo Within interface #2, create an authorized proctor #1 with destination MAC address 01.c0.f9.00.00.01. This AP fields QUERY messages from SCxB #2. (shelf 1 slot 1 site 255 instance 1 index 2 MAC 01c0f9000001 APshelf 1 APslot 2 APsite 255) lhcProctorResponderGroupRowStatus 1.1.255.1.1.0x01.0xc0.0xf9.0x00.0x00.0x01

144

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Link Health Check

lhccmd set lhcAuthorizedProctorRowStatus 1.1.255.1.2.0x01.0xc0.0xf9.0x00.0x00.0x01.1.2.255 createAndWait lhccmd set lhcAuthorizedProctorGuardTimerEnable 1.1.255.1.2.0x01.0xc0.0xf9.0x00.0x00.0x01.1.2.255 lhccmd set lhcProctorExpectedResponderRowStatus 1.1.255.1.2.0x01.0xc0.0xf9.0x00.0x00.0x01.1.2.255

true

active

6.8.2

Responder Configuration Examples


Configuration for a responder involves creating L2 Interfaces and authorized proctors. LHC Instance #1 is created with role responder. (shelf 1 slot 4 site 255 instance 1) lhccmd lhccmd lhccmd set set set lhcRowStatus lhcRole lhcRowStatus 1.4.255.1 1.4.255.1 1.4.255.1 createAndWait responder active

Two L2 interfaces are created within LHC instance#1, interface#1 for eth0 and #2 for eth1. (shelf1 slot 4 site 255 instance 1index 1) and (shelf 1 slot 4 site 255 instance 1 index 2) lhccmd lhccmd lhccmd lhccmd lhccmd lhccmd set setc set set setc set lhcL2InterfaceRowStatus lhcL2InterfaceName lhcL2InterfaceName lhcL2InterfaceRowStatus lhcL2InterfaceName lhcL2InterfaceRowStatus 1.4.255.1.1 1.4.255.1.1 1.4.255.1.1 1.4.255.1.2 1.4.255.1.2 1.4.255.1.2 createAndWait \"eth0\" active createAndWait \"eth1\" active

Within interface #1, create a single authorized proctor #1 with destination MAC address 01.c0.f9.00.00.1. This AP fields QUERY messages from SCxB #1. (shelf 1 slot 4 site 255 instance 1 index 1 MAC 01c0f9000001 APshelf 1 APslot 1 APsite 255)

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

145

Link Health Check

lhccmd set lhcAuthorizedProctorRowStatus 1.4.255.1.1.0x01.0xc0.0xf9.0x00.0x00.0x01.1.1.255 createAndWait lhccmd set lhcAuthorizedProctorGuardTimerEnable 1.4.255.1.1.0x01.0xc0.0xf9.0x00.0x00.0x01.1.1.255 true lhccmd set lhcAuthorizedProctorRowStatus 1.4.255.1.1.0x01.0xc0.0xf9.0x00.0x00.0x01.1.1.255 active Within interface #2, create a single authorized proctor #1 with destination MAC address 01.c0.f9.00.00.01. This AP fields QUERY messages from SCxB#2. (shelf 1 slot 4 site 255 instance 1 index 2 MAC 01c0f9000001 AP shelf 1 APslot 2 AP site 255) Within interface #2, create a single authorized proctor #1 with destination MAC address 01.c0.f9.00.00.01. This AP fields QUERY messages from SCxB #2. (shelf 1 slot 4 site 255 instance 1 index 2 MAC 01c0f9000001 APshelf 1 APslot 2 APsite 255) lhccmd set lhcAuthorizedProctorRowStatus 1.4.255.1.2.0x01.0xc0.0xf9.0x00.0x00.0x01.1.1.2.255 createAndWait lhccmd set lhcAuthorizedProctorGuardTimerEnable 1.4.255.1.2.0x01.0xc0.0xf9.0x00.0x00.0x01.1.2.255 true lhccmd set lhcAuthorizedProctorRowStatus 1.4.255.1.1.0x01.0xc0.0xf9.0x00.0x00.0x01.1.2.255 active

6.8.3

Baseboard Processor on Carrier Blade Configuration Example


Configuration on a carrier blade baseboard processor involves creating two LHC instances, one with role responder to handle the LHC conversation to the SCxBs and one with role proctor to handle the LHC conversation to the AMCs. LHC Instance #1 is created with role proctor (shelf 1 slot 5 site 255 instance 1). lhccmd set lhcRowStatus 1.5.255.1. proctor

lhccmd set lhcRole 1.5.255.1 proctor lhccmd set lhcRowStatus 1.5.255.1 active
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

146

Link Health Check

One L2 Interface is created within LHC instance #1, interface #1 for eth0.35 (shelf 1 slot 5 site 255 instance 1 index 1). lhccmd set lhcL2InterfaceRowStatus 1.5.255.1.1 createAndWait lhccmd setc lhcL2InterfaceName1.5.255.1.1 \"eth0.35\" lhccmd set lhcL2InterfaceRowStatus 1.5.255.1.1 active Within interface #1, create a single responder Group #1 with destination MAC address 01.c0.f9.00.00.01. This Responder Group fields RESPONSE messages from the AMCs. (shelf 1 slot 5 site 255 instance 1 index 1 MAC 01c0f9000001) lhccmd set lhcProctorResponderGroupRowStatus 1.5.255.1.10x01.0xc0.0xf9.0x00.0x00.0x01 createAndGo

Within that responder group, create two expected responders to represent the two AMCs. (shelf 1 slot 5 site 255 instance 1 index 1 MAC 01c0f9000001 ERshelf 1 ERslot 5 ERsite 7) and (shelf 1 slot 5 site 255 instance 1 index 1 MAC 01c0f9000001 ERshelf 1 ERslot 5 ERsite 8) lhccmd set lhcProtorExpectedResponderRowStatus 1.5.255.1.1.0x01.0xc0.0xf9.0x00.0x00.0x01.1.1.5.7 createAndGo lhccmd set lhcProctorExpectedResponderRowStatus 1.5.255.1.1.0x01.0xc0.0xf9.0x00.0x00.0x01.1.1.5.8 createAndGo LHC Instance #2 is created with role responder. (shelf 1 slot 5 site 255 instance 2) lhccmd set lhccmd set lhccmd set lhcRowStatus lhcRole lhcRowStatus 1.5.255.2 1.5.255.2 1.5.255.2 createAndWait responder active

One L2 Interface is created within LHC instance #2, interface #1 for eth0.21. (shelf 1 slot 5 site 255 instance 2 index 1) lhccmd set lhcL2InterfaceRowStatus 1.5.255.2.1 1.5.255.2.1 createAndWait \"eth0.21\"

lhccmd setc lhcL2InterfaceName

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

147

Link Health Check

lhccmd set

lhcL2InterfaceRowStatus 1.5.255.2.1

active

Within interface #1, create an authorized proctor #1 with destination MAC address 01.c0.f9.00.00.01. This AP fields QUERY messages from SCxB #1 (shelf 1 slot 5 site 255 instance 2 index 1 APshelf 1 APslot 1 APsite 255). lhccmd set lhcAuthorizedProctorRowStatus 1.5.255.2.1.0xc0.0xf9.0x00.0x00.0x01.1.1.255 createAndWait lhccmd set lhcAuthorizedProctorGuardTimerEnable 1.5.255.2.1.0xc0.0xf9.0x00.0x00.0x01.1.1.255 lhcAuthorizedProctorRowStatus 1.5.255.2.1.0xc0.0xf9.0x00.0x00.0x01.1.1.255

true

lhccmd set

active

6.8.4

AMC/PMC Module on Carrier Blade Configuration Example


The configuration on an AMC/PMC is similar to a standard payload blade except that there is only a single L2 interface for the base. The two AMC/PMC modules have duplicate configurations except for the site number, so only AMC/PMC #7 is shown here. LHC Instance #1 is created with the role responder. (shelf 1 slot 5 site 7 instance 1) lhccmd set lhccmd set lhccmd set lhcTRowStatus lhcRole lhcRowStatus 1.5.7.1 1.5.7.1 1.5.7.1 createAndWait responder active

One L2 Interface is created within LHC instance #1, interface #1 for eth0.35. (shelf 1 slot 5 site 7 instance 1 index 1) lhccmd set lhcL2InterfaceRowStatus 1.5.7.1.1 lhccmd setc lhcL2InterfaceName lhccmd set lhcL2InterfaceRowStatus 1.5.7.1.1 1.5.7.1.1 createAndWait \"eth0.35\" active

Within interface #1, create a single authorized proctor #1 with destination MAC address 01.c0.f9.00.00.01. This AP fields QUERY messages from the baseboard processor. (shelf 1 slot 5 site 7 instance 1 index 1 MAC 01c0f9000001 APshelf 1 APslot 5 APsite 255)
148 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Link Health Check

lhccmd set lhcAuthorizedProctorRowStatus 1.5.7.1.1.0xc0.0xf9.0x00.0x00.0x01.1.5.255 createAndWait lhccmd set lhcAuthorizedProctorGuardTimerEnable 1.5.7.1.1.0xc0.0xf9.0x00.0x00.0x01.1.5.255 lhccmd set lhcAuthorizedProctorRowStatus 1.5.7.1.1.0xc0.0xf9.0x00.0x00.0x01.1.5.255

true

active

6.8.5

Leaky Bucket Description and Configuration Example


LHC uses a leaky bucket mechanism (described below) to give the user control over the frequency of certain FM notifications. The FM notifications that have this control are: RESPONSE Delinquent RESPONSE Received QUERY Delinquent QUERY Received There are two independent leaky buckets, one that controls the RESPONSE pair of FM notifications and one that controls the QUERY pair of FM notifications. There are two writeable MIB objects to control each leaky bucket: upper threshold (UT) and lower threshold (LT). The UT and LT are controlled on a per-responder group and perauthorized proctor basis. The following description applies to both the RESPONSE leaky bucket and the QUERY leaky bucket, but is described from the RESPONSE leaky bucket perspective. When a proctor sends a QUERY message, a response timer is started. Each time that the response timer expires, if a RESPONSE message has not been received from an expected responder (ER), then a drop is added to the leaky bucket for that ER. If a RESPONSE message is received from an ER, then a drop is removed from the leaky bucket for that ER. The bucket size does not go below zero and does not get larger than the UT. LHC uses an internal variable to track whether the most recent FM notification was "Delinquent" or "Received". If upon adding a

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

149

Link Health Check

drop to the leaky bucket it equals UT and the most recent notification was "Received", then a "Delinquent" notification is generated. If upon removing a drop from the leaky bucket it equals LT and the most recent notification was "Delinquent" then a "Received" notification is generated. By changing the UT and LT values, one can control the frequency of FM notifications such that not every dropped RESPONSE or QUERY is reported and that the reception of a single RESPONSE or QUERY is reported.

6.9

LHC Configuration for ATCA-F120


The following tables are excerpts from the ATCA-F120 LHC configuration, showing the rows for the Authorized Proctors, Responder Groups, and Expected Responders. On the ATCA-F120, there is one LHC instance configured as a proctor. In the following tables, the first five index elements in each row are shelf.slot.site.instance.interface and the next six elements are the multicast address. For this example, the ATCA-F120 is assumed to be in shelf 2 and logical slot 1. Table 6-1 ATCA-F120 Base Interface LHC Configuration
Row Index 2.1.255.1.2.1.192.249.0.0.1.2.2.255 2.1.255.1.1.1.192.249.0.0.1 2.1.255.1.1.1.192.249.0.0.1.2.2.255 2.1.255.1.1.1.192.249.0.0.1.2.3.255 2.1.255.1.1.1.192.249.0.0.1.2.4.255 2.1.255.1.1.1.192.249.0.0.1.2.5.255 2.1.255.1.1.1.192.249.0.0.1.2.6.255 Row Type Authorized Proctor Responder Group Expected Responder Expected Responder Expected Responder Expected Responder Expected Responder Represents Queries from ATCA-F120 in logical slot 2 Queries to other ATCA-F120 and payload blades Response from logical slot 2 ATCA-F120 Response from logical slot 3 payload blade Response from logical slot 4 payload blade Response from logical slot 5 payload blade Response from logical slot 6 payload blade

150

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Link Health Check

Table 6-1 ATCA-F120 Base Interface LHC Configuration (continued)


Row Index 2.1.255.1.1.1.192.249.0.0.1.2.7.255 2.1.255.1.1.1.192.249.0.0.1.2.8.255 2.1.255.1.1.1.192.249.0.0.1.2.9.255 2.1.255.1.1.1.192.249.0.0.1.2.10.255 2.1.255.1.1.1.192.249.0.0.1.2.11.255 2.1.255.1.1.1.192.249.0.0.1.2.12.255 2.1.255.1.1.1.192.249.0.0.1.2.13.255 2.1.255.1.1.1.192.249.0.0.1.2.14.255 2.1.255.1.1.1.192.249.0.0.1.2.15.255 2.1.255.1.1.1.192.249.0.0.1.2.16.255 2.1.255.1.3.1.192.249.0.0.1 2.1.255.1.3.1.192.249.0.0.1.2.101.255 2.1.255.1.3.1.192.249.0.0.1.2.102.255 Row Type Expected Responder Expected Responder Expected Responder Expected Responder Expected Responder Expected Responder Expected Responder Expected Responder Expected Responder Expected Responder Responder Group Expected Responder Expected Responder Represents Response from logical slot 7 payload blade Response from logical slot 8 payload blade Response from logical slot 9 payload blade Response from logical slot 10 payload blade Response from logical slot 11 payload blade Response from logical slot 12 payload blade Response from logical slot 13 payload blade Response from logical slot 14 payload blade Response from logical slot 15 payload blade Response from logical slot 16 payload blade Queries to shelf managers Response from logical slot 101 shelf manager Response from logical slot 102 shelf manager

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

151

Link Health Check

Table 6-2 ATCA-F120 Fabric Interface LHC Configuration


Row Index 2.1.255.1.5.1.192.249.0.0.1.2.2.255 2.1.255.1.4.1.192.249.0.0.1 2.1.255.1.4.1.192.249.0.0.1.2.2.255 2.1.255.1.4.1.192.249.0.0.1.2.3.255 2.1.255.1.4.1.192.249.0.0.1.2.4.255 2.1.255.1.4.1.192.249.0.0.1.2.5.255 2.1.255.1.4.1.192.249.0.0.1.2.6.255 2.1.255.1.4.1.192.249.0.0.1.2.7.255 2.1.255.1.4.1.192.249.0.0.1.2.8.255 2.1.255.1.4.1.192.249.0.0.1.2.9.255 2.1.255.1.4.1.192.249.0.0.1.2.10.255 2.1.255.1.4.1.192.249.0.0.1.2.11.255 2.1.255.1.4.1.192.249.0.0.1.2.12.255 Row Type Authorized Proctor Responder Group Expected Responder Expected Responder Expected Responder Expected Responder Expected Responder Expected Responder Expected Responder Expected Responder Expected Responder Expected Responder Expected Responder Represents Queries from ATCA-F120 in logical slot 2 Queries to other ATCA-F120 and payload blades Response from logical slot 2 ATCA-F120 Response from logical slot 3 payload blade Response from logical slot 4 payload blade Response from logical slot 5 payload blade Response from logical slot 6 payload blade Response from logical slot 7 payload blade Response from logical slot 8 payload blade Response from logical slot 9 payload blade Response from logical slot 10 payload blade Response from logical slot 11 payload blade Response from logical slot 12 payload blade

152

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Link Health Check

Table 6-2 ATCA-F120 Fabric Interface LHC Configuration (continued)


Row Index 2.1.255.1.4.1.192.249.0.0.1.2.13.255 2.1.255.1.4.1.192.249.0.0.1.2.14.255 2.1.255.1.4.1.192.249.0.0.1.2.15.255 2.1.255.1.4.1.192.249.0.0.1.2.16.255 Row Type Expected Responder Expected Responder Expected Responder Expected Responder Represents Response from logical slot 13 payload blade Response from logical slot 14 payload blade Response from logical slot 15 payload blade Response from logical slot 16 payload blade

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

153

Link Health Check

154

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Chapter: 7

SRstackware Introduction
The Switching and Routing stackware (SRstackware) is a protocol suite bundled along with BBS as an installable package on the ATCA blade systems. SRstackware Release 2.1 provides features to perform ATCA-F120 switch configuration and checks the statistics in addition to the protocol stack support. SRstackware Release 2.1 supports the following features and protocols: IEEE 802.1p and IEEE 802.1q VLAN and bridge configuration, IEEE 802.1d - Spanning Tree Protocol (STP) IEEE 802.1w - Rapid Spanning Tree Protocol (RSTP) IEEE 802.1s - Multiple Spanning Tree Protocol (MSTP) IEEE 802.3ad Link Aggregation Control Protocol (LACP) Class of Service (CoS) and Quality of Service (QoS) IGMP Snooping, IGMPv3 Protocol (IGMP) Open Shortest Path First version 2 (OSPFv2) Static routing IEEE 802.1q GVRP, GMRP, GARP protocols Q-in-Q or VLAN Stacking Virtual Router Redundancy Protocol (VRRP) Router Information Protocol (RIPv2) Optical RTM SNMP support Linux OS version Wind River PNE 2.0 support with Broadcom BCM SDK 5.5.5 ATCA-F120 switching blade

7.1

7.2

Configuring SRstackware
SRstackware, after installation, comes up with the default configuration. You can update the configuration using CLI. Refer Appendix A, Related Documentation, on page 201, for the list of CLI documents.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

155

SRstackware

This section describes the configuration for C4100.

7.3

Default Configuration
The SRstackware default configuration creates two bridges one for the base network and another for the fabric network. The switch ports are named as ge# for the 1G switch ports and xe# for the 10G switch ports. These switch ports are accessible using the SRstackware CLI. The base channel and fabric channel are configured as two bridges, with the corresponding VLAN ports associated to each bridge. You can modify the configuration using the SRstackware CLI and store it as default configuration. The default configuration file is saved at /etc/opt/srstackware/config/srs.4K1.<slot#>.cfg. The configuration file is picked up based-on the ATCA-F120 slot number 1 or 2. By default the SRstackware does not enable any protocol on the ports. The following sub sections lists the switch ports and associated VLANs. The VLAN configuration depends on whether ATCA-F120 is placed in slot 1or 2. The default configuration of SRstackware is similar to the configuration of the Centellis BBS release, with very minor differences. Refer Basic Blade Services Software on ATCA-F120 Programmers Reference, for the default configuration.

7.3.1

SLOT1 Configuration
Base Channel
Interface name ge1 ge2 ge3 ge4 ge5 Interface description 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T VLAN(s) assigned 21(u) 21(t), 22(t) 21(u) 21(u) 21(u) BBS-Switch port Index 2.1.1.1 2.1.1.2 2.1.1.3 2.1.1.4 2.1.1.5 Default Enabled YES NO NO NO NO

Destination Base Interface Extender BC2 - xLink BC3 - Slot 3 BC4 - Slot 4 BC5 - Slot 5

156

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

Interface name ge6 ge7 ge8 ge9 ge10 ge11 ge12 ge13 ge14 ge15 ge16 ge17 ge18 ge19 ge20 ge21 ge22 ge23 ge24 xe1 xe2

Interface description 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T SGMII SGMII SGMII SGMII SERDES SERDES SERDES 1000Base-T XAUI XAUI

Destination BC6 - Slot 6 BC7 - Slot 7 BC8 - Slot 8 BC9 - Slot 9 BC10 - Slot 10 BC11 - Slot 11 BC12 - Slot 12 BC13 - Slot 13 BC14 - Slot 14 BC15 - Slot 15 BC16 - Slot 16 Base RTM uplink1 Base RTM uplink2 Base RTM uplink3 Base RTM uplink4 Base AMC1 Base BBP Base AMC4 UC2/3 AMC Base RTM 10G Uplink 1 Base RTM 10G Uplink 2

VLAN(s) assigned 21(u) 21(u) 21(u) 21(u) 21(u) 21(u) 21(u) 21(u) 21(u) 21(u) 21(u) 93(u) 93(u) 93(u) 93(u) 21(u) 21(t), 22(t) 21(u) 21(u) 93(u) 93(u)

BBS-Switch port Index 2.1.1.6 2.1.1.7 2.1.1.8 2.1.1.9 2.1.1.10 2.1.1.11 2.1.1.12 2.1.1.13 2.1.1.14 2.1.1.15 2.1.1.16 2.1.1.17 2.1.1.18 2.1.1.19 2.1.1.20 2.1.1.21 2.1.1.22 2.1.1.23 2.1.1.24 2.1.1.25 2.1.1.26

Default Enabled NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO YES YES YES YES NO NO

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

157

SRstackware

Fabric Channel
Interface name xe3 xe4 xe5 xe6 xe7 xe8 xe9 xe10 xe11 xe12 xe13 xe14 xe15 xe16 xe17 xe18 xe19 xe20 xe21 ge25 ge26 ge27 ge28 ge29 ge30 ge31 Interface description 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 SERDES SERDES 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T VLAN(s) assigned 11(t),12(t) 11(u) 11(u) 11(u) 11(u) 11(u) 11(u) 11(u) 11(u) 11(u) 11(u) 11(u) 11(u) 11(u) 11(u) 91(u) 91(u) 91(u) 91(u) 11(t), 12(t) 11(u) NA NA NA NA NA BBS-Switch port Index 2.1.2.1 2.1.2.2 2.1.2.3 2.1.2.4 2.1.2.5 2.1.2.6 2.1.2.7 2.1.2.8 2.1.2.9 2.1.2.10 2.1.2.11 2.1.2.12 2.1.2.13 2.1.2.14 2.1.2.15 2.1.2.16 2.1.2.17 2.1.2.18 2.1.2.19 2.1.2.20 2.1.2.21 2.1.2.22 2.1.2.23 2.1.2.24 2.1.2.25 2.1.2.26 Default Enabled NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO YES YES NO NO NO NO NO

Destination FC1 - xLink FC2 - Slot 3 FC3 - Slot 4 FC4 - Slot 5 FC5 - Slot 6 FC6 - Slot 7 FC7 - Slot 8 FC8 - Slot 9 FC9 - Slot 10 FC10 - Slot 11 FC11 - Slot 12 FC12 - Slot 13 FC13 - Slot 14 FC14 - Slot 15 FC15 - Slot 16 Fabric RTM 10G Uplink 1 Fabric RTM 10G Uplink 2 Fabric RTM 10G Uplink 3 Fabric RTM 10G Uplink 4 Fabric BBP Fabric AMC4 Not Connected Not Connected Not Connected Not Connected Not Connected

158

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

Interface name ge32 ge33 ge34 ge35 ge36 ge37 ge38 ge39 ge40 ge41 ge42 ge43 ge44 ge45 ge46 ge47 ge48

Interface description 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T SERDES SERDES SERDES SERDES SERDES SERDES SERDES SERDES SERDES

Destination Not Connected Not Connected Not Connected Not Connected Not Connected Not Connected Not Connected Not Connected Fabric AMC1 5 Fabric AMC1 1 Fabric AMC1 2 Fabric AMC1 3 Fabric AMC1 4 Fabric RTM Uplink 1 Fabric RTM Uplink 2 Fabric RTM Uplink 3 Fabric RTM Uplink 4

VLAN(s) assigned NA NA NA NA NA NA NA NA 11(u) 11(u) 11(u) 11(u) 11(u) 91(u) 91(u) 91(u) 91(u)

BBS-Switch port Index 2.1.2.27 2.1.2.28 2.1.2.29 2.1.2.30 2.1.2.31 2.1.2.32 2.1.2.33 2.1.2.34 2.1.2.35 2.1.2.36 2.1.2.37 2.1.2.38 2.1.2.39 2.1.2.40 2.1.2.41 2.1.2.42 2.1.2.43

Default Enabled NO NO NO NO NO NO NO NO YES YES YES YES YES NO NO NO NO

VLAN Configuration
VLAN ID 21 22 BBS Switch port Index 2.1.1.21 2.1.1.22

Description BaseInterface-1 BaseInterface-2

Tagged ports ge1, ge2, ge22 ge2, ge22

Untagged ports ge3-ge16, ge21,ge23,ge24 none

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

159

SRstackware

VLAN ID 93 11 12 91

Description Base RTM 1 Fabric Interface-1 Fabric Interface-2 Fabric RTM 1

Tagged ports none xe3,ge25 xe3,ge25

Untagged ports ge17-ge20, xe1, xe2 xe4-xe21,ge40ge48,ge26 none xe18-xe21,ge45-ge48

BBS Switch port Index 2.1.1.93 2.1.2.11 2.1.2.12 2.1.2.91

7.3.2

SLOT2 Configuration
Base Channel
Interface name ge1 ge2 ge3 ge4 ge5 ge6 ge7 ge8 ge9 ge10 ge11 ge12 ge13 ge14 ge15 ge16 ge17 Interface description 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T SGMII VLAN(s) assigned 22(u) 21(t), 22(t) 22(u) 22(u) 22(u) 22(u) 22(u) 22(u) 22(u) 22(u) 22(u) 22(u) 22(u) 22(u) 22(u) 22(u) 94(u) BBS-Switch port Index 2.2.1.1 2.2.1.2 2.2.1.3 2.2.1.4 2.2.1.5 2.2.1.6 2.2.1.7 2.2.1.8 2.2.1.9 2.2.1.10 2.2.1.11 2.2.1.12 2.2.1.13 2.2.1.14 2.2.1.15 2.2.1.16 2.2.1.17 Default Enabled YES NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO

Destination Base Interface Extender BC2 - xLink BC3 - Slot 3 BC4 - Slot 4 BC5 - Slot 5 BC6 - Slot 6 BC7 - Slot 7 BC8 - Slot 8 BC9 - Slot 9 BC10 - Slot 10 BC11 - Slot 11 BC12 - Slot 12 BC13 - Slot 13 BC14 - Slot 14 BC15 - Slot 15 BC16 - Slot 16 Base RTM uplink1

160

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

Interface name ge18 ge19 ge20 ge21 ge22 ge23 ge24 xe1 xe2

Interface description SGMII SGMII SGMII SERDES SERDES SERDES 1000Base-T XAUI XAUI

Destination Base RTM uplink2 Base RTM uplink3 Base RTM uplink4 Base AMC1 Base BBP Base AMC4 UC2/3 AMC Base RTM 10G Uplink 1 Base RTM 10G Uplink 2

VLAN(s) assigned 94(u) 94(u) 94(u) 22(u) 21(t), 22(t) 22(u) 22(u) 94(u) 94(u)

BBS-Switch port Index 2.2.1.18 2.2.1.19 2.2.1.20 2.2.1.21 2.2.1.22 2.2.1.23 2.2.1.24 2.2.1.25 2.2.1.26

Default Enabled NO NO NO YES YES YES YES NO NO

Fabric Channel
Interface name xe3 xe4 xe5 xe6 xe7 xe8 xe9 xe10 xe11 xe12 xe13 xe14 xe15 xe16 xe17 Interface description 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 VLAN(s) assigned 11(t),12(t) 12(u) 12(u) 12(u) 12(u) 12(u) 12(u) 12(u) 12(u) 12(u) 12(u) 12(u) 12(u) 12(u) 12(u) BBS-Switch port Index 2.2.2.1 2.2.2.2 2.2.2.3 2.2.2.4 2.2.2.5 2.2.2.6 2.2.2.7 2.2.2.8 2.2.2.9 2.2.2.10 2.2.2.11 2.2.2.12 2.2.2.13 2.2.2.14 2.2.2.15 Default Enabled NO NO NO NO NO NO NO NO NO NO NO NO NO NO NO 161

Destination FC1 - xLink FC2 - Slot 3 FC3 - Slot 4 FC4 - Slot 5 FC5 - Slot 6 FC6 - Slot 7 FC7 - Slot 8 FC8 - Slot 9 FC9 - Slot 10 FC10 - Slot 11 FC11 - Slot 12 FC12 - Slot 13 FC13 - Slot 14 FC14 - Slot 15 FC15 - Slot 16

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

Interface name xe18 xe19 xe20 xe21 ge25 ge26 ge27 ge28 ge29 ge30 ge31 ge32 ge33 ge34 ge35 ge36 ge37 ge38 ge39 ge40 ge41 ge42 ge43 ge44

Interface description 10GBase-BX4 10GBase-BX4 10GBase-BX4 10GBase-BX4 SERDES SERDES 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T 1000Base-T SERDES SERDES SERDES SERDES SERDES

Destination Fabric RTM 10G Uplink 1 Fabric RTM 10G Uplink 2 Fabric RTM 10G Uplink 3 Fabric RTM 10G Uplink 4 Fabric BBP Fabric AMC4 Not Connected Not Connected Not Connected Not Connected Not Connected Not Connected Not Connected Not Connected Not Connected Not Connected Not Connected Not Connected Not Connected Fabric AMC1 5 Fabric AMC1 1 Fabric AMC1 2 Fabric AMC1 3 Fabric AMC1 4

VLAN(s) assigned 92(u) 92(u) 92(u) 92(u) 11(t), 12(t) 12(u) NA NA NA NA NA NA NA NA NA NA NA NA NA 12(u) 12(u) 12(u) 12(u) 12(u)

BBS-Switch port Index 2.2.2.16 2.2.2.17 2.2.2.18 2.2.2.19 2.2.2.20 2.2.2.21 2.2.2.22 2.2.2.23 2.2.2.24 2.2.2.25 2.2.2.26 2.2.2.27 2.2.2.28 2.2.2.29 2.2.2.30 2.2.2.31 2.2.2.32 2.2.2.33 2.2.2.34 2.2.2.35 2.2.2.36 2.2.2.37 2.2.2.38 2.2.2.39

Default Enabled NO NO NO NO YES YES NO NO NO NO NO NO NO NO NO NO NO NO NO YES YES YES YES YES

162

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

Interface name ge45 ge46 ge47 ge48

Interface description SERDES SERDES SERDES SERDES

Destination Fabric RTM Uplink 1 Fabric RTM Uplink 2 Fabric RTM Uplink 3 Fabric RTM Uplink 4

VLAN(s) assigned 92(u) 92(u) 92(u) 92(u)

BBS-Switch port Index 2.2.2.40 2.2.2.41 2.2.2.42 2.2.2.43

Default Enabled NO NO NO NO

VLAN Configuration
VLAN ID 21 22 94 11 12 92 BBS Switch port Index 2.2.1.21 2.2.1.22 2.2.1.93 2.2.2.11 2.2.2.12 2.2.2.91

Description BaseInterface-1 BaseInterface-2 Base RTM 2 Fabric Interface-1 Fabric Interface-2 Fabric RTM 2

Tagged ports ge2, ge22 ge1,ge2, ge22 none xe3,ge25 xe3,ge25

Untagged ports none ge3-ge16, ge21,ge23,ge24 ge17-ge20, xe1, xe2 none xe4-xe21,ge40ge48,ge26 xe18-xe21,ge45-ge48

7.4

Additional Configuration
The 4400 chassis with the SHM1500 shelf manager needs the following additional configuration, along with the generic default configuration of VLANs for ATCA-F120 as described in Default Configuration. This configuration is automatically done after identifying the chassis during startup. The following sub sections lists the additional configuration for 4400 and 4600 chassis.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

163

SRstackware

7.4.1

SLOT1 Configuration
Base Channel
Interface name ge1 ge22 Interface description 1000Base-T SERDES VLAN(s) assigned 21(t),24(u) 21(t), 22(t),24(t) BBS-Switch port Index 2.1.1.1 2.1.1.22 Default Enabled YES YES

Destination Base Interface Extender Base BBP

VLAN Configuration
BBS Switch port Index 2.1.1.24

VLAN ID 24

Description Shelf Management

Tagged ports ge22

Untagged ports ge1

7.4.2

SLOT2 Configuration
Base Channel
Interface name ge1 ge22 Interface description 1000Base-T SERDES VLAN(s) assigned 22(t),24(u) 21(t), 22(t),24(t) BBS-Switch port Index 2.2.1.1 2.2.1.22 Default Enabled YES YES

Destination Base Interface Extender Base BBP

VLAN Configuration
BBS Switch port Index 2.2.1.24

VLAN ID 24

Description Shelf Management

Tagged ports ge22

Untagged ports ge1

7.4.3

Mapping Physical RTM Interfaces to SRstackware Ports

164

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

7.4.3.1

Copper RTM (RTM-ATCA-F120C)


Refer the following table to map physical interfaces of copper RTM (RTM-ATCA-F120C) to the SRstackware ports. Table 7-1 Mapping Physical Interfaces of RTM-ATCA-F120C to SRstackware Ports
Physical Interface BIX XG1 BIX XG2 FIX XG1 FIX XG2 FIX XG3 FIX XG4 FIX 1 FIX 2 FIX 3 FIX 4 BIX 1 BIX 2 BIX 3 BIX 4 SRstackware Port xe1 xe2 xe20 xe21 xe18 xe19 ge45 ge46 ge47 ge48 ge17 ge18 ge19 ge20

7.4.3.2

Optical RTM (RTM-ATCA-F120-OPT)


Refer the following table to map physical interfaces of optical RTM (RTM-ATCA-F120-OPT) to the SRstackware ports. Table 7-2 Mapping Physical Interfaces of RTM-ATCA-F120-OPT to SRstackware Ports
Physical Interface BIX XG1 BIX XG2 SRstackware Port xe1 xe2

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

165

SRstackware

Table 7-2 Mapping Physical Interfaces of RTM-ATCA-F120-OPT to SRstackware Ports (continued)


Physical Interface BIX GE1 BIX GE2 BIX GE3 BIX GE4 FIX XG1 FIX XG2 FIX XG3 FIX XG4 FIX GE1 FIX GE2 SRstackware Port ge17 ge18 ge19 ge20 xe21 xe20 xe19 xe18 ge45 ge46

7.5

Default Switch Configuration Examples


The following figures show the blades VLan configuration.

166

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

7.5.1

ATCA-F120 Switch Configuration Examples

Figure 7-1

ATCA-F120 Switch Management Fabric Interface Bridge Configuration

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

167

SRstackware

Figure 7-2

ATCA-F120 Switch Management Base Interface Bridge Configuration

7.6

Custom Configuration
You can customize SRstackware after starting the SRstackware CLI using the following steps: 1. Login as root at the ATCA-F120 console or using the SSH session. 2. Run/opt/srstackware/bin/imish. A sample output of the above steps is shown below. root@Slot-7_F-120:/opt/srstackware/bin> ./imish
ZebOS version 7.6.1.e0 IPIRouter 07/14/08 22:33:20

Slot-7_F-120>enable

168

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

Slot-7_F-120#show interface The fabric network has two fabric chipsets connected by a high Gig stacked interface. The first fabric chipset has interfaces from xe3 to xe21. The second fabric chipset has interfaces from ge25 to ge48. You can switch traffic between these chipsets using vlan <vlan ID> hi-gig CLI command.

7.6.1

Enabling Protocols
You can enable protocols on the base or fabric switch port of ATCA-F120. By default, the protocols are disabled. The base and fabric switch ports are associated with two bridges, bridge 1 and bridge 2 that are configured by default. You can enable any protocol on these bridges and enable the respective interfaces for the protocol to function properly on the bridge. Even though STP is enabled on these bridges they are administratively down on the interfaces. In case a bridge is removed from an interface, all the default configurations associated to that interface are also removed. You need to enable the desired VLANs and protocols on those interfaces. It is not advisable to connect the base and fabric channel in the outside network.

7.6.2

Enabling RTM ports


The SRstackware default configuration disables the base and fabric RTM ports, with STP protocol disabled. You can enable the desired ports and configure to avoid any looping.

7.6.3

Sample Configurations
This section provides a quick reference to the sequence of CLI commands for enabling protocols on the RTM ports or back plane ports. To check if the link at ge17 interface is up or down: root@Slot-7_F-120:/opt/srstackware/bin> ./imish
ZebOS version 7.6.1.e0 IPIRouter 07/14/08 22:33:20

Slot-7_F-120>en
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 169

SRstackware

Slot-7_F-120#show interface ge17


Interface ge17 Hardware is Ethernet, address is 00e4.8a1e.0013 (bia 00e4.8a1e.0013) Description: Base RTM Uplink 1 index 5017 metric 1 mtu 1500 duplex-full arp ageing timeout 0 <UP,BROADCAST,RUNNING,MULTICAST> VRF Binding: Not bound Bandwidth 100m VRRP Master of : VRRP is not configured on this interface.

input packets 03877990, bytes 0248191360, dropped 00, multicast packets 0237726 output packets 04159646, bytes 0266498244, multicast packets 0234199 broadcast packets 02986319

In the above sample output, UP in the following line indicates that the interface is administratively up, whereas RUNNING indicates that the interface link is operationally up.
<UP,BROADCAST,RUNNING,MULTICAST>

In case the link is operationally down, the sample output contains the following line.
<UP,BROADCAST,MULTICAST>

To show all the interfaces (switch ports): root@Slot-7_F-120:/opt/srstackware/bin> ./imish


ZebOS version 7.6.1.e0 IPIRouter 07/14/08 22:33:20

Slot-7_F-120>en Slot-7_F-120#show interface You can use include and begin options with this command to display the modified output. To configure a bridge with STP enabled on it: root@Slot-7_F-120:/opt/srstackware/bin> ./imish
170 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

ZebOS version 7.6.1.e0 IPIRouter 07/14/08 22:33:20

Slot-7_F-120>en Slot-7_F-120#conf t
Enter configuration commands, one per line. End with CNTL/Z.

Slot-7_F-120(config)#bridge 2 protocol ieee Slot-7_F-120(config)# To configure a VLAN and associate it to a bridge: root@Slot-7_F-120:/opt/srstackware/bin> ./imish
ZebOS version 7.6.1.e0 IPIRouter 07/14/08 22:33:20

Slot-7_F-120>en Slot-7_F-120#conf t
Enter configuration commands, one per line. End with CNTL/Z.

Slot-7_F-120(config)#bridge 2 protocol ieee vlan-bridge Slot-7_F-120(config)#vlan database Slot-7_F-120(config-vlan)#vlan 23 bridge 1 name VLAN23 state enable You can use the following command to configure the VLAN, with intervlan routing enabled: Slot-7_F-120(config-vlan)#vlan 23 bridge 1 name VLAN23 state enable intervlan-route enable To associate the VLAN 23 (mentioned in the above sample) to a switch port: root@Slot-7_F-120:/opt/srstackware/bin> ./imish
ZebOS version 7.6.1.e0 IPIRouter 07/14/08 22:33:20

Slot-7_F-120>en Slot-7_F-120# Slot-7_F-120#conf t


Enter configuration commands, one per line. End with CNTL/Z.

Slot-7_F-120(config)#interface ge17 Slot-7_F-120(config-if)#switchport mode access Slot-7_F-120(config-if)#switchport access vlan 23


BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 171

SRstackware

To enable STP on the base RTM port 1: To configure an L2 protocol, such as STP, RSTP, or MSTP on a switch port: Bridge level configuration Create a bridge, if required. (By default, the bridges are created as a part of the default configuration.) In case, the interface has to be associated to the VLAN, tag it with vlan-bridge (as mentioned in the code below), while creating the bridge.

Enable the L2 protocol, such as STP, RSTP, or MSTP on the bridge. Interface level configuration Associate the interface with the bridge, it automatically enables the corresponding protocol of the bridge.

Associate the interface to the VLAN. root@Slot-7_F-120:/opt/srstackware/bin> ./imish


ZebOS version 7.6.1.e0 IPIRouter 07/14/08 22:33:20

Slot-7_F-120>enable Slot-7_F-120# Slot-7_F-120#configure terminal


Enter configuration commands, one per line. End with CNTL/Z.

/*** Associate STP to bridge-1 as part of Step (2) ***/ Slot-7_F-120(config)#bridge 1 protocol ieee vlan-bridge /* Go to interface mode */ Slot-7_F-120(config)#interface ge17 /* Remove bridge so that STP can be enabled */ Slot-7_F-120(config-if)# no bridge-group 1 /* Enables STP on the interface as part of Step (3) */ Slot-7_F-120(config-if)# bridge-group 1 /* Re-configure the necessary VLANs; because VLANs disappear if bridge is removed */ Slot-7_F-120(config-if)# switchport mode hybrid

172

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

/* As a part of Step (4) */ Slot-7_F-120(config-if)# switchport hybrid vlan 93 Slot-7_F-120(config-if)# switchport mode hybrid acceptableframe-type all Slot-7_F-120(config-if)# switchport hybrid allowed vlan add 93 egress-tagged disable /* Enable the interface */ Slot-7_F-120(config-if)#no shutdown Slot-7_F-120(config-if)#exit To enable RSTP on the base RTM port 1: Configuring RSTP is similar to configuring STP as mentioned in the above section, To enable STP on the base RTM port 1. To configure RSTP replace ieee with rstp, as in the following code. /* Associate RSTP to bridge-1 */ Slot-7_F-120(config)# bridge 1 protocol rstp vlan-bridge To enable MSTP on the fabric RTM port 1: root@Slot-7_F-120:/opt/srstackware/bin> ./imish
ZebOS version 7.6.1.e0 IPIRouter 07/14/08 22:33:20

Slot-7_F-120>en Slot-7_F-120# Slot-7_F-120#conf t


Enter configuration commands, one per line. End with CNTL/Z.

Slot-7_F-120(config)#bridge 2 protocol mstp Slot-7_F-120(config)#interface ge45 SLOT-7_F-120(config-if) # bridge-group 2 Slot-7_F-120(config-if)#no shutdown Slot-7_F-120(config-if)#

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

173

SRstackware

LACP related configuration: Enable LACP on two base RTM ports as per the following topology.

Only bandwidth, duplex value, vlan, and bridge configuration are propagated to the aggregator port from the first member port. All other desired configuration should be done on the aggregator port (po#/sa#) itself.

Following are the assumptions while configuring channel-group or static-channel-group on a set of ports in different modes: LACP (channel-group) in auto-negotiation mode When the first port is up while adding to aggregator, the aggregator assumes that these are the master port properties. While adding second port onwards to the aggregator, the bandwidth and duplex have to be same as the first port added to aggregator. This requires that the ports have to be linked up and auto negotiated properly to match the first port values. To avoid the above situation, all the ports should be added to aggregator in shutdown state. After adding all the ports, bring up the aggregator port using no shutdown CLI. LACP (channel-group) in manually configured duplex mode All the member ports should match the first ports manual configuration. Static-channel-group in manually configured duplex mode or in auto-negotiation mode All the member ports should be administratively up and in operationally running state and all the member ports should match the first ports configuration.

The following example explains how to configure VLAN 93 in the trunk mode for the interfaces ge17 and ge18, aggregate them, and configure source IP based load balancing on the aggregator.

174

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

This example assumes that VLAN 93 is configured on the interface connected to the payload. Note that the payload side interface settings are not mentioned here. Slot-7_F120>en Slot-7_F120#conf t
Enter configuration commands, one per line. End with CNTL/Z.

Slot-7_F120(config)#interface ge17 Slot-7_F120(config-if)#switchport mode trunk Slot-7_F120(config-if)#switchport trunk allowed vlan add 93 Slot-7_F120(config-if)#switchport trunk native vlan 93 Slot-7_F120(config-if)#channel-group 2 mode active Slot-7_F120(config-if)#exit Slot-7_F120(config)#interface ge18 Slot-7_F120(config-if)#switchport mode trunk Slot-7_F120(config-if)#switchport trunk allowed vlan add 93 Slot-7_F120(config-if)#switchport trunk native vlan 93 Slot-7_F120(config-if)#channel-group 2 mode active Slot-7_F120(config-if)#exit Slot-7_F120(config)#interface po2 Slot-7_F120(config-if)#port-channel load-balance src-ip Slot-7_F120(config-if)# In the above code, interface po2 is the aggregated interface of ge17 and ge18. You can use multiple traffic streams to test the load balancing. The configuration of normal or enhanced load balanced algorithm can be performed only at chipset level.

Save the aggregator configuration only when the aggregator is functionally up, in sync and running. This is very important to have the configuration to be persistent.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

175

SRstackware

To set the IP address to an interface: Slot-7_F120(config)#interface ge17 Slot-7_F120 (config-if)# no switchport Slot-7_F120(config-if)#ip address 11.11.11.1/24 Slot-7_F120(config-if)#exit Slot-7_F120(config)#interface ge18 Slot-7_F120 (config-if)# no switchport Slot-7_F120(config-if)#ip address 12.12.12.1/24 Slot-7_F120(config-if)#exit QoS related configuration: To enable QoS with strict priority: Slot-7_F120> Slot-7_F120>en Slot-7_F120#conf t
Enter configuration commands, one per line. End with CNTL/Z.

Slot-7_F120(config)#mls qos 0 0 0 1 0 2 0 3 0 4 0 5 0 6 0 7 To assign the value 7 to DSCP in the IP header, for source IP address 11.11.11.11 going through ge17. Slot-7_F120(config)#ip-access-list 1 permit 11.11.11.11 0.0.0.255 Slot-7_F120(config)#class-map cmap1 Slot-7_F120(config-cmap)#match access-group 1 Slot-7_F120(config-cmap)#exit Slot-7_F120(config)#policy-map pmap1 Slot-7_F120(config-pmap)#class cmap1 Slot-7_F120(config-pmap-c)#set ip-dscp 7 Slot-7_F120(config-pmap-c)#exit Slot-7_F120(config-pmap)#exit Slot-7_F120(config)#interface ge17 Slot-7_F120(config-if)#service-policy input pmap1 Slot-7_F120(config-if)#exit To block the packets with source IP address 11.11.11.11 going through ge17: Slot-7_F120(config)#ip-access-list 1 deny 11.11.11.11 0.0.0.255 Slot-7_F120(config)#class-map cmap1 Slot-7_F120(config-cmap)#match access-group 1 Slot-7_F120(config-cmap)#exit Slot-7_F120(config)#policy-map pmap1
176 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

Slot-7_F120(config-pmap)#class cmap1 Slot-7_F120(config-pmap-c)#exit Slot-7_F120(config-pmap)#exit Slot-7_F120(config)#interface ge17 Slot-7_F120(config-if)#service-policy input pmap1 Slot-7_F120(config-if)#exit To set the COS value for an ingress packet: SLOT8-F120> SLOT8-F120>en SLOT8-F120#conf t
Enter configuration commands, one per line. End with CNTL/Z.

SLOT8-F120(config)#bridge 1 protocol ieee vlan-bridge SLOT8-F120(config)#vlan database SLOT8-F120(config-vlan)#vlan 2 bridge 1 state enable SLOT8-F120(config-vlan)#exit SLOT8-F120(config)#interface ge17 SLOT8-F120(config-if)#shutdown SLOT8-F120(config-if)#bridge-group 1 spanning-tree disable SLOT8-F120(config-if)#switchport mode trunk SLOT8-F120(config-if)#switchport trunk allowed vlan add 2 SLOT8-F120(config-if)#no shutdown SLOT8-F120(config-if)#exit SLOT8-F120(config)#mls qos 0 0 0 1 0 2 0 3 0 4 0 5 0 6 0 7 SLOT8-F120(config)#class-map cmap1 SLOT8-F120(config-cmap)#match vlan 2 SLOT8-F120(config-cmap)#exit SLOT8-F120(config)#policy-map pmap1 SLOT8-F120(config-pmap)#class cmap1 SLOT8-F120(config-pmap-c)#set cos 6 SLOT8-F120(config-pmap-c)#exit SLOT8-F120(config-pmap)#exit SLOT8-F120(config)#interface ge17 SLOT8-F120(config-if)#service-policy input pmap1 SLOT8-F120(config-if)# To block the packets with source MAC address 00:04:5A:46:98:FF going through ge17.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

177

SRstackware

Slot-7_F120(config)#mac-access-list 2002 deny 0004.5a46.98ff 0000.0000.ffff any 2 Slot-7_F120(config)#class-map cmap1 Slot-7_F120(config-cmap)#match access-group 2002 Slot-7_F120(config-cmap)#exit Slot-7_F120(config)#policy-map pmap1 Slot-7_F120(config-pmap)#class cmap1 Slot-7_F120(config-pmap-c)#exit Slot-7_F120(config-pmap)#exit Slot-7_F120(config)#interface ge17 Slot-7_F120(config-if)#service-policy input pmap1 Slot-7_F120(config-if)#exit IGMP related configuration: Enable IGMP snooping on two base RTM ports using the following topology.

To enable IGMP snooping on the ge17 and ge18 interfaces. Slot-7_F120>en Slot-7_F120#conf t
Enter configuration commands, one per line. End with CNTL/Z.

Slot-7_F120(config)#bridge 1 protocol ieee vlan-bridge Slot-7_F120(config)#interface ge17 Slot-7_F120(config-if)#shutdown Slot-7_F120(config-if)#bridge-group 1


178 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

Slot-7_F120(config-if)#switchport mode access Slot-7_F120(config-if)#no shutdown Slot-7_F120(config-if)#exit Slot-7_F120(config)#interface ge18 Slot-7_F120(config-if)#shutdown Slot-7_F120(config-if)#bridge-group 1 Slot-7_F120(config-if)#switchport mode access Slot-7_F120(config-if)#no shutdown Slot-7_F120(config-if)#exit Slot-7_F120(config)#interface ge19 Slot-7_F120(config-if)#shutdown Slot-7_F120(config-if)#bridge-group 1 Slot-7_F120(config-if)#switchport mode access Slot-7_F120(config-if)#no shutdown Slot-7_F120(config-if)#exit Slot-7_F120(config)#ip igmp snooping Slot-7_F120(config)#interface vlan1.1 Slot-7_F120(config-if)#ip igmp snooping mrouter interface ge19 To enable IGMP proxy on the base RTM ports with the following topology.

To enable IGMP proxy on ge17, ge18, and ge19 interfaces. Slot-7_F120>en Slot-7_F120#conf t
Enter configuration commands, one per line. End with CNTL/Z.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

179

SRstackware

Slot-7_F120(config)#interface ge17 Slot-7_F120(config-if)#shutdown Slot-7_F120(config-if)#no switchport Slot-7_F120(config-if)#ip address 192.168.3.1/24 Slot-7_F120(config-if)#ip igmp proxy-service Slot-7_F120(config-if)#no shutdown Slot-7_F120(config-if)#exit Slot-7_F120(config)#interface ge18 Slot-7_F120(config-if)#shutdown Slot-7_F120(config-if)#no switchport Slot-7_F120(config-if)#ip address 192.168.4.1/24 Slot-7_F120(config-if)#ip igmp mroute-proxy ge17 Slot-7_F120(config-if)#no shutdown Slot-7_F120(config-if)#exit Slot-7_F120(config)#interface ge19 Slot-7_F120(config-if)#shutdown Slot-7_F120(config-if)#no switchport Slot-7_F120(config-if)#ip address 192.168.5.1/24 Slot-7_F120(config-if)#ip igmp mroute-proxy ge17 Slot-7_F120(config-if)#no shutdown Slot-7_F120(config-if)#exit To enable static routing within the following topology.

On the payload blade:


ifconfig fabric0 192.1.1.1/24 route add -net 192.1.2.0/24 gw 192.1.1.2 dev fabric0.5 Slot-7_F120>en Slot-7_F120#conf t Enter configuration commands, one per line. Slot-7_F120(config)#interface xe10 180 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) End with CNTL/Z.

SRstackware

Slot-7_F120(config-if)#no switchport Slot-7_F120(config-if)#ip address 192.1.1.2/24 Slot-7_F120(config-if)#exit Slot-7_F120(config)#interface xe20 Slot-7_F120(config-if)#no switchport Slot-7_F120(config-if)#ip address 192.1.2.2/24 Slot-7_F120(config-if)#no shutdown Slot-7_F120(config-if)#exit Slot-7_F120(config)#ip forwarding

Slot-8_F120>en Slot-8_F120#conf t Enter configuration commands, one per line. Slot-8_F120(config)#interface xe20 Slot-8_F120(config-if)#no switchport Slot-8_F120(config-if)#ip address 192.1.2.1/24 Slot-7_F120(config-if)#no shutdown Slot-8_F120(config-if)#exit Slot-8_F120(config)#ip route 192.1.1.0/24 192.1.2.2 End with CNTL/Z.

To enable static routing through VLAN interfaces within the following topology.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

181

SRstackware

On the payload blade:


vconfig add fabric0 5 ifconfig fabric0.5 192.1.1.1/24 route add -net 192.1.2.0/24 gw 192.1.1.2 dev fabric0.5

On Slot 7: Create VLAN 5 and 6, with intervlan routing enabled, and associate it to Bridge 2.
/** If static routing through VLANs has to be done through ports of two fabric chip sets, then these VLANs should be added on hi-gig using "vlan <vlan-id> hi-gig". **/ Slot-7_F120>en Slot-7_F120#conf t Enter configuration commands, one per line. Slot-7_F120(config)#interface xe10 Slot-7_F120(config-if)#bridge-group 2 spanning-tree disable Slot-7_F120(config-if)#switchport mode trunk Slot-7_F120(config-if)#switchport trunk allowed vlan add 5 Slot-7_F120(config-if)#no shutdown Slot-7_F120(config-if)#exit Slot-7_F120(config)#interface vlan2.5 Slot-7_F120(config-if)#ip address 192.1.1.2/24 Slot-7_F120(config-if)#no shutdown Slot-7_F120(config-if)#exit End with CNTL/Z.

Slot-7_F120(config)#interface xe20 Slot-7_F120(config-if)#bridge-group 2 spanning-tree disable

182

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

Slot-7_F120(config-if)#switchport mode trunk Slot-7_F120(config-if)#switchport trunk allowed vlan add 6 Slot-7_F120(config-if)#no shutdown Slot-7_F120(config-if)#exit Slot-7_F120(config)#interface vlan2.6 Slot-7_F120(config-if)#ip address 192.1.2.2/24 Slot-7_F120(config-if)#no shutdown Slot-7_F120(config-if)#exit Slot-7_F120(config)#ip forwarding

On Slot 8: Create VLAN 6, with intervlan routing enabled, and associate it to Bridge 2.
Slot-8_F120>en Slot-8_F120#conf t Enter configuration commands, one per line. Slot-8_F120(config)#interface xe20 Slot-8_F120(config-if)#bridge-group 2 spanning-tree disable Slot-8_F120(config-if)#switchport mode trunk Slot-8_F120(config-if)#switchport trunk allowed vlan add 6 Slot-8_F120(config-if)#no shutdown Slot-8_F120(config-if)#exit Slot-8_F120(config)#interface vlan2.6 Slot-8_F120(config-if)#ip address 192.1.2.1/24 Slot-7_F120(config-if)#no shutdown Slot-8_F120(config-if)#exit End with CNTL/Z.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

183

SRstackware

Slot-8_F120(config)#ip route 192.1.1.0/24 192.1.2.2

To enable Q-in-Q (VLAN stacking) on the ATCA-F120 with the following topology.

Slot-7_F120>en Slot-7_F120#conf t Enter configuration commands, one per line. End with CNTL/Z.

Slot-7_F120(config)#bridge 2 protocol ieee vlan-bridge Slot-7_F120(config)#vlan database Slot-7_F-120(config-vlan)#vlan 5 bridge 2 state enable Slot-7_F-120(config-vlan)#exit

Slot-7_F120(config)#interface ge45 Slot-7_F120(config-if)#no shutdown Slot-7_F120(config-if)#bridge-group 2 Slot-7_F120(config-if)#switchport mode access Slot-7_F120(config-if)#switchport vlan-stacking customer-edge-port Slot-7_F120(config-if)#switchport access vlan 5 Slot-7_F120(config-if)#exit

Slot-7_F120(config)#interface ge46 Slot-7_F120(config-if)#no shutdown

184

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

Slot-7_F120(config-if)#bridge-group 2 Slot-7_F120(config-if)#switchport mode trunk Slot-7_F120(config-if)#switchport mode trunk allowed vlan add 5 Slot-7_F120(config-if)#switchport vlan-stacking provider-port Slot-7_F120(config-if)#exit

To enable VLAN Classification based on Source IP network with the following topology.

Slot-7_F120>en Slot-7_F120#conf t Enter configuration commands, one per line. End with CNTL/Z.

Slot-7_F120(config)#bridge 2 protocol ieee vlan-bridge Slot-7_F120(config)#vlan database Slot-7_F-120(config-vlan)#vlan 5 bridge 2 state enable Slot-7_F-120(config-vlan)#exit

Slot-7_F120(config)# vlan classifier rule 2 ipv4 192.168.10.0/24 vlan 5 Slot-7_F120(config)# vlan classifier group 10 add rule 2

Slot-7_F120(config)#interface xe10 Slot-7_F120(config-if)#bridge-group 2 Slot-7_F120(config-if)#switchport mode trunk Slot-7_F120(config-if)#switchport trunk allowed vlan add 5 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 185

SRstackware

Slot-7_F120(config-if)# vlan classifier rule 2 ipv4 192.168.10.0/24 vlan 5 Slot-7_F120(config-if)#no shutdown Slot-7_F120(config-if)#exit

OSPF related configuration: Enable OSPF on the two ATCA-F120s using the following topology.

Slot-7_F120>en Slot-7_F120#conf t
Enter configuration commands, one per line. End with CNTL/Z.

Slot-7_F120(config)#interface ge17 Slot-7_F120(config-if)#no switchport Slot-7_F120(config-if)#ip address 192.1.1.1/24 Slot-7_F120(config-if)#exit SLOT-7-F120(config)#router ospf 1 SLOT-7-F120(config-router)#network 192.1.1.0/24 area 1.1.1.1 Slot-8_F120>en Slot-8_F120#conf t
Enter configuration commands, one per line. End with CNTL/Z.

Slot-8_F120(config)#interface ge17 Slot-8_F120(config-if)#no switchport Slot-8_F120(config-if)#ip address 192.1.1.2/24 Slot-8_F120(config-if)#exit SLOT-8-F120(config)#router ospf 1 SLOT-8-F120(config-router)#network 192.1.1.0/24 area 1.1.1.1 RIP related configuration:

186

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

To enable RIP on the two ATCA-F120s with the following topology.

Slot-7_F120>en Slot-7_F120#conf t Enter configuration commands, one per line. Slot-7_F120(config)#interface xe3 Slot-7_F120(config-if)#no switchport Slot-7_F120(config-if)#ip address 192.1.1.1/24 Slot-7_F120(config-if)#exit SLOT-7-F120(config)#router rip SLOT-7-F120(config-router)#network 192.1.1.0/24 Slot-8_F120>en Slot-8_F120#conf t Enter configuration commands, one per line. Slot-8_F120(config)#interface xe3 Slot-8_F120(config-if)#no switchport Slot-8_F120(config-if)#ip address 192.1.1.2/24 Slot-8_F120(config-if)#exit SLOT-8-F120(config)#router rip SLOT-8-F120(config-router)#network 192.1.1.0/24 End with CNTL/Z. End with CNTL/Z.

VRRP related configuration

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

187

SRstackware

To enable VRRP on the following topology.

On Host 1:
ifconfig eth0 192.1.1.3/24 route add -net 192.1.2.0/24 gw 192.1.1.1 dev eth0

On Host 2:
ifconfig eth0 192.1.2.3/24 route add -net 192.1.1.0/24 gw 192.1.2.1 dev eth0

188

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

On ATCA-F120 Slot 7:
Slot-7_F120>en Slot-7_F120#conf t Enter configuration commands, one per line. Slot-7_F120(config)#interface ge45 Slot-7_F120(config-if)#no switchport Slot-7_F120(config-if)#ip address 192.1.1.1/24 Slot-7_F120(config-if)#no shutdown Slot-7_F120(config-if)#exit Slot-7_F120(config)#interface ge46 Slot-7_F120(config-if)#no switchport Slot-7_F120(config-if)#ip address 192.1.2.1/24 Slot-7_F120(config-if)#no shutdown Slot-7_F120(config-if)#exit Slot-7_F120(config)#router vrrp 1 ge45 Slot-7_F120(config-router)# virtual-ip 192.1.1.1 master Slot-7_F120(config-router)# enable Slot-7_F120(config-router)# exit Slot-7_F120(config)#ip forwarding End with CNTL/Z.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

189

SRstackware

On ATCA-F120 Slot 8:
Slot-8_F120>en Slot-8_F120#conf t Enter configuration commands, one per line. Slot-8_F120(config)#interface ge45 Slot-8_F120(config-if)#no switchport Slot-8_F120(config-if)#ip address 192.1.1.2/24 Slot-8_F120(config-if)#no shutdown Slot-8_F120(config-if)#exit Slot-8_F120(config)#interface ge46 Slot-8_F120(config-if)#no switchport Slot-8_F120(config-if)#ip address 192.1.2.2/24 Slot-8_F120(config-if)#no shutdown Slot-8_F120(config-if)#exit Slot-8_F120(config)#router vrrp 1 ge45 Slot-8_F120(config-router)# virtual-ip 192.1.1.1 backup Slot-8_F120(config-router)# enable Slot-8_F120(config-router)# exit Slot-8_F120(config)#ip forwarding End with CNTL/Z.

190

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

With the above configuration: the ge45 interface of ATCA-F120 Slot 7 should be elected as master. the ge45 interface of ATCA-F120 Slot 8 should recognize itself as backup.

Host 1 should be able to ping Host 2 through ge45, ge46 of ATCA-F120 Slot 7. You can shut down ge45 of ATCA-F120 Slot 7, to verify that the VRRP backup router is taking up the role of Master, when the actual is down.
Slot-7_F120(config)#interface ge45 Slot-7_F120(config-if)#shutdown Slot-7_F120(config-if)#exit

Change the route to network 192.1.1.0/24 at Host 2, to go via 192.1.2.2 gateway , instead of 192.1.2.1 gateway.
route add -net 192.1.1.0/24 gw 192.1.2.2 dev eth0

With this configuration: the link of ge45 on ATCA-F120 Slot 7, should be down. the ge45 interface of ATCA-F120 Slot 8, should elect itself as Master now. Host 1 should be able to ping Host 2 through ge45, ge46 of ATCA-F120 Slot 8.

RIPng related configuration: To enable RIPng on the two ATCA-F120s with the following topology:

Slot-7_F120>en Slot-7_F120#conf t Enter configuration commands, one per line. End with CNTL/Z. Slot-7_F120(config)#interface xe3 Slot-7_F120(config-if)#no switchport BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

191

SRstackware

Slot-7_F120(config-if)#ipv6 address fec0:0:0:c400::21/54 Slot-7_F120(config-if)#ipv6 router rip Slot-7_F120(config-if)#exit SLOT-7-F120(config)#router ipv6 rip Slot-8_F120>en Slot-8_F120#conf t Enter configuration commands, one per line. End with CNTL/Z. Slot-8_F120(config)#interface xe3 Slot-8_F120(config-if)#no switchport Slot-8_F120(config-if)#ipv6 address fec0:0:0:c400::22/54 Slot-8_F120(config-if)#ipv6 router rip Slot-8_F120(config-if)#exit SLOT-8-F120(config)#router ipv6 rip

7.7

SNMP Usage Guidelines


For Bridge-based MIBs, the context parameter of the snmp commands (snmpget/snmpset/snmpwalk) is used to specify the bridge_number and the details of the corresponding bridge are processed. The string Bridge to be specified with the context parameter is case-sensitive.

The exact string to be used in the command can be obtained by doing a snmpwalk on the object "srsBridgeName" which is a proprietary mib-object provided by SRstackware. In case of F120,"Bridge1" represents Base switch and "Bridge2" represents Fabric switch.
192 BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

Example of a snmp command:


snmpget -v3 -u admin -n "Bridge1" -l noAuthNoPriv -a MD5 -A adminpwd123 localhost dot1dBaseBridgeAddress.0

Here, the option 'n' is used to specify the context. The above command will return the MAC address used by this bridge when it must be referred to in a unique fashion. For the mibs that do not distinguish based on the bridge, needs to be run with null context (that is -n "") or the context option can be entirely removed from the snmp command. The following are the mibs, among the currently supported mibs for which context needs to be specified as Bridge_number: BRIDGE MIB P-BRIDGE MIB Q-BRIDGE MIB RSTP MIB The following are the mibs, currently supported, that do not need any context to be specified: OSPF MIB RIP MIB IF MIB IEEE8023-LAG-MIB SRS MIB (Emerson Proprietory MIB)

7.8

SNMP Traps Usage Guidelines


SNMP traps and SNMP Inform requests are the two SNMP notifications supported with the SRstackware package. The following sections detail the configurations to be made at SNMP agent and manager in order to facilitate these notifications.

7.8.1

Configuring Agent to Send SNMP Notifications


In order to configure SRstackware to send SNMP traps/Inform requests, a shell command has been provided as part of SRstackware package.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

193

SRstackware

This shell command has the following syntax: #srs_trap_config <IPv4 Address> <NONE/TRAP/INFORM> NONE: Neither SNMP traps nor Inform requests are sent to the SNMP manager running on machine with IPv4 Address. TRAP: Trap messages are sent to SNMP manager running on machine with IPv4 Address. INFORM: SNMP Inform requests are sent to SNMP manager running on machine with IPv4 Address. Example usage of the command: In order to send traps to a system with IP address 10.10.10.10, run the command at the agent as follows: #srs_trap_config 10.10.10.10 TRAP

The keywords NONE/TRAP/INFORM are case sensitive.

7.8.2

Configuring SNMP Manager to Receive SNMP Notifications


The snmptrapd daemon needs to be run at the receiver to receive the SNMP notifications sent by the agent. snmptrapd needs a configuration file to be supplied with proper configuration in order to receive the traps properly. snmptrapd configuration file must have the following two lines: createUser -e <Agent's Engine-ID> admin MD5 adminpwd123 DES authUser log,execute admin Agent's Engine-ID: The Engine-ID with which SNMP Agent is running. To obtain the Agent's Engine-ID, issue the following command:
BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

194

SRstackware

snmpget -v3 -u admin -A adminpwd123 <Agent's IP address> snmpEngineID.0 The result of this command will be in Hex-format and needs to be passed as a single string in the configuration file. Example: snmpget -v3 -u admin -A adminpwd123 10.10.10.20 snmpEngineID.0 Output: SNMP-FRAMEWORK-MIB::snmpEngineID.0 = Hex-STRING: 80 00 1F 88 04 65 6D 65 72 73 6F 6E Now, snmptrapd configuration file will look as follows:
createUser -e 0x80001F8804656D6572736F6E admin MD5 adminpwd123 DES authUser log,execute admin

snmptrapd may be run at the receiver (SNMP manager) as follows (the formatting options can be modified as you desire, refer the man pages of snmptrapd for details): /usr/sbin/snmptrapd -x tcp:localhost:705 -c "<snmptrapd_configuration_file>" -C -f -Le

7.9

Configuring Logs
You can configure SRstackware to store the logs in a specified file or syslog, using the log command. As a general practice the logs are stored in /var/log/messages. As ATCA-F120 has limited flash space, it is recommended to configure ATCA-F120 to store logs on a remote syslog server.
Slot-7_F120>en Slot-7_F120#conf t Enter configuration commands, one per line. Slot-7_F120#log file log_file1 End with CNTL/Z.

By default, logs are stored in var/log/srstackware.log file.


BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C) 195

SRstackware

7.10
7.10.1

Switch Ports
Base Switch Port
Figure 7-3 illustrates the mapping of payload slots to the corresponding base switch ports. Figure 7-3 Base switch port mapping

196

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

SRstackware

7.10.2

Fabric Switch Port


Figure 7-4 illustrates the mapping of payload slots to the corresponding fabric switch ports. Figure 7-4 Fabric switch port mapping

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

197

SRstackware

198

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Chapter 8

HPI-B Software

8.1

Overview
To help ease the implementation of highly available systems with off-the-shelf building blocks, the Service Availability Forum (SA Forum) Hardware Platform Interface (HPI) specification HPIB defines a set of platform-independent programming interfaces to monitor and control systems, such as AdvancedTCA systems, designed to provide high availability. HPI provides applications and middleware a consistent, standardized interface for managing hardware components. This BBS release contains an HPI-B library package. For more information on Emersons HPI-B implementation, refer to the System Management Interface Based on HPI-B Users Guide.

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

199

HPI-B Software

200

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Appendix A
A

Related Documentation

A.1

Emerson Network Power - Embedded Computing Documents


The Emerson Network Power - Embedded Computing publications listed below are referenced in this manual. You can obtain electronic copies of Emerson Network Power - Embedded Computing publications by contacting your local Emerson sales office. For documentation of final released (GA) products, you can also visit the following website: http://www.emersonnetworkpowerembeddedcomputing.com > Resource Center > Technical Documentation Search. This site provides the most up-to-date copies of Emerson Network Power - Embedded Computing product documentation. Table A-1 Emerson Network Power - Embedded Computing Publications
Document Title Centellis 4100 Series Release 1.0 Document Collection Centellis 4100 Installation and Use Centellis 4100: Control via IPMI Programmers Guide System Management Interface Based on HPI-B (Centellis CO 31kX/ 4100) Users Guide ATCA-F120 Installation and Use ATCA-F120: Control via IPMI Programmers Reference RTM-ATCA-F120-OPT Installation and Use RTM-ATCA-F120-OPT: Control via IPMI Programmers Reference RTM-ATCA-F120C Installation and Use RTM-ATCA-F120C: Control via IPMI Programmers Reference SRstackware Intelligent Network Software Protocol Demo Guide SRstackware Intelligent Network Software VRRP Command Reference SRstackware Intelligent Network Software RIP Command Reference SRstackware Intelligent Network Software NSM Command Reference SRstackware Intelligent Network Software Layer 2 Configuration Guide Emerson Publication Number 6806800E09 6806800D82 6806800E11 6806800D84 6806800D06 6806800D18 6806800G29 6806800G30 6806800D07 6806800D17 6806800J40 6806800J42 6806800J45 6806800J47 6806800J48

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

201

Related Documentation

Table A-1 Emerson Network Power - Embedded Computing Publications (continued)


Document Title SRstackware Intelligent Network Software OSPF Command Reference SRstackware Intelligent Network Software Layer 2 Command Reference SRstackware Intelligent Network Software Unicast Configuration Guide SRstackware Intelligent Network Software Troubleshooting Emerson Publication Number 6806800J49 6806800J50 6806800J51 6806800J57

A.2

Related Specifications
For additional information, refer to the following table for related specifications. As an additional help, a source for the listed document is provided. Please note that, while these sources have been verified, the information is subject to change without notice. Table A-2 Related Specifications
Document Title IPMI Specifications http://www.intel.com/design/servers/ipmi IPMI Spec v1.5, Document Revision 1.1, February 20, 2002 Intel Corporation, Hewlett-Packard, DEC, NEC Intel Corporation, Hewlett-Packard, DEC, NEC Intel Corporation, Hewlett-Packard, NEC, Dell Intel Corporation Intel Corporation Source

IPMI v1.5 Addenda, Errata, and Clarifications, Addendum Document Revision 5, January 29, 2004 Intelligent Platform Management Interface Specification v1.0, Document Revision 1.1, November 15 1999 IPMI Implementer's Guide, Draft Version 0.7, September 16, 1998 IPMI Platform Management FRU Information Storage Definition V1.0, September 27, 1999 PCI Industrial Computer Manufacturers Group (PICMG) Specifications http://www.picmg.org 202

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Related Documentation

Table A-2 Related Specifications (continued)


Document Title PICMG 3.0 Revision 1.0 Advanced Telecommunications Computing Architecture (AdvancedTCA) Base Specification, December 2002 PICMG 3.1 Revision 1.0 Specification Ethernet/Fibre Channel for AdvancedTCA Systems, January 2003 Service Availability Forum Specifications http://www.saforum.org SAI-HPI-B.01.01 Hardware Platform Interface Specification SAI-AIS-A.01.01 Application Interface Specification SAI-HPI-SNMP-B.01.01 SAIM-HPI-B.01.01-ATCA SAF HPI-to-AdvancedTCA Mapping Specification SA Forum SA Forum SA Forum SA Forum Source PICMG PICMG

A.3

Additional Resources
The following table lists additional resources which may be useful in working with Emersons AdvancedTCA systems. Table A-3 Additional Resources
Resource OpenHPI open source software project http://openhpi.org OpenHPI 1.0 Manual OpenHPI NetSNMP Subagent Development Manual Net-SNMP http://net-snmp.sourceforge.net/ OpenHPI OpenHPI Source

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

203

Related Documentation

Table A-3 Additional Resources (continued)


Resource Pigeon Point Systems http://www.pigeonpoint.com IPM Sentry Shelf-External Interface Reference IPM Sentry Shelf Manager User Guide OpenIPMI http://openipmi.sourceforge.net/ Pigeon Point Systems Pigeon Point Systems Source

204

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Index

A
active bank 47, 59 Additional Slot1 Configuration Base Channel 164 VLAN Configuration 164 Additional Slot2 Configuration Base Channel 164 VLAN Configuration 164

E
errors, fixing 81 Ethernet interfaces 82 EXT3 81

F
feedback 18 firmware recovery 67 fstype 65

B
baud rate 29 baudrate 77

H
hardware management components 25, 199 hpm commands, remote 95 HPM package contents 87 HPM software 87

C
catastrophic errors 81 commands firmware 70 comments and suggestions 18 configuration 82 DHCP server 83 switch blade 82 Configuring Logs 195 Configuring SRstackware 155 Additional Configuration 163 Custom Configuration 168 Default Configuration 156 Enabling Protocols 169 Enabling RTM ports 169 Sample Configurations 169 contact address 18 conventions 17

I
inactive bank 47

J
jffs2 65 journaling file system 81

L
Long POST 84

M
MIB index 130 MTD 59

N
network conflict 82 network services 82

D
Default Slot1 Configuration Base Channel 156 Fabric Channel 158 VLAN Configuration 159 Default Slot2 Configuration Base Channel 160 Fabric Channel 161 VLAN Configuration 163 defaults, switch port 83 DHCP 55 DHCP server 83 display supported firmware devices 70

O
Open Firmware 30 OpenHPI description 25, 199

P
packages firmware 67 procedure, upgrade firmware image 73

R
Remote hpm commands 95 205

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

Index

S
slot location 82 software HPM (hardware management) 87 OpenHPI 25, 199 specifications, related 202 switch blade configuration 82 switch port configuration 83

U
U-Boot upgrade 28 upgrade procedure, firmware image 73

V
VLAN assignments 83

Y
yaffs2 65

206

BBS on ATCA-F120 with SRstackware Programmers Reference (6806800K68C)

HOW TO REACH LITERATURE AND TECHNICAL SUPPORT:


Tempe, Arizona, USA Munich, Germany +49 89 9608 0 For literature, training, and technical assistance and support programs, visit www.emersonnetworkpowerembeddedcomputing.com

Emerson Network Power. The global leader in enabling Business-Critical Continuity AC Power Systems Connectivity DC Power Systems Embedded Computing Embedded Power Integrated Cabinet Solutions

www.emersonnetworkpowerembeddedcomputing.com

Outside Plant Power Switching & Control Precision Cooling

Services Site Monitoring Surge & Signal Protection

Emerson, Business-Critical Continuity, Emerson Network Power and the Emerson Network Power logo are trademarks and service marks of Emerson Electric Co. All other product or service names are the property of their respective owners. 2010 Emerson Electric Co.

Вам также может понравиться