//****************************************************************************
//							Intel Corporation
//					  Jones	Farm, Hillsboro, Oregon
//							 (503) 696-8080
//
//				  Intel Corporation Proprietary Information
//		  Copyright (c) 2002-2005 Intel Corporation, All Rights Reserved
//****************************************************************************
//
//	TITLE: MASTER.CFG				DATE CREATED:  02/22/2005
//																			
//	PURPOSE: To control the programming of FRU and SDR areas on the SE7520AF20
//			 server.
//
//	DESCRIPTION:  Often, Alpha and Beta customers need a configuration file
//		that updates the FRU areas on their server without modifying
//		previously programmed serial number and part number information.  This 
//		configuration file provides that functionality, and also allows users 
//		to program the asset tag.
//
//		Additionally this configuration file is designed to reconfigure the 
//		Sensor Data Records that are stored in the Server's SDR repository.  
//		The reconfiguring of SDR's should be performed whenever there are 
//		hardware changes, such as the addition or removal of a fan. 
//		
//		When trying to program the FRU areas, if the user receives an error 
//		concerning the headers not matching, then this is usually because the 
//		FRU file currently loaded on the server is non-compatible with the one 
//		that is being programmed.  If this happens, the user should contact 
//		their vendor's technical support.
//
//	PVCS INFORMATION:
//		$Workfile: $   
//		$Author:   $
//		$Revision: $  
//		$Date:     $
//		$Modtime:  $ 
//
//****************************************************************************
//	Revision History:
//
//****************************************************************************

CONFIGURATION "SE7520AF20 MASTER.Cfg"
DISPLAY "SE7520AF20 FRU & SDR Package version 6.6.2"
DISPLAY "Copyright (c) 2005 Intel Corporation"
DISPLAY " "

PROBE "SYSTEM" "SE7520AF20"
FOUND "SAF2"  ""
IFSET "SAF2"
	//Detect the type of system present
	// HP probing..
		PROBE "BOARD_ID" "P"
		FOUND "HP" ""
		PROBE "BOARD_ID" "2"
		FOUND "NON_HP" ""
		PROBE "BOARD_ID" "D"
		FOUND "HPC" ""
       //End of HP Probing.


	PROBE "BMC_TYPE"
	FOUND "SOMEBMCFOUND" "NOBMCFOUND"

	IFSET "NOBMCFOUND"
		DISPLAY "No BMC detected."
		SET "EXIT2"
	ENDIF

	IFSET "BMC_NBMC"
		DISPLAY "NSC Mini BMC detected."
		DISPLAY " "
	
		MENUTITLE "Select the function you desire to perform:"
		MENU "SDR" "Update just the SDR repository (Recommended)"
		MENU "BOTH" "Update FRUs and the SDR repository and mBMC TBLs"
		MENU "ASSET" "Modify the Asset Tag"
		MENU "EXIT1" "Exit"
		MENUPROMPT
	ENDIF

	IFSET "BMC_SAHALEE"
		MENUTITLE "Select the function you desire to perform:"
		MENU "SDR" "Update just the SDR repository (Recommended)"
		MENU "BOTH" "Update FRUs and the SDR repository"
		MENU "ASSET" "Modify the Asset Tag"
		MENU "EXIT1" "Exit"
		MENUPROMPT
	ENDIF //ifset BMC_sahalee
	DISPLAY " "

	IFSET "EXIT1"
	ELSE
		IFSET "BOTH"
			SET "SDR"
			SET "FRU"
		ENDIF
	
		IFSET "SDR"
			SET "DO_PROBE"
			IFSET "BMC_NBMC"
			       SET "TBL"
			ENDIF			
		ENDIF
		
		MENUTITLE "Select the Chassis type"
		MENU "SC5300BASE" "SC5300BASE"
		MENU "SC5300LX" "SC5300LX"
		MENU "SC5300BRP" "SC5300BRP"
		MENU "OTHER" "Other"
		MENUPROMPT
		
		IFSET "BMC_SAHALEE"

// See if Intel Hot Swap SCSI backplane(s) are present
		PROBE "DEVICE_ID" "00" "C0" "909"
		FOUND "6HDD_SCSI" ""
					
		PROBE "DEVICE_ID" "00" "C2" "908"
		FOUND "4HDD_SCSI" ""
			
		PROBE "DEVICE_ID" "00" "C0" "90A"
		FOUND "6HDD_SATA_P" ""
				
		PROBE "DEVICE_ID" "00" "C2" "90A"
		FOUND "6HDD_SATA_S" ""
	   	
	ENDIF // ifset bmc_sahalee
	//End of HSBP Probing.


		
		IFSET "BMC_SAHALEE"

		DISPLAY " "
		DISPLAY "Sahalee BMC detected."
		//MENUTITLE      "Select your IMM Type"
		//MENU            "IMM_A"   "Intel(R) Management Module - Advanced Edition"
		//MENU            "IMM_P"   "Intel(R) Management Module - Professional Edition"
		//MENUPROMPT

		PROBE "IMBDEVICE" "02"
		FOUND "GCM_NIC" "NO_GCM_NIC"
			IFSET "GCM_NIC"
				DISPLAY "GCM NIC board detected."
				
				PROBE "IMBDEVICE" "01"
				FOUND "IMM_A" "NO_IMM_A"
			ELSE
				DISPLAY "GCM NIC board not detected."
				PROBE "IMBDEVICE" "01"
				FOUND "IMM_P" "NO_IMM_P"
				
			ENDIF //ifset "GCM_NIC"
		
		ENDIF //ifset "sahalee"

		//IFSET "IMM_A"
		//	PROBE	"IMBDEVICE" "02"
	        //     		FOUND	"GCM_NIC"  "NO_GCM_NIC"
		//	IFSET "GCM_NIC"
		//		DISPLAY "GCM NIC board detected."
		//	ELSE
		//		DISPLAY "GCM NIC board not detected."				
		//	ENDIF//ifset GCM_NIC
		//ENDIF //ifset IMM_A
		

		IFSET "DO_PROBE"
			DISPLAY "Probing hardware, please wait..."
			DISPLAY " "

			// If an unsupported BMC version was detected, force an exit.
			IFSET "EXIT2"
				CLEAR "SDR"
				CLEAR "FRU"
				CLEAR "TBL"
				CLEAR "ASSET"
				CLEAR "SC5300BASE"
				CLEAR "SC5300LX"
				CLEAR "SC5300BRP"
				CLEAR "OTHER"
				ERRORLEVEL 01
			ENDIF //ifset exit2
				      
			IFSET "HP"
				DISPLAY "PCI Hot Plug"
			ENDIF

			IFSET "NON_HP"
				DISPLAY "Non HP"
			ENDIF

			IFSET "HPC"
				DISPLAY "HPC (Dobson DEPOP)"
			ENDIF
		
			// Probe the processors
			PROBE "PROCESSOR" 1
			FOUND "PROC_1" ""

			PROBE "PROCESSOR" 2
			FOUND "PROC_2" "" 

			IFSET "PROC_1"
				DISPLAY "Processor 1 detected."
			ELSE
				DISPLAY "Processor 1 not detected."
			ENDIF

			IFSET "PROC_2"
				DISPLAY "Processor 2 detected."
			ELSE
				DISPLAY "Processor 2 not detected."
			ENDIF
			//DISPLAY " "

			IFSET "BMC_SAHALEE"
				PROBE "PING" "00" "22"
				FOUND "FP_LCP" ""
				IFSET "FP_LCP"
					DISPLAY "Local Control Panel detected."
				ENDIF
			ENDIF	// ifseet  bmc_sahalee
			DISPLAY " "

			IFSET "BMC_SAHALEE"
				IFSET "6HDD_SCSI"
				DISPLAY "6HDD SCSI HSBP INSTALLED"
				ENDIF
					
				IFSET "4HDD_SCSI"
				DISPLAY "4HDD SCSI HSBP INSTALLED"
				ENDIF
					
				IFSET "6HDD_SATA_P"
				DISPLAY "PRIMARY 6HDD SATA HSBP INSTALLED"
				ENDIF
					
				IFSET "6HDD_SATA_S"
				DISPLAY "SECONDARY 6HDD SATA HSBP INSTALLED"
				ENDIF
			ENDIF	// ifseet  bmc_sahalee

			IFSET "BMC_SAHALEE"
			       SET "TBL_BMC"
			ENDIF	// ifseet  bmc_sahalee
//------------------------------------------------------------------------------------
			// Handle Intel SC5300BASE chassis.
			// OEMs and Integrators SHOULD NOT customize this. Please customize the
			// 'OTHER' section, located after SC5250-E section.
			IFSET "SC5300BASE"

				// Issue the BMC get power supply info command to determine
				// what power unit is installed.
				SET "INTEL_FP"
				SET "FP_TEMP"
				IFSET "INTEL_FP"
					DISPLAY "INTEL Front Panel detected."
				ENDIF

				IFSET "BMC_SAHALEE"
				DISPLAY " "
				DISPLAY "Probing power unit..."
				PROBE "PING" "05" "4A"
				FOUND "730W_PU" "NOT_730"
				ENDIF

				// If we can't determine the supply, then the BMC Config command
				// isn't supported by the BMC & we can't tell the supplies apart.
				// Notify the user to update the BMC & exit.

				IFSET "730W_PU"
					DISPLAY "730 watt redundant power unit detected."
			
				// Probe for power supply presence. 730W power system can have 2 supplies
					PROBE "PING" "05" "B0"
					FOUND "PS1" ""
	
					PROBE "PING" "05" "B2"
					FOUND "PS2" ""

					IFSET "PS1"
						DISPLAY "Power supply #1 present."
					ELSE
						DISPLAY "Power supply #1 not present."
					ENDIF

					IFSET "PS2"
						DISPLAY "Power supply #2 present."
					ELSE
						DISPLAY "Power supply #2 not present."
					ENDIF
		
					// Check 730W system for redundancy 
					IFSET "PS1"
						IFSET "PS2"
							//DISPLAY "730 watt power unit is redundant."
							SET "REDUND_PU"
							SET "HSRP_REDUND_PU"
						ELSE
                                			//PS1 is only present.
							SET "REDUND_PU1"
							DISPLAY "730 watt power unit is not redundant."
					
						ENDIF // ifset ps2
					ELSE	// if not 730W power unit, assuming power unit is 600W
				        	IFSET "PS2"
							//PS2 is only present.
							SET "REDUND_PU2"
							DISPLAY "730 watt power unit is not redundant."
						ELSE
							DISPLAY "600 watt power unit detected."
							//SET "600W_PU"
						ENDIF //ifset ps2
					ENDIF //ifset ps1

				ENDIF // ifset "730w_pu"

				PROMPT "Is an optional cooling kit installed ?"
				YES    "Redund_FAN"
				NO     "BASE_FAN"
			
			ENDIF // ifset SC5300Base

//---------------------------------------------------------------------------------------------
			// Basic configuration for Intel SC5300LX chassis.
			// OEMs and Integrators should not customize this section.
			IFSET "SC5300LX"
				SET "Redund_FAN"

				SET "INTEL_FP"
				SET "FP_TEMP"
				IFSET "INTEL_FP"
					DISPLAY "INTEL Front Panel detected."
				ENDIF

				// Issue the BMC get power supply info command to determine
				// what power unit is installed.
					
				IFSET "BMC_SAHALEE"
				DISPLAY "Probing power unit..."
				PROBE "PING" "05" "4A"
				FOUND "730W_PU" "600W_PU"
				ENDIF
				// If we can't determine the supply, then the BMC Config command
				// isn't supported by the BMC & we can't tell the supplies apart.
				// Notify the user to update the BMC & exit.
		
				IFSET "600W_PU"
					DISPLAY "Please check Power Unit or Installed unsupported Power Unit on this chassis."
					SET "EXIT2"
				ENDIF

				IFSET "730W_PU"
					DISPLAY "730 watt redundant power unit detected."
			
				// Probe for power supply presence. 730W power system can have 2 supplies
					PROBE "PING" "05" "B0"
					FOUND "PS1" ""
	
					PROBE "PING" "05" "B2"
					FOUND "PS2" ""

					IFSET "PS1"
						DISPLAY "Power supply #1 present."
					ELSE
						DISPLAY "Power supply #1 not present."
					ENDIF

					IFSET "PS2"
						DISPLAY "Power supply #2 present."
					ELSE
						DISPLAY "Power supply #2 not present."
					ENDIF
		
					// Check 730W system for redundancy 
					IFSET "PS1"
						IFSET "PS2"
							//DISPLAY "730 watt power unit is redundant."
							SET "REDUND_PU"
							SET "HSRP_REDUND_PU"
						ELSE
							//PS1 is only present.
						        SET "REDUND_PU1"
							DISPLAY "730 watt power unit is not redundant."
					
						ENDIF // ifset ps2
					ELSE	// if not 730W power unit, assuming power unit is 600W
				        	IFSET "PS2"
							//PS2 is only present.
							SET "REDUND_PU2"
							DISPLAY "730 watt power unit is not redundant."
						ENDIF //ifset ps2
					ENDIF //ifset ps1

				ENDIF // ifset "730w_pu"

			ENDIF     // ifset sc5300lx


//---------------------------------------------------------------------------------------------
			// Basic configuration for Intel SC5300BRP chassis.
			// OEMs and Integrators should not customize this section.
			IFSET "SC5300BRP"
				
				// Issue the BMC get power supply info command to determine
				// what power unit is installed.
				SET "INTEL_FP"
				SET "FP_TEMP"
				IFSET "INTEL_FP"
					DISPLAY "INTEL Front Panel detected."
				ENDIF

				IFSET "BMC_SAHALEE"
				DISPLAY "Probing power unit..."
				PROBE "PING" "05" "4A"
				FOUND "730W_PU" "600W_PU"
				ENDIF
				// If we can't determine the supply, then the BMC Config command
				// isn't supported by the BMC & we can't tell the supplies apart.
				// Notify the user to update the BMC & exit.
		
				IFSET "600W_PU"
					DISPLAY "Please check Power Unit or Installed unsupported Power Unit on this chassis."
					SET "EXIT2"
				ENDIF

				IFSET "730W_PU"
					DISPLAY "730 watt redundant power unit detected."
			
				// Probe for power supply presence. 730W power system can have 2 supplies
					PROBE "PING" "05" "B0"
					FOUND "PS1" ""
	
					PROBE "PING" "05" "B2"
					FOUND "PS2" ""

					IFSET "PS1"
						DISPLAY "Power supply #1 present."
					ELSE
						DISPLAY "Power supply #1 not present."
					ENDIF

					IFSET "PS2"
						DISPLAY "Power supply #2 present."
					ELSE
						DISPLAY "Power supply #2 not present."
					ENDIF
		
					// Check 730W system for redundancy 
					IFSET "PS1"
						IFSET "PS2"
							//DISPLAY "730 watt power unit is redundant."
							SET "REDUND_PU"
							SET "HSRP_REDUND_PU"
						ELSE
							//PS1 is only present.
							SET "REDUND_PU1"
							DISPLAY "730 watt power unit is not redundant."
					
						ENDIF // ifset ps2
					ELSE	// if not 730W power unit, assuming power unit is 600W
				        	IFSET "PS2"
							//PS2 is only present.
						        SET "REDUND_PU2"
							DISPLAY "730 watt power unit is not redundant."
						ENDIF //ifset ps2
					ENDIF //ifset ps1

				ENDIF // ifset 730w__pu

				PROMPT "Is an optional cooling kit installed ?"
					YES    "Redund_FAN"
					NO     "BASE_FAN"

			ENDIF     // ifset sc5300BRP


//-------------------------------------------------------------------------------
			// Basic configuration check for non-Intel chassis.
			// OEMs and Integrators should customize this as needed.
			IFSET "OTHER"

				SET "SSI_FP"
				IFSET "SSI_FP"
					DISPLAY "SSI Front Panel detected."
				ENDIF
						
				DISPLAY "The SE7520AF20 baseboard supports 6 tachometer fans and Chassis intrusion."
				DISPLAY "Please select your fan and chassis configuration"
				DISPLAY " "
				PROMPT "Is a fan Connected to connector FAN1 ?"
					YES  "BB_FAN_1"
					NO   ""
				PROMPT "Is a fan Connected to connector FAN2 ?"
					YES  "BB_FAN_2"
					NO   ""
				PROMPT "Is a fan Connected to connector FAN3 ?"
					YES  "BB_FAN_3"
					NO   ""
				PROMPT "Is a fan Connected to connector FAN4 ?"
					YES  "BB_FAN_4"
					NO   ""
				PROMPT "Is a fan Connected to connector FAN5 ?"
					YES  "BB_FAN_5"
					NO   ""
				PROMPT "Is a fan Connected to connector FAN6 ?"
					YES  "BB_FAN_6"
					NO   ""
				IFSET "PROC_1"
					PROMPT "Is an Intel fansink connected to connector CPU 1 FAN ?"
					YES    "PROC_1_FAN"
					NO     ""
				ENDIF // proc_1
				IFSET "PROC_2"
					PROMPT "Is an Intel fansink connected to connector CPU 2 FAN ?"
					YES    "PROC_2_FAN"
					NO     ""
				ENDIF // proc_2
				IFSET "BMC_NBMC"
				PROMPT "Is a Chassis Intrusion supported?"
					YES  "CHS_INT"
					NO   ""
				ENDIF
			ENDIF // ifset other

//-----------------------------------------------------------------------------------
			// Manufacturer default configuration
			IFSET "MFG"
				CLEAR "FRU"
				DISPLAY "Configuring the system with Manufacture Default..."
			ENDIF

//-----------------------------------------------------------------------------------
			// If an unsupported BMC version was detected, force an exit.
	
			IFSET "EXIT2"
				CLEAR "SDR"
				CLEAR "FRU"
				CLEAR "TBL"
				CLEAR "ASSET"
				CLEAR "SC5300BASE"
				CLEAR "SC5300LX"
     				CLEAR "SC5300BRP"
				CLEAR "OTHER"
				ERRORLEVEL 08
			ENDIF //ifset exit2

		ENDIF // ifset do_probe

//-------------------------------------------------------------------------------
// Load the SDRs. All untagged SDRs will be loaded, as well as all SDRs that have
// a tag that was set TRUE during the processing of this config file.

		IFSET "SDR"
			DISPLAY " "
			IFSET "BMC_SAHALEE"
				SDRNAME "SAF2BMCO.SDR"
			ELSE 
				IFSET "MFG"
					SDRNAME "SAF2mBMC.SDR"
				ELSE
					SDRNAME "SAF2mBMC.SDR"
				ENDIF
			ENDIF
			
			// If Intel chassis, load SmartTool chassis name into the FRU.
			// Do this even if FRU update isn't selected so that all systems
			// will always be updated correctly.

			IFSET "FRU"
				// do nothing if FRU tag set, we'll handle it during normal FRU loading
			ELSE
				IFSET   "SC5300BASE"
					IFSET "BMC_SAHALEE"
					ELSE
						FRUNAME     "SYSTEM"
						FRUADDRESS  "IMBDEVICE" FF 20
						FRUAREA     "CHASSIS"
						FRUFIELD    "AM1" "SC5300BASE"
					ENDIF
				ENDIF
			ENDIF     // ifset fru else

		ENDIF // ifset sdr
	
//-------------------------------------------------------------------------------
// Set the Asset tag if the user selected that in the original menu.
// (User gets a chance to set this during normal FRU loading as well.)

		IFSET "ASSET"
			FRUNAME     "SYSTEM"
			FRUADDRESS  "IMBDEVICE" FF 20
			FRUAREA     "PRODUCT"
			FRUFIELD    "AT" "@STDIN:ASCII"
		ENDIF
		
			
// ------------------------------------------------------------------------------
// Load the FRUs.

		IFSET "FRU" 
		    	IFSET "BMC_NBMC"
			// Don't write over any existing part number or serial number
				FRUNAME   "SAFmBMC2.FRU"
				FRUAREA   "HEADER"
				FRUAREA   "INTERNALUSE"
				FRUAREA   "CHASSIS"
				FRUFIELD  "CT"
				PROMPT "Would you like to enter the chassis serial number?"
				YES    "CHASSN"
				NO     ""
				DISPLAY " "
				IFSET "CHASSN"
					FRUFIELD "S#" "@STDIN:ASCII"
				ENDIF
				PROMPT "Would you like to enter the chassis part number?"
				YES    "CHASPN"
				NO     ""
				DISPLAY " "
				IFSET "CHASPN"
					FRUFIELD "P#" "@STDIN:ASCII"
				ENDIF
				IFSET "SC5300BASE"
					FRUFIELD "AM1" "SC5300BASE"
				ENDIF
	
				FRUAREA  "BOARD"
				FRUFIELD "MD"
				FRUFIELD "MN"
				FRUFIELD "PN"
				FRUFIELD "ID"

				FRUAREA  "PRODUCT"
				FRUFIELD "MN"
				FRUFIELD "PN"
				FRUFIELD "PV"
				PROMPT "Would you like to enter an asset tag?"
				YES    "ASSET"
				NO     ""
				DISPLAY " "
				IFSET "ASSET"
					FRUFIELD "AT" "@STDIN:ASCII"
				ENDIF
				FRUFIELD "ID"
                   	ENDIF //ifset "bmc_mbmc"

			IFSET "BMC_SAHALEE"
				FRUNAME   "SAF2BMC5.FRU"
				FRUAREA   "HEADER"
				FRUAREA   "INTERNALUSE"
				FRUAREA   "CHASSIS"
				FRUFIELD  "CT"
				PROMPT "Would you like to enter the chassis serial number?"
				YES    "CHASSN"
				NO     ""
				DISPLAY " "
				IFSET "CHASSN"
					FRUFIELD "S#" "@STDIN:ASCII"
				ENDIF
				PROMPT "Would you like to enter the chassis part number?"
				YES    "CHASPN"
				NO     ""
				DISPLAY " "
				IFSET "CHASPN"
					FRUFIELD "P#" "@STDIN:ASCII"
				ENDIF

				IFSET "SC5300BASE"
					FRUFIELD "AM1" "SC5300BASE"
				ENDIF

				IFSET "SC5300LX"
					FRUFIELD "AM1" "SC5300LX"
				ENDIF

				IFSET "SC5300BRP"
					FRUFIELD "AM1" "SC5300BRP"
				ENDIF
	
				FRUAREA  "BOARD"
				FRUFIELD "MD"
				FRUFIELD "MN"
				FRUFIELD "PN"
				FRUFIELD "ID"

				FRUAREA  "PRODUCT"
				FRUFIELD "MN"
				FRUFIELD "PN"
				FRUFIELD "PV"
				PROMPT "Would you like to enter an asset tag?"
				YES    "ASSET"
				NO     ""
				DISPLAY " "
				IFSET "ASSET"
					FRUFIELD "AT" "@STDIN:ASCII"
				ENDIF
				FRUFIELD "ID"
								
				IFSET "IMM_A"
					FRUNAME  "IMMABMC4.FRU"
					FRUAREA  "HEADER"
              ///////////////////////////////////////////////////////////////////
              //
              //                      **** WARNING ****
              //
              // WARNING TO FRU & SDR CONFIGURATION FILE PROGRAMMERS !!!!
              // NEVER, NEVER, NEVER INCLUDE THE FRU PROGRAMMING STATEMENT:
              //      FRUAREA  "INTERNALUSE"
              // IN YOUR CONFIG FILE FOR THE IMM BOARD. IF YOU DO, YOU WILL WIPE 
              // OUT THE PLATFORM INSTANCE INFORMATION STORED BY THE BMC AND BMC
              // WILL ALWAYS COMES WITH A PLATFORM INSTANCE MISMATCH.
              //
              // You have been warned.
              ///////////////////////////////////////////////////////////////////
					FRUAREA  "BOARD"
					FRUFIELD "MD"
					FRUFIELD "MN"
					FRUFIELD "PN"
					FRUFIELD "ID"
					// Detect if GCM NIC is present
					IFSET "GCM_NIC"
					FRUNAME  "IMMAGCM3.FRU"
					FRUAREA  "HEADER"
///////////////////////////////////////////////////////////////////
//
//                      **** WARNING ****
//
// WARNING TO FRU & SDR CONFIGURATION FILE PROGRAMMERS !!!!
// NEVER, NEVER, NEVER INCLUDE THE FRU PROGRAMMING STATEMENT:
//      FRUAREA  "INTERNALUSE"
// IN YOUR CONFIG FILE FOR THE GCM BOARD. IF YOU DO, YOU WILL WIPE 
// OUT THE MAC ADDRESS STORED THERE AND SERVER MANAGEMENT WILL NO 
// LONGER BE ABLE TO COMMUNICATE VIA LAN.
//
// You have been warned.
///////////////////////////////////////////////////////////////////
        
					// FRU Board area
					FRUAREA  "BOARD"
					FRUFIELD "MD"        
					// FRUFIELD "MN"     // Reserved for OEM use
					FRUFIELD "PN"
					FRUFIELD "ID" 
					FRUFIELD "AM1" 
					FRUFIELD "AM2" 
					FRUFIELD "AM3" 

					// FRU Product area
					FRUAREA     "PRODUCT"
					// FRUFIELD "MN"     // Reserved for OEM use
					FRUFIELD "PN"
					FRUFIELD "PV"

//					PROMPT      "Would you like to enter an GCM asset tag?"
//					  YES         "ASSET"
//					  NO          ""
//					DISPLAY     " "
//					IFSET       "ASSET"
//				        FRUFIELD    "AT" "@STDIN:ASCII"
//					ENDIF

					FRUFIELD    "ID" 
					FRUFIELD    "AM1" 
					ENDIF //ifset "gcm_nic"
				ENDIF //ifset "IMM_A"

				IFSET "IMM_P"
					FRUNAME    "IMMPBMC4.FRU"
					FRUAREA    "HEADER"
              ///////////////////////////////////////////////////////////////////
              //
              //                      **** WARNING ****
              //
              // WARNING TO FRU & SDR CONFIGURATION FILE PROGRAMMERS !!!!
              // NEVER, NEVER, NEVER INCLUDE THE FRU PROGRAMMING STATEMENT:
              //      FRUAREA  "INTERNALUSE"
              // IN YOUR CONFIG FILE FOR THE IMM BOARD. IF YOU DO, YOU WILL WIPE 
              // OUT THE PLATFORM INSTANCE INFORMATION STORED BY THE BMC AND BMC
              // WILL ALWAYS COMES WITH A PLATFORM INSTANCE MISMATCH.
              //
              // You have been warned.
              ///////////////////////////////////////////////////////////////////
					FRUAREA    "BOARD"
					FRUFIELD   "MD"
					FRUFIELD   "MN"
					FRUFIELD   "PN"
					FRUFIELD   "ID"

				ENDIF 	// ifset "IMM_P"

				// SCSI Hot Swap Controller (HSC) FRUs
					IFSET "6HDD_SCSI"
	 	 				FRUNAME  "6SCSIHS2.FRU"
						FRUAREA  "HEADER"
						FRUAREA  "INTERNALUSE"
						FRUAREA  "BOARD"
						FRUFIELD "MD"
						FRUFIELD "MN"
						FRUFIELD "PN"
						FRUFIELD "ID"
					ENDIF

					IFSET "6HDD_SATA_P"
						FRUNAME  "6SATAHS2.FRU"
						FRUAREA  "HEADER"
						FRUAREA  "INTERNALUSE"
						FRUAREA  "BOARD"
						FRUFIELD "MD"
						FRUFIELD "MN"
						FRUFIELD "PN"
						FRUFIELD "ID"
					ENDIF
					
					IFSET "4HDD_SCSI"
	 	 				FRUNAME  "4SCSIHS2.FRU"
						FRUADDRESS "IMBDEVICE" 00 C2
						FRUAREA    "HEADER"
						FRUAREA    "INTERNALUSE"
						FRUAREA    "BOARD"
						FRUFIELD   "MD"
						FRUFIELD   "MN"
						FRUFIELD   "PN"
						FRUFIELD   "ID"
					ENDIF
					
					IFSET "6HDD_SATA_S"
						FRUNAME  "6SATAHS2.FRU"
						FRUADDRESS "IMBDEVICE" 00 C2
						FRUAREA    "HEADER"
						FRUAREA    "INTERNALUSE"
						FRUAREA    "BOARD"
						FRUFIELD   "MD"
						FRUFIELD   "MN"
						FRUFIELD   "PN"
						FRUFIELD   "ID"
					ENDIF
		
			ENDIF // ifset BMC_SAHALEE
		ENDIF // FRU

		// End of FRU processing 
// -----------------------------------------------------
// Start of TBL processing
// Format : MBMC_PGM  "HEX_WORD" "HEX_BYTE"
// The HEX_WORD is the 16 bit flash offset to be programmed, 
// while the HEX_BYTE is the 8 bit data to be written to the flash offset.
		IFSET "TBL"
				// SET NIC LOM slave address To mBMC
				MBMC_PGM 0001 86
				// Sensor Interface Enable	
				MBMC_PGM 0003 1C
				// Setup Id LED color GREEN 1 Hz, Fault LED color RED 1 Hz 	
				MBMC_PGM 0004 51
				// Close LAN session, SMBus isolation is disabled	
				MBMC_PGM 0005 80
				// Configure DEIO01 --output level 1, CMOS clear 
				MBMC_PGM 0006 A2
				//FRB_HALT, FP_Lockout (0C->0F)
				MBMC_PGM 0008 0F
				// Start-up delay is 3 sec	
				MBMC_PGM 0009 1E
				// Sensor Polling Delay is 0.5 sec.	
				MBMC_PGM 000A 05 
				// LED color conversion control, enable LED2 blinking and solid color conversion	
				MBMC_PGM 0016 30
				// solid color conversion, map Off to LEDC2 active and reversely 	
				MBMC_PGM 0019 B1 
				MBMC_PGM 001A B1 
				//FRB WD Timer disable(C8->00)	
				MBMC_PGM 0020 00 
				//FRB WD Timer Timeout, 20 seconds
				MBMC_PGM 0021 C8 
				// TRIS/ENBL config
				MBMC_PGM 0022 BA
				// NMI signal low level, Chassis always power-off after AC resume
                                //IANA ID 0x157
				MBMC_PGM 0023 57
				MBMC_PGM 0024 01	
				MBMC_PGM 0026 00
				MBMC_PGM 0038 FF //(0->FF)
				//Built-in SDR enable(0->01)
				MBMC_PGM 003A 01
				// Enable PEF and Change LED default,oppisite color priority, blinking  is 5, solid is 4. 
				// Don't log PET generated.(IPMI PET, LAN Leash Lost)	(08->09)
				MBMC_PGM 003B 09
				// Don't log PEF action.	
				MBMC_PGM 003C C2
				
				// Manufacture default configuration table loading.
				IFSET "MFG"
					TABLENAME "SAF2MSAT.TBL"
					TABLENAME "SAF2MSIT.TBL"
				ELSE
					TABLENAME "SAF2SAT8.TBL"
				ENDIF
				// Sensor Bridge Table TBL File, Sensor Init Table & PEF File
				IFSET "INTEL_FP"
					TABLENAME "SAF2SBT1.TBL"
					TABLENAME "SAF2SIT5.TBL"
					PEFNAME "SAF2IFP3.PEF"
				ENDIF
				IFSET "SSI_FP"
					TABLENAME "SAF2MSIT.TBL"
					PEFNAME "SAF2SFP3.PEF"
				ENDIF
				BMC_REFRESH
   		 ENDIF // ifset tbl
		// End of TBL processing 

		IFSET "TBL_BMC"
				// Setup Id LED color GREEN 1 Hz, Fault LED color RED 1 Hz	
				MBMC_PGM 0004 11
				MBMC_PGM 0016 30
				// solid color conversion, map Off to LEDC2 active and reversely	
				MBMC_PGM 0019 E0 
				MBMC_PGM 001A E0
				MBMC_PGM 0038 FF 

				BMC_REFRESH
		ENDIF //ifset TBL_BMC


		DISPLAY "Loading system files..."
		DISPLAY " "

	ENDIF // ifset EXIT1

ELSE	// ifset saf2
	DISPLAY "Error, incorrect server platform found."  
	DISPLAY "This configuration package is for use with the SE7520AF20 servers, but "
	DISPLAY "a different server platform was found.  Please use the appropriate"
	DISPLAY "server package for this server."
	ERRORLEVEL 01
ENDIF	// ifset saf2

