//****************************************************************************
//                   INTEL CORPORATION PROPRIETARY INFORMATION
//       This software is supplied under the terms of a license agreement or
//       nondisclosure agreement with Intel Corporation and may not be copied
//       or disclosed except in accordance with the terms of that agreement.
//         Copyright (c) 2009-2010 Intel Corporation. All Rights Reserved.
//****************************************************************************
//
//  TITLE: Master.CFG             DATE CREATED:  08/01/2008
//****************************************************************************
//  Revision History:
//
//****************************************************************************

//==================================================================================================
//********************
//Detect baseboard
//********************
PROBE "BASEBOARD_PRODID" "03"
FOUND "BC"  ""

IFSET "BC"
            DISPLAY "Intel(R) Server Board S5500BC detected"
            DISPLAY ""
ELSE
            DISPLAY ""
            DISPLAY "This is either the incorrect FRU/SDR package for this baseboard"
            DISPLAY "or your platform ID is incorrectly programmed."
            DISPLAY ""
ENDIF

IFSET "BC" 

CONFIGURATION   "Master.cfg, Rev 0.21"
DISPLAY         "S5500BC Server Platform FRU & SDR package version 21"
DISPLAY         "Intel(R) Server Boards S5500BC"
DISPLAY         "Copyright (c) 2009-2010 Intel Corporation"
DISPLAY         " "

// MENUTITLE   "Select the function you want to perform:"
// MENU        "SDR"   "Update only the SDR repository"
// MENU        "FRU"   "Update only the FRU repository"
// MENU        "BOTH"  "Update both the FRU and the SDR repository"
// MENU        "ASSET" "Modify the Product Asset Tag"
// MENU        "EXIT1" "Exit"
// MENUPROMPT
DISPLAY " "

SET "SDR"

IFSET "EXIT1"
    DISPLAY "Exiting without making any changes"
ELSE
    // Set auto-detection tag
    SET "Chassis_Auto_Detection"  

    // Set both FRU and SDR
    IFSET "BOTH"
	SET "SDR"
	SET "FRU"
    ENDIF    

    IFSET       "ASSET"
        FRUNAME     "SYSTEM"
        FRUADDRESS  "IMBDEVICE" FF 20
        FRUAREA     "PRODUCT"
        FRUFIELD    "AT" "@STDIN:ASCII"
    ELSE    
    	IFSET   "SDR"
    	
    		//Auto-detection code:
		IFSET "Chassis_Auto_Detection"
		    DISPLAY "Auto detecting chassis type.... "
			DISPLAY "This may take up to two minutes based on configuration. "
			
	            	// Detect PS1
		        PROBE "PING"          "09"      "A0"
		        FOUND "PS1"           "NO_PS1"
		        			
			IFSET   "PS1"	
				// Probing for PS1 FRU
		                PROBE "IMBDEVICE" "02" 
				FOUND "PS1_FRU" "PS1_FRU_INVALID"
				
				IFSET "PS1_FRU"			
					// Check all the chassis PS1
					FRUNAME "SYSTEM"
	        			FRUADDRESS 02
	        			FRUAREA "PRODUCT" VALIDATE PS1_FRU_IPMI
	        							
					IFSET PS1_FRU_IPMI
						FRUAREA "PRODUCT"
						PROBE FRUFIELD "PN" "DPS-600MB Y"
						FOUND "SC5650DP" "NO_SC5650DP"
						
						PROBE FRUFIELD "PN" "DPS-600SB A"
						FOUND "SC5650BRP" "NO_SC5650BRP"
						
						PROBE FRUFIELD "PN" "TDPS-400CB A"
	 					FOUND "SR1630BC" "NO_SR1630BC"
					ELSE
						// Moving this to out clause
						SET "PS1_FRU_INVALID"							
					ENDIF // PS1_FRU_IPMI
				ENDIF // PS1_FRU
		        ENDIF // PS1 PRESENT 

			// Detect PS2	
			PROBE	"PING"		"09"	"A2"
	                FOUND	"PS2" "NO_PS2"
			
			IFSET "PS2"
				// Probing for PS2 FRU
				PROBE "IMBDEVICE" "03" 
				FOUND "PS2_FRU" "PS2_FRU_INVALID"
			
				IFSET "PS2_FRU"			
					// Chassis with two PSs --SC5650BRP
					FRUNAME "SYSTEM"
		        		FRUADDRESS 03
		        		FRUAREA "PRODUCT" VALIDATE PS2_FRU_IPMI
					
					IFSET PS2_FRU_IPMI	
						FRUAREA "PRODUCT"						
						PROBE FRUFIELD "PN" "DPS-600SB A"
						FOUND "SC5650BRP" "NO_SC5650BRP"						
					ELSE
						// Moving this to out clause
						SET "PS2_FRU_INVALID"							
					ENDIF // PS2_FRU_IPMI
				ENDIF // PS2_FRU			
			ENDIF // PS2
	
			// Detect PDB
		        PROBE "PING"              "09"      "AC"
		        FOUND     "PDB"   ""
		        
		        // Report the PS1 and PS2 found
		        IFSET "PDB"
			        IFSET "PS1"
					DISPLAY "Power Supply 1 is present."
				ELSE
					DISPLAY "Power Supply 1 is not present."
				ENDIF // IFSET "PS1"
				
				IFSET "PS2"
					DISPLAY "Power Supply 2 is present."
				ELSE
					DISPLAY "Power Supply 2 is not present."
				ENDIF // IFSET "PS2"
			ENDIF //IFSET "PDB"
		        
			// Report the chassis found
			IFSET "SC5650DP"
				DISPLAY  " "
				DISPLAY "SC5650DP chassis detected"
			ENDIF
			IFSET "SC5650BRP"
				DISPLAY  " "
				DISPLAY "SC5650BRP chassis detected"
			ENDIF
			IFSET "SR1630BC"
				DISPLAY  " "
				DISPLAY "SR1630BC chassis detected"
			ENDIF

		        // Report Power Distribution Board found  
		        IFSET   "PDB"
			        //Probing PDB FRU
		                PROBE "IMBDEVICE" "01" 
		                FOUND "PDB_FRU" " "
		
		                IFSET           "PDB_FRU"
		                	DISPLAY  " "
		                    	DISPLAY "Power Distribution Board FRU Device found."
		                ENDIF           // PDB_FRU
		        ENDIF // PDB FOUND
		
		        // Set the tag for the redundancy
		        IFSET   "PS1" "PS2"
		                SET "REDUNDANT_PS2"
		                DISPLAY "Redundant Power Unit System Found"
		        ENDIF        
		        
			// Fall back mechanism
			IFSET "NO_PS1"
				IFSET "NO_PS2"
					// The chassis with not PSs.
					DISPLAY  " "
					DISPLAY "Power supply is not detected, this could be because power supply auxiliary cable is not connected. Falling back to user selection as auto detection is not possible."
					SET "USER_SELECT"
				ELSE
					// The chassis with PS2 
					IFSET "PS2_FRU_INVALID"
						DISPLAY  " "
						DISPLAY "Power supply 2 FRU is invalid. Falling back to user selection as auto detection is not possible."
						SET "USER_SELECT"
					ELSE
					  	IFSET "NO_SC5650BRP"
					  		DISPLAY  " "
					  		DISPLAY "Power Supply with a valid Intel FRU part number not found. Falling back to user selection as auto detection is not possible."
							SET "USER_SELECT"
						ENDIF//IFSET "NO_SC5650BRP"						
					ENDIF //IFSET "PS2_FRU_INVALID"								
				ENDIF //IFSET "NO_PS2"
			ELSE
				IFSET "NO_PS2"
					// The chassis with PS1 
				      	IFSET "PS1_FRU_INVALID"
				      		IFSET   "PDB"
				      			DISPLAY  " "
					      		DISPLAY "Power supply 1 FRU is invalid. Falling back to user selection as auto detection is not possible."
					      	ELSE
					      		DISPLAY  " "
					      		DISPLAY "Power supply FRU is invalid. Falling back to user selection as auto detection is not possible."
					      	ENDIF
				            	SET "USER_SELECT"
				      	ELSE
				            	IFSET  "NO_SC5650DP" "NO_SR1630BC" "NO_SC5650BRP"
				            		DISPLAY  " "
				            		DISPLAY "Power Supply with a valid Intel FRU part number not found. Falling back to user selection as auto detection is not possible."				              		
							SET "USER_SELECT"
						ENDIF //IFSET  "NO_SC5650DP" "NO_SR1630BC" "NO_SC5650BRP"					
					ENDIF //IFSET  "PS1_FRU_INVALID"					
				ELSE
					// The chassis with two PSs 
					IFSET "PS1_FRU_INVALID"	"PS2_FRU_INVALID"
						DISPLAY  " "		            	
				            	DISPLAY "Power supply 1 and 2 FRUs are invalid. Falling back to user selection as auto detection is not possible."
						SET "USER_SELECT"
				      	ELSE
			      			IFSET "NO_SC5650BRP"
			      				DISPLAY  " "
					  		DISPLAY "Power Supply with a valid Intel FRU part number not found. Falling back to user selection as auto detection is not possible."
							SET "USER_SELECT"
						ENDIF//IFSET "NO_SC5650BRP"				      					
					ENDIF //IFSET "PS1_FRU_INVALID"	"PS2_FRU_INVALID"				
				ENDIF //IFSET  "NO_PS2"
			ENDIF // NO_PS1
		
	  ELSE
	  	SET "USER_SELECT"
	  ENDIF	//IFSET "Chassis_Auto_Detection"

        IFSET "USER_SELECT"
            IFSET "SC5650DP"   	
            	CLEAR "SC5650DP"
            ENDIF
            
            IFSET "SC5650BRP"  
            	CLEAR "SC5650BRP"
            ENDIF
            
            IFSET "SR1630BC"
            	CLEAR "SR1630BC"
            ENDIF
        
            DISPLAY         " "
            MENUTITLE      "Select the Chassis:"
            	MENU           "SC5650DP"      "Intel(R) Entry Server Chassis SC5650DP"
            	MENU           "SC5650BRP"     "Intel(R) Entry Server Chassis SC5650BRP"
            	MENU           "SR1630BC"      "Intel(R) Entry Server Chassis SR1630BC"
	    	MENU           "Other"         "Other Chassis"
	    	// Following choices are for factory testing, should be commented for normal release.
            	//MENU        "SHIP"      "Only Shipping use"
            	//MENU        "FCT"       "Only for FCT use"
            MENUPROMPT
            
        ENDIF //IFSET "USER_SELECT"

	IFSET   "FCT"
            SET "SKIP_PROBE"
        ENDIF

        IFSET   "SHIP"
            SET "SKIP_PROBE"
        ENDIF   
        

	// Probe for sensors and FRU device hardware    
	DISPLAY " "      
	DISPLAY "Probing system for sensors and FRU device hardware."
	DISPLAY " "
			
	// Check for Processor ********************************************************
	DISPLAY "Detecting Processors. Please wait..."              		    
	//Probe CPU type
	PROBE PROCESSOR 01 B3 06 A4
	FOUND "NHM" "NO_NHM"
	IFSET "NO_NHM"
		CLEAR "NO_NHM"
		PROBE PROCESSOR 01 B3 06 A5
		FOUND "NHM" "NO_NHM"
	
		IFSET "NO_NHM"
			PROBE PROCESSOR 01 B3 06 C0
			FOUND "WSM" "NO_WSM"
			IFSET "NO_WSM"
				CLEAR "NO_WSM"	
				// Westmere B0 CPU
	        	PROBE PROCESSOR 01 B3 06 C1
				FOUND "WSM"  "NO_WSM"
			ENDIF
	                                     
			IFSET "NO_WSM"
		        CLEAR "NO_WSM"
				// Westmere B1 CPU
				PROBE PROCESSOR 01 B3 06 C2
				FOUND "WSM"  "NO_WSM"
			ENDIF                   
	                     
			IFSET "NO_WSM"
				DISPLAY "Unable to determine processor model."
				// Assume WSM processor(s) installed
				SET "WSM"
			ENDIF
		ENDIF
	ENDIF //IFSET "NO_NHM"

	// If WSM detected then probe to see if it is a 130 watt part
	IFSET "WSM"
		PROBE PROCESSOR_TDC 01 6E
		
		FOUND "WSM_130W"            
		IFSET "WSM_130W"
			CLEAR "WSM"
		ENDIF
	ENDIF 
	
	IFSET "NHM"
		DISPLAY "Processor 1: Intel(R) Xeon(R) Processor 5500 Series Present."
	ELSE
		IFSET "WSM"
	        DISPLAY "Processor 1: Intel(R) Xeon(R) Processor 5600 Series Present."
		ELSE
			IFSET "WSM_130W"
				DISPLAY "Processor 1: Intel(R) Xeon(R) Processor 5600 Series 130 watt present"
			ENDIF
		ENDIF
	ENDIF //IFSET "NHM"
	
	
	
	PROBE   "PROCESSOR"     2
	FOUND "PROC_2"            ""
	
	IFSET "PROC_2"
		SET "PROC_2_TEMP"
		IFSET "NHM"
	        DISPLAY "Processor 2: Intel(R) Xeon(R) Processor 5500 Series Present."
		ELSE
			IFSET "WSM"
				DISPLAY "Processor 2: Intel(R) Xeon(R) Processor 5600 Series Present."
			ELSE
				IFSET "WSM_130W"
					DISPLAY "Processor 2: Intel(R) Xeon(R) Processor 5600 Series 130 watt present"
				ENDIF
			ENDIF
		ENDIF
	ELSE
		DISPLAY "Processor 2 is not present."
	ENDIF //IFSET "PROC_2"
		
	IFSET "Other"
		//NONE
	ELSE
		IFSET "SHIP"
			//NONE
		ELSE
			SET	"FP_TEMP"
		ENDIF //IFSET "SHIP"	                    
	ENDIF //IFSET "Other"
	  	    
        IFSET   "SKIP_PROBE"
             // Skip probing the hardware 
        ELSE    // Probe the HW
        	
        	IFSET "SR1630BC"
        		// Skip probing HSC 
        	ELSE
	          	// Check for Hot Swap Controller (HSC device) **********************************
			DISPLAY	"Detecting Hot-Swap Backplane Type. Please wait..."  
			DISPLAY "This may take up to two minutes to complete."  
					 
			PROBE  "DEVICE_ID" "00" "C0"
			FOUND "HSC0"	"NO_HSC0"       
			    IFSET  "HSC0"
			    	DISPLAY "Primary HSC is present."
			    	
				// Check the specific type of HSC0 (for SDR types 1 and 2).
				PROBE  "DEVICE_ID" "00" "C0" "A06"
				FOUND "P_R26BPE" ""
				         
			     	PROBE  "DEVICE_ID" "00" "C0" "A08"
				FOUND "P_R26BP" ""
				    
			   	IFSET "P_R26BPE"
					DISPLAY "6 Drive Expander Hot Swap Backplane (HSBP) Detected."
					DISPLAY " "
				ELSE
					IFSET "P_R26BP"
						DISPLAY "6 Drive Hot Swap Backplane (HSBP) Detected."
						DISPLAY " "
					ELSE
						DISPLAY "This is invalid Hot Swap Backplane type for S5500BC."
						DISPLAY " "
					ENDIF // IFSET "P_R26BP"
				ENDIF // IFSET "P_R26BPE"
			    ELSE
			    	// Display if HSBP is not detected
		            	DISPLAY "No Hot Swap Backplane Detected."
		                DISPLAY " "  
			    ENDIF //IFSET  "HSC0"   
		ENDIF //IFSET "SR1630BC"
	            	             
		// Check for Local Control Panel (LCP device) **********************************	    
		DISPLAY	"Detecting Local Control Panel. Please wait..." 
		PROBE	"DEVICE_ID"	"00"	"22"
		FOUND	"LCP"		""
		IFSET	"LCP"
			DISPLAY "Local Control Panel is present."
		ELSE
			DISPLAY "No Local Control Panel Detected."	
		ENDIF //IFSET "LCP"
	ENDIF //IFSET   "SKIP_PROBE"

            //*****************************************************************
	    // Set additional chassis/HW specific SDR tags
	    //*****************************************************************
	   
	    // Set SDR tags for items that cannot be probed but are standard on specific chassis	     

	    //for Chassis SC5650DP(PP5DP)
            IFSET "SC5650DP"  
  		IFSET "WSM"
			SET "SC5650DP_PROC_WSM"
		ELSE //NHM
			SET "SC5650DP_PROC_NHM"
		ENDIF //IFSET "WSM"
		
		//the CPU2 fan is an optional for SC5650DP chassis	
		IFSET "PROC_2"
			SET "CPU2_TACH"
                SET "SC5650DP_2P"
                    	
			IFSET "WSM"
				SET "SC5650DP_2P_PROC_WSM"
			ELSE //NHM
				SET "SC5650DP_2P_PROC_NHM"
			ENDIF //IFSET "WSM"
        ELSE
            SET "SC5650DP_1P"	
        ENDIF // IFSET "PROC2"                
          
		//SET "PS1_STATUS"
		SET "CPU1_TACH"
		SET "SYS_1_TACH_PP5"
		SET "SYS_2_TACH_PP5"
		SET "SYS_3_TACH_PP5"
		SET "FP_NMI"
		SET "INTRUSION"
		
		SET "PROC_1"
			SET "PROC_1_TEMP"
			SET "PS1_FRU"
			IFSET "PS2_FRU"
				CLEAR "PS2_FRU" 
			ENDIF  
			IFSET "PDB_FRU"
				CLEAR "PDB_FRU" 
			ENDIF 
			IFSET "REDUNDANT_PS2"
				CLEAR "REDUNDANT_PS2" 
			ENDIF                  
	    ENDIF		//IFSET "SC5650DP"  
	
	    //for Chassis SC5650BRP(PP5BRP)	
	    IFSET "SC5650BRP"
	    	IFSET "WSM"
			SET "SC5650BRP_PROC_WSM"
		ELSE //NHM
			SET "SC5650BRP_PROC_NHM"
		ENDIF //IFSET "WSM"
		
		//the CPU2 fan is an optional for SC5650BRP chassis
		IFSET "PROC_2"
                    	SET "CPU2_TACH"
                    	SET "SC5650BRP_2P"
                    	IFSET "WSM"
				SET "SC5650BRP_2P_PROC_WSM"
			ELSE //NHM
				SET "SC5650BRP_2P_PROC_NHM"
			ENDIF //IFSET "WSM"
                ELSE
                	SET "SC5650BRP_1P"
                ENDIF // IFSET "PROC2" 
                
		SET "CPU1_TACH"
		SET "SYS_1_TACH_PP5"
		SET "SYS_2_TACH_PP5"
		SET "SYS_3_TACH_PP5"
		SET "FP_NMI"
		SET "INTRUSION"
		
		SET "PROC_1"
                SET "PROC_1_TEMP"

    	        
		IFSET "PS1"
		    SET "SC5650BRP_PS1"		            
                ENDIF

                IFSET "PS2"
		    SET "SC5650BRP_PS2"		    
                ENDIF                 
	      	          
	    ENDIF		//IFSET "SC5650BRP"		
	
	    //for Chassis SR1630BC(HJ2)		
	    IFSET "SR1630BC"
	    	IFSET "WSM"
			SET "SR1630BC_PROC_WSM"
		ELSE //NHM
			SET "SR1630BC_PROC_NHM"
		ENDIF //IFSET "WSM"
		
	    	IFSET "PROC_2"
                     	SET "SR1630BC_2P"
                     	
                     	IFSET "WSM"
				SET "SR1630BC_2P_PROC_WSM"
			ELSE //NHM
				SET "SR1630BC_2P_PROC_NHM"
			ENDIF //IFSET "WSM"
                ELSE
                	SET "SR1630BC_1P"
                ENDIF // IFSET "PROC2" 
                
 		SET "SYS_1_TACH_HJ2"
		SET "SYS_2_TACH_HJ2"
		SET "NO_INTRUSION"
		
		SET "PROC_1"
                SET "PROC_1_TEMP"
		SET "PS1_FRU"
                IFSET "PS2_FRU"
                	CLEAR "PS2_FRU" 
                ENDIF  
                IFSET "PDB_FRU"
                	CLEAR "PDB_FRU" 
                ENDIF 
                IFSET "REDUNDANT_PS2"
                	CLEAR "REDUNDANT_PS2" 
                ENDIF	
	    ENDIF		//IFSET "SR1630BC"		

	    //for Other Chassis
	    IFSET "Other"
	    	DISPLAY     " "
		DISPLAY     "The options provided are intended for OEMs and system integrators to allow the"
		DISPLAY     "thermal control of fans in a third-party chassis. OEMs and system integrators"
		DISPLAY     "must perform their own thermal testing for any changes made using these"
		DISPLAY     "options. Intel cannot provide support for any changes made to fan settings to"
		DISPLAY     "support third-party chassis. Third-party chassis vendors may have recommended"
		DISPLAY     "settings for these configuration options for specific chassis."
		DISPLAY     " "
		DISPLAY     "INTEL ASSUMES NO RESPONSIBILITY FOR UNDESIRED RESULTS WHEN USING ANY CUSTOM FAN CONTROL CONFIGURATION ON INTEL(R) SERVER PRODUCTS"
		DISPLAY     " "
		MENUTITLE   "Select a fan speed control profile for your chassis"
		MENU        "OTHER_FS"    "Full Speed"
		MENU        "OTHER_SR"    "Slow ramp"
		MENU        "OTHER_MR"    "Medium ramp"
		MENU        "OTHER_FR"    "Fast ramp"
		MENUPROMPT

	    	IFSET "WSM"
	    		IFSET "OTHER_FS"
             			SET "OTHER_FS_PROC_WSM"
             		ENDIF //IFSET "OTHER_FS"
             		
             		IFSET "OTHER_SR"
             			SET "OTHER_SR_PROC_WSM"
             		ENDIF //IFSET "OTHER_SR"
             		
             		IFSET "OTHER_MR"
             			SET "OTHER_MR_PROC_WSM"
             		ENDIF //IFSET "OTHER_MR"
             		
             		IFSET "OTHER_FR"
             			SET "OTHER_FR_PROC_WSM"
             		ENDIF //IFSET "OTHER_FR"

		ELSE //NHM
			IFSET "OTHER_FS"
             			SET "OTHER_FS_PROC_NHM"
             		ENDIF //IFSET "OTHER_FS"
             		
             		IFSET "OTHER_SR"
             			SET "OTHER_SR_PROC_NHM"
             		ENDIF //IFSET "OTHER_SR"
             		
             		IFSET "OTHER_MR"
             			SET "OTHER_MR_PROC_NHM"
             		ENDIF //IFSET "OTHER_MR"
             		
             		IFSET "OTHER_FR"
             			SET "OTHER_FR_PROC_NHM"
             		ENDIF //IFSET "OTHER_FR"

		ENDIF //IFSET "WSM"
		
	    	IFSET "PROC_2"
                     	SET "Other_2P"
            	
                     	IFSET "WSM"
                     		IFSET "OTHER_FS"
                     			SET "OTHER_FS_2P_PROC_WSM"
                     		ENDIF //IFSET "OTHER_FS"
                     		
                     		IFSET "OTHER_SR"
                     			SET "OTHER_SR_2P_PROC_WSM"
                     		ENDIF //IFSET "OTHER_SR"
                     		
                     		IFSET "OTHER_MR"
                     			SET "OTHER_MR_2P_PROC_WSM"
                     		ENDIF //IFSET "OTHER_MR"
                     		
                     		IFSET "OTHER_FR"
                     			SET "OTHER_FR_2P_PROC_WSM"
                     		ENDIF //IFSET "OTHER_FR"

			ELSE //NHM
				IFSET "OTHER_FS"
                     			SET "OTHER_FS_2P_PROC_NHM"
                     		ENDIF //IFSET "OTHER_FS"
                     		
                     		IFSET "OTHER_SR"
                     			SET "OTHER_SR_2P_PROC_NHM"
                     		ENDIF //IFSET "OTHER_SR"
                     		
                     		IFSET "OTHER_MR"
                     			SET "OTHER_MR_2P_PROC_NHM"
                     		ENDIF //IFSET "OTHER_MR"
                     		
                     		IFSET "OTHER_FR"
                     			SET "OTHER_FR_2P_PROC_NHM"
                     		ENDIF //IFSET "OTHER_FR"
                     		
			ENDIF //IFSET "WSM"
                ELSE
                	SET "Other_1P"
                ENDIF // IFSET "PROC2" 
                					
		//the CPU1/CPU2/System 1,2,3 fans are optional sensors for other platform
		PROMPT "Is a fan connected to the Processor1 FAN connector?"
	             YES "CPU1_TACH"
	             NO  ""
	        
	        IFSET "PROC_2"    
		    PROMPT "Is a fan connected to the Processor2 FAN connector?"
		         YES "CPU2_TACH"
		         NO  ""
	        ENDIF 		// IFSET "PROC2" 
	            
	        PROMPT "Is a fan connected to the SYS FAN1 connector?"
	             YES "SYS_1_TACH_Other"
	             NO  ""
	            
	        PROMPT "Is a fan connected to the SYS FAN2 connector?"
	             YES "SYS_2_TACH_Other"
	             NO  ""
	            
	        PROMPT "Is a fan connected to the SYS FAN3 connector?"
	             YES "SYS_3_TACH_Other"
	             NO  ""
	             
	        PROMPT "Does the system detect chassis intrusion?"
	             YES "INTRUSION"
	             NO  "NO_INTRUSION"
	        
	        PROMPT "Does the front panel support a NMI button?"
		     YES "FP_NMI"
		     NO  ""  
		
		SET "PROC_1"
                SET "PROC_1_TEMP"
                
                IFSET "PS1_FRU"
                	CLEAR "PS1_FRU" 
                ENDIF            
                IFSET "PS2_FRU"
                	CLEAR "PS2_FRU" 
                ENDIF  
                IFSET "PDB_FRU"
                	CLEAR "PDB_FRU" 
                ENDIF
                IFSET "REDUNDANT_PS2"
                	CLEAR "REDUNDANT_PS2" 
                ENDIF    
	    ENDIF		//IFSET "Other"	

            //For factory test	
	    IFSET "FCT"
                SET "CPU1_TACH"
                SET "CPU2_TACH"
                SET "SYS_1_TACH_FCT"
                SET "SYS_2_TACH_FCT"
                SET "SYS_3_TACH_FCT"   
                SET "INTRUSION"
                SET "FP_NMI"     
                
                SET "PROC_1"
                SET "PROC_1_TEMP"              
                SET "HSC0"
                SET "P_R26BPE"
                SET "P_R26BP"
                SET "PS1_FRU"
                IFSET "PS2_FRU"
                	CLEAR "PS2_FRU" 
                ENDIF  
                IFSET "PDB_FRU"
                	CLEAR "PDB_FRU" 
                ENDIF
                IFSET "REDUNDANT_PS2"
                	CLEAR "REDUNDANT_PS2" 
                ENDIF           
            ENDIF  
        
            //For Shipping	
	    IFSET "SHIP"
	        SET "PROC_1"
                SET "PROC_1_TEMP"
                SET "HSC0"
                SET "P_R26BPE"
                SET "P_R26BP"
                
                IFSET "PS1_FRU"
                	CLEAR "PS1_FRU" 
                ENDIF
                IFSET "PS2_FRU"
                	CLEAR "PS2_FRU" 
                ENDIF
                IFSET "PDB_FRU"
                	CLEAR "PDB_FRU" 
                ENDIF
                IFSET "REDUNDANT_PS2"
                	CLEAR "REDUNDANT_PS2" 
                ENDIF
                
            ENDIF
	
	ENDIF   //IFSET   "SDR"

        
	IFSET   "SDR"
      	    SDRNAME "BC_BMC.sdr"        // Update SDR Repository
            BMC_REFRESH
        ENDIF     // IFSET "SDR"
		
		
        IFSET "FRU"
				
	    FRUNAME     "BC_BMC.fru"
            FRUAREA     "HEADER"
            FRUAREA     "INTERNALUSE"
            FRUAREA     "CHASSIS"
            FRUFIELD    "CT"
            FRUFIELD	"AM1"
            PROMPT      "Do you want to update the chassis info area of the FRU?"
	         YES     "UPD_CHS"
	         NO      ""
                    
            IFSET "UPD_CHS"
             	IFSET "Other"
             	    DISPLAY     " "
	     	    PROMPT      "Do you want to enter the chassis type (HEX byte)?"
	        	YES         "CHASS_T"
	                NO          ""
	            
	            IFSET "CHASS_T"
	            	FRUFIELD    "CT" "@STDIN:ASCII"
	            ENDIF // IFSET "CHASS_T"
	        ENDIF // IFSET "Other"    
                    
                DISPLAY     " "
                PROMPT      "Do you want to enter the chassis serial number?"
                     YES         "CHASS_SN"
                     NO          ""
                        
                IFSET "CHASS_SN"
                    FRUFIELD    "S#" "@STDIN:ASCII"
                ENDIF // IFSET "CHASS_SN"
                    
                DISPLAY     " "
                PROMPT      "Do you want to enter the chassis part number?"
                     YES         "CHASS_PN"
                     NO          ""
                        
                IFSET "CHASS_PN"
                    FRUFIELD    "P#" "@STDIN:ASCII"
                ENDIF // IFSET "CHASS_PN"
                
                DISPLAY     " "
                PROMPT      "Do you want to enter the chassis manufacturer name (Additional Field 1)?"
                 YES     "CHASMN"
                 NO      ""
                    
		IFSET "CHASMN"
			FRUFIELD "AM1" "@STDIN:ASCII"
	    	ENDIF // IFSET "CHASMN"	         
                
            ENDIF // IFSET "UDP_CHS"
            
            
                
	    FRUAREA     "BOARD"
            FRUFIELD    "MN"
	    FRUFIELD    "PN"
	    FRUFIELD    "ID"
			 
            DISPLAY     " "
                
	    FRUAREA     "PRODUCT"
            PROMPT      "Do you want to update the system info area of the FRU?"
	         YES     "UPD_PRD"
	         NO      ""
			 	
	    IFSET "UPD_PRD"
        	FRUFIELD    "MN"
            	FRUFIELD    "PN"	      
            	FRUFIELD    "PV"
            	DISPLAY      " "
            
            	PROMPT      "Do you want to enter the system part number?"
	             YES         "PROD_PN"
	             NO          ""
                        
		IFSET "PROD_PN"
	            FRUFIELD    "P#" "@STDIN:ASCII"
		ENDIF  // IFSET "PROD_PN"
                     
		DISPLAY     " "
		PROMPT      "Do you want to enter the system serial number?"
		     YES         "PROD_SN"
		     NO          ""
                        
		IFSET "PROD_SN"
		    FRUFIELD    "S#" "@STDIN:ASCII"
		ENDIF // IFSET "PROD_SN"
	                
            	DISPLAY     " "
            	PROMPT      "Do you want to enter the asset tag?"
            	     YES         "PROD_ASSET"
            	     NO          ""
		                        
		IFSET "PROD_ASSET"
		    FRUFIELD    "AT" "@STDIN:ASCII"
		ENDIF // IFSET "PROD_ASSET"
            ENDIF  // IFSET "UPD_PRD"
	ENDIF // IFSET "FRU"        
    ENDIF // ASSET TAG
ENDIF // IFSET "EXIT1"


ENDIF   // IFSET "BC"
