diff options
| author | Christian Geddes <crgeddes@us.ibm.com> | 2019-02-18 18:03:33 -0600 |
|---|---|---|
| committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2019-02-20 09:21:31 -0600 |
| commit | 7c42c4cac7170fec81761a8ae35a1e110a38dcc2 (patch) | |
| tree | 3345687f8545ee4ed098a9603b6ec1245cd73c16 /src | |
| parent | 00325c6de8baa143c8e06e9324d6ba997465aa1f (diff) | |
| download | talos-hostboot-7c42c4cac7170fec81761a8ae35a1e110a38dcc2.tar.gz talos-hostboot-7c42c4cac7170fec81761a8ae35a1e110a38dcc2.zip | |
Update simics build and pull in Axone binary to pnor generation
Previously we were using some CUMULUS binaries as placeholders until
Axone versions were available. We now use the Axone version of the SBE
and HW ref images. Also for MEMD we will now just fill it in with
zeroed out ECC (all FF's w/ 0 for ECC bit). No plans to use that MEMD now
but setting it aside for DDIMM config overwrites. When we pulled in the
new SBE image we hit issues with the VPD being used not having the correct
sizes. MVPD for Axone is not complete yet so until that gets resolved we
will disable sbe updates for Axone.
RTC: 197497
Change-Id: I470f44d297179556d7c2eb7b210c91a2cd38f23c
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/72090
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Matt Derksen <mderkse1@us.ibm.com>
Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src')
| -rw-r--r-- | src/build/citest/etc/simbuild | 2 | ||||
| -rwxr-xr-x | src/build/mkrules/hbfw/img/makefile | 27 | ||||
| -rwxr-xr-x | src/build/simics/standalone.simics | 5 | ||||
| -rwxr-xr-x | src/build/tools/hb | 4 | ||||
| -rw-r--r-- | src/usr/isteps/istep07/call_mss_freq.C | 8 | ||||
| -rw-r--r-- | src/usr/isteps/istep10/call_host_slave_sbe_update.C | 5 |
6 files changed, 25 insertions, 26 deletions
diff --git a/src/build/citest/etc/simbuild b/src/build/citest/etc/simbuild index 6895bf9c4..f05705d10 100644 --- a/src/build/citest/etc/simbuild +++ b/src/build/citest/etc/simbuild @@ -1 +1 @@ -/gsa/ausgsa/projects/h/hostboot/simbuild/02_07_19_ab9492_simics.tar.gz +/gsa/ausgsa/projects/h/hostboot/simbuild/02_18_19_a32d28_simics.tar.gz
\ No newline at end of file diff --git a/src/build/mkrules/hbfw/img/makefile b/src/build/mkrules/hbfw/img/makefile index d7bb8ee99..e7ab96c47 100755 --- a/src/build/mkrules/hbfw/img/makefile +++ b/src/build/mkrules/hbfw/img/makefile @@ -213,7 +213,7 @@ BUILD_TYPE_PARAMS = --build-type fspbuild .elif(${PNOR_LAYOUT_SELECTED} == 2) GEN_DEFAULT_BIN_FILES = HBBL=${HBBL_IMG},HBB=${HBB_IMG},HBI=${HBI_IMG},HBRT=${HBRT_IMG},HBEL=EMPTY,GUARD=EMPTY,GLOBAL=EMPTY,CVPD=EMPTY,MVPD=EMPTY,DJVPD=EMPTY,RINGOVD=EMPTY,SBKT=EMPTY,EECACHE=EMPTY,FIRDATA=EMPTY,MEMD=${${ZZ_MEMD_IMG}:P} .else - GEN_DEFAULT_BIN_FILES = HBBL=${HBBL_IMG},HBB=${HBB_IMG},HBI=${HBI_IMG},HBRT=${HBRT_IMG},HBEL=EMPTY,GUARD=EMPTY,GLOBAL=EMPTY,CVPD=EMPTY,MVPD=EMPTY,DJVPD=EMPTY,RINGOVD=EMPTY,SBKT=EMPTY,MEMD=${${ZZ_MEMD_IMG}:P} + GEN_DEFAULT_BIN_FILES = HBBL=${HBBL_IMG},HBB=${HBB_IMG},HBI=${HBI_IMG},HBRT=${HBRT_IMG},HBEL=EMPTY,GUARD=EMPTY,GLOBAL=EMPTY,CVPD=EMPTY,MVPD=EMPTY,DJVPD=EMPTY,RINGOVD=EMPTY,SBKT=EMPTY,MEMD=EMPTY} .endif DEFAULT_PARAMS = --build-all --emit-eccless ${TARGET_TEST:b--test} ${HB_STANDALONE:b--hb-standalone} \ ${CONFIG_SECUREBOOT:b--secureboot} --systemBinFiles ${GEN_DEFAULT_BIN_FILES} \ @@ -272,10 +272,9 @@ clobber_cp_hbfiles: ################################################# SBE_BUILD_SCRIPT = ${buildSbePart.pl:P} -NIMBUS_SBE_IMG = p9n.SbePartition.bin +NIMBUS_SBE_IMG = p9n.SbePartition.bin CUMULUS_SBE_IMG = p9c.SbePartition.bin -# TODO RTC 197497 - Use Axone SBE image once it exists -#AXONE_SBE_IMG = p9a.SbePartition.bin +AXONE_SBE_IMG = p9a.SbePartition.bin P9N_EC20_BIN = ${SBEI_OBJPATH:Fp9n_20.sbe_seeprom.hdr.bin} P9N_EC21_BIN = ${SBEI_OBJPATH:Fp9n_21.sbe_seeprom.hdr.bin} @@ -284,13 +283,12 @@ P9N_EC23_BIN = ${SBEI_OBJPATH:Fp9n_23.sbe_seeprom.hdr.bin} P9C_EC13_BIN = ${SBEI_OBJPATH:Fp9c_13.sbe_seeprom.hdr.bin} P9C_EC11_BIN = ${SBEI_OBJPATH:Fp9c_11.sbe_seeprom.hdr.bin} P9C_EC12_BIN = ${SBEI_OBJPATH:Fp9c_12.sbe_seeprom.hdr.bin} -# TODO RTC 197497 - Use Axone SBE image once it exists -#P9A_EC10_BIN = ${SBEI_OBJPATH:Fp9a_10.sbe_seeprom.hdr.bin} +P9A_EC10_BIN = ${SBEI_OBJPATH:Fp9a_10.sbe_seeprom.hdr.bin} SBE_PART_INFO = \ ${NIMBUS_SBE_IMG}:21=${P9N_EC21_BIN},22=${P9N_EC22_BIN},23=${P9N_EC23_BIN} \ - ${CUMULUS_SBE_IMG}:13=${P9C_EC13_BIN},11=${P9C_EC11_BIN},12=${P9C_EC12_BIN} -# TODO RTC 197497 - ${AXONE_SBE_IMG}:10=${P9A_EC10_BIN} + ${CUMULUS_SBE_IMG}:13=${P9C_EC13_BIN},11=${P9C_EC11_BIN},12=${P9C_EC12_BIN} \ + ${AXONE_SBE_IMG}:10=${P9A_EC10_BIN} __SBE_PART_BUILD/% : .SPECTARG .PMAKE @${MAKE:T:R} BUILD_SPECIFIC_SBEPART \ @@ -352,8 +350,7 @@ AXONE_HBD_IMG = simics_AXONE_targeting.bin NIMBUS_HCODE_IMG = ${ENGD_SRCPATH:Fp9n.hw_ref_image.bin} CUMULUS_HCODE_IMG = ${ENGD_SRCPATH:Fp9c.hw_ref_image.bin} -# TODO RTC 197497 - Use Axone HCODE image once it exists -AXONE_HCODE_IMG = ${ENGD_SRCPATH:Fp9c.hw_ref_image.bin} +AXONE_HCODE_IMG = ${ENGD_SRCPATH:Fp9a.hw_ref_image.bin} CUMULUS_CENHWIMG_IMG = ${ENGD_SRCPATH:Fcen.hw_ref_image.bin} NIMBUS_CENHWIMG_IMG = cen.hw_ref_image.bin.fake @@ -420,13 +417,13 @@ ZZ2U_HBD_FINAL_IMG = ZZ-2U.HBD.bin GEN_NIMBUS_BIN_FILES = NIMBUS:SBE=${${NIMBUS_SBE_IMG}:P},HCODE=${${NIMBUS_HCODE_IMG}:P},OCC=${${NIMBUS_OCC_IMG}:P},HBD=${${NIMBUS_HBD_IMG}:P},CENHWIMG=${NIMBUS_CENHWIMG_IMG} GEN_CUMULUS_BIN_FILES = CUMULUS:SBE=${${CUMULUS_SBE_IMG}:P},HCODE=${${CUMULUS_HCODE_IMG}:P},OCC=${${CUMULUS_OCC_IMG}:P},HBD=${${CUMULUS_HBD_IMG}:P},CENHWIMG=${${CUMULUS_CENHWIMG_IMG}:P} GEN_CUMULUS_CDIMM_BIN_FILES = CUMULUS_CDIMM:SBE=${${CUMULUS_SBE_IMG}:P},HCODE=${${CUMULUS_HCODE_IMG}:P},OCC=${${CUMULUS_OCC_IMG}:P},HBD=${${CUMULUS_CDIMM_HBD_IMG}:P},CENHWIMG=${${CUMULUS_CENHWIMG_IMG}:P} - # TODO RTC 197497 -- Use Axone SBE Image when available - GEN_AXONE_BIN_FILES = AXONE:SBE=${${CUMULUS_SBE_IMG}:P},HCODE=${${AXONE_HCODE_IMG}:P},OCC=${${AXONE_OCC_IMG}:P},HBD=${${AXONE_HBD_IMG}:P},CENHWIMG=${AXONE_CENHWIMG_IMG} + GEN_AXONE_BIN_FILES = AXONE:SBE=${${AXONE_SBE_IMG}:P},HCODE=${${AXONE_HCODE_IMG}:P},OCC=${${AXONE_OCC_IMG}:P},HBD=${${AXONE_HBD_IMG}:P},CENHWIMG=${AXONE_CENHWIMG_IMG} .else GEN_NIMBUS_BIN_FILES = NIMBUS:SBE=${${NIMBUS_SBE_IMG}:P},HCODE=${${NIMBUS_HCODE_IMG}:P},OCC=${${NIMBUS_OCC_IMG}:P},HBD=${${NIMBUS_HBD_IMG}:P},CENHWIMG=${NIMBUS_CENHWIMG_IMG} GEN_CUMULUS_BIN_FILES = CUMULUS:SBE=${${CUMULUS_SBE_IMG}:P},HCODE=${${CUMULUS_HCODE_IMG}:P},OCC=${${CUMULUS_OCC_IMG}:P},HBD=${${CUMULUS_HBD_IMG}:P},CENHWIMG=${${CUMULUS_CENHWIMG_IMG}:P} GEN_CUMULUS_CDIMM_BIN_FILES = CUMULUS_CDIMM:SBE=${${CUMULUS_SBE_IMG}:P},HCODE=${${CUMULUS_HCODE_IMG}:P},OCC=${${CUMULUS_OCC_IMG}:P},HBD=${${CUMULUS_CDIMM_HBD_IMG}:P},CENHWIMG=${${CUMULUS_CENHWIMG_IMG}:P} - GEN_AXONE_BIN_FILES = AXONE:SBE=${${CUMULUS_SBE_IMG}:P},HCODE=${${AXONE_HCODE_IMG}:P},OCC=${${AXONE_OCC_IMG}:P},HBD=${${AXONE_HBD_IMG}:P},CENHWIMG=${AXONE_CENHWIMG_IMG} + GEN_AXONE_BIN_FILES = AXONE:SBE=${${AXONE_SBE_IMG}:P},HCODE=${${AXONE_HCODE_IMG}:P},OCC=${${AXONE_OCC_IMG}:P},HBD=${${AXONE_HBD_IMG}:P},CENHWIMG=${AXONE_CENHWIMG_IMG} + .endif GEN_ZZ_BIN_FILES = ZZ:WOFDATA=${${ZZ_WOFDATA_IMG}:P},MEMD=${${ZZ_MEMD_IMG}:P},HBD=${${ZZ_HBD_IMG}:P} GEN_ZEPPELIN_BIN_FILES = ZEPPELIN:WOFDATA=${${ZEPPELIN_WOFDATA_IMG}:P},MEMD=${${ZEPPELIN_MEMD_IMG}:P},HBD=${${ZEPPELIN_HBD_IMG}:P} @@ -478,14 +475,12 @@ gen_system_specific_images: build_sbe_partitions .PMAKE NIMBUS_SECT = HBD=${NIMBUS_HBD_FINAL_IMG},SBE=${NIMBUS_SBE_FINAL_IMG},HCODE=${NIMBUS_HCODE_FINAL_IMG},OCC=${NIMBUS_OCC_FINAL_IMG},WOFDATA=${ZZ_WOFDATA_FINAL_IMG},CENHWIMG=${NIMBUS_CENHWIMG_FINAL_IMG},MEMD=${ZZ_MEMD_FINAL_IMG} CUMULUS_SECT = HBD=${CUMULUS_HBD_FINAL_IMG},SBE=${CUMULUS_SBE_FINAL_IMG},HCODE=${CUMULUS_HCODE_FINAL_IMG},OCC=${CUMULUS_OCC_FINAL_IMG},WOFDATA=${ZEPPELIN_WOFDATA_FINAL_IMG},CENHWIMG=${CUMULUS_CENHWIMG_FINAL_IMG},MEMD=${ZEPPELIN_MEMD_FINAL_IMG} CUMULUS_CDIMM_SECT = HBD=${CUMULUS_CDIMM_HBD_FINAL_IMG},SBE=${CUMULUS_SBE_FINAL_IMG},HCODE=${CUMULUS_HCODE_FINAL_IMG},OCC=${CUMULUS_OCC_FINAL_IMG},WOFDATA=${ZEPPELIN_WOFDATA_FINAL_IMG},CENHWIMG=${CUMULUS_CENHWIMG_FINAL_IMG},MEMD=${MEMD_FINAL_IMG} - AXONE_SECT = HBD=${AXONE_HBD_FINAL_IMG},SBE=${AXONE_SBE_FINAL_IMG},HCODE=${AXONE_HCODE_FINAL_IMG},OCC=${AXONE_OCC_FINAL_IMG},WOFDATA=${ZZ_WOFDATA_FINAL_IMG},CENHWIMG=${AXONE_CENHWIMG_FINAL_IMG},MEMD=${ZZ_MEMD_FINAL_IMG} .else HOSTBOOT_DEFAULT_SECTIONS = HBBL=${HBBL_FINAL_IMG},HBB=${HBB_FINAL_IMG},HBI=${HBI_FINAL_IMG},HBRT=${HBRT_FINAL_IMG},HBEL=${HBEL_FINAL_IMG},GUARD=${GUARD_FINAL_IMG},GLOBAL=${GLOBAL_FINAL_IMG},CVPD=${CVPD_FINAL_IMG},MVPD=${MVPD_FINAL_IMG},DJVPD=${DJVPD_FINAL_IMG},RINGOVD=${RINGOVD_FINAL_IMG},SBKT=${SBKT_FINAL_IMG} NIMBUS_SECT = HBD=${NIMBUS_HBD_FINAL_IMG},SBE=${NIMBUS_SBE_FINAL_IMG},HCODE=${NIMBUS_HCODE_FINAL_IMG},OCC=${NIMBUS_OCC_FINAL_IMG},WOFDATA=${ZZ_WOFDATA_FINAL_IMG},CENHWIMG=${NIMBUS_CENHWIMG_FINAL_IMG},MEMD=${ZZ_MEMD_FINAL_IMG} CUMULUS_SECT = HBD=${CUMULUS_HBD_FINAL_IMG},SBE=${CUMULUS_SBE_FINAL_IMG},HCODE=${CUMULUS_HCODE_FINAL_IMG},OCC=${CUMULUS_OCC_FINAL_IMG},WOFDATA=${ZEPPELIN_WOFDATA_FINAL_IMG},CENHWIMG=${CUMULUS_CENHWIMG_FINAL_IMG},MEMD=${ZEPPELIN_MEMD_FINAL_IMG} CUMULUS_CDIMM_SECT = HBD=${CUMULUS_CDIMM_HBD_FINAL_IMG},SBE=${CUMULUS_SBE_FINAL_IMG},HCODE=${CUMULUS_HCODE_FINAL_IMG},OCC=${CUMULUS_OCC_FINAL_IMG},WOFDATA=${ZEPPELIN_WOFDATA_FINAL_IMG},CENHWIMG=${CUMULUS_CENHWIMG_FINAL_IMG},MEMD=${MEMD_FINAL_IMG} - # TODO RTC 197497 -- Use Axone MEMD image - AXONE_SECT = HBD=${AXONE_HBD_FINAL_IMG},SBE=${AXONE_SBE_FINAL_IMG},HCODE=${AXONE_HCODE_FINAL_IMG},OCC=${AXONE_OCC_FINAL_IMG},WOFDATA=${ZZ_WOFDATA_FINAL_IMG},CENHWIMG=${AXONE_CENHWIMG_FINAL_IMG},MEMD=${ZZ_MEMD_FINAL_IMG},EECACHE=${EECACHE_FINAL_IMG},FIRDATA=${FIRDATA_FINAL_IMG} + AXONE_SECT = HBD=${AXONE_HBD_FINAL_IMG},SBE=${AXONE_SBE_FINAL_IMG},HCODE=${AXONE_HCODE_FINAL_IMG},OCC=${AXONE_OCC_FINAL_IMG},WOFDATA=${ZZ_WOFDATA_FINAL_IMG},CENHWIMG=${AXONE_CENHWIMG_FINAL_IMG},EECACHE=${EECACHE_FINAL_IMG},FIRDATA=${FIRDATA_FINAL_IMG},MEMD=${MEMD_FINAL_IMG} .endif .if (${PNOR_LAYOUT_SELECTED} == 2) diff --git a/src/build/simics/standalone.simics b/src/build/simics/standalone.simics index c34dfc794..b256e5230 100755 --- a/src/build/simics/standalone.simics +++ b/src/build/simics/standalone.simics @@ -41,12 +41,11 @@ if ($hb_skip_vpd_preload == 0) { # If Axone and Beyond, load VPD into DDIMM VPD if ($hb_mode == 0){ $dimmSpd = $hb_script_location + "/dimmspd.dat" - $procMvpd = "/gsa/rchgsa/home/c/r/crgeddes/documents/hbBuild/procvpd.dat" - proc_hb0.seeprom0_image.load-file $procMvpd + proc_hb0.seeprom0_image.load-file $vpd_proc echo " - loaded MVPD to seeprom0" - proc_hb0.seeprom2_image.load-file $procMvpd + proc_hb0.seeprom2_image.load-file $vpd_proc echo " - loaded MVPD to seeprom2" ddimm0.VPD_0_image.load-file $dimmSpd diff --git a/src/build/tools/hb b/src/build/tools/hb index d12a40656..9576adb0f 100755 --- a/src/build/tools/hb +++ b/src/build/tools/hb @@ -424,8 +424,8 @@ hb_startsimics() #export MYDIR=$bb/obj/ppc/hbfw/simics/startup.simics #then /runsim -m axone -o hb_script_to_run=$MYDIR export MY_DIR="${SANDBOXBASE}/obj/ppc/simu/scripts/hbfw" - echo "cd ${SANDBOXBASE}/simics/ && ./runsim -m ${MACHINE} hb_script_to_run=${MY_DIR}/startup.simics pnor_img=${MY_DIR}/../../../hbfw/img/axone.pnor sbe_seeprom_img=${SANDBOXBASE}/images/ppc/lab/flash/sbe_seeprom_p9a_10.bin.ecc num_procs=1" - execute_in_sandbox "cd ${SANDBOXBASE}/simics/ && ./runsim -m ${MACHINE} hb_script_to_run=${MY_DIR}/startup.simics pnor_img=${MY_DIR}/../../../hbfw/img/axone.pnor sbe_seeprom_img=${SANDBOXBASE}/images/ppc/lab/flash/sbe_seeprom_p9a_10.bin.ecc num_procs=1" "ppc" + echo "cd ${SANDBOXBASE}/simics/ && ./runsim -m ${MACHINE} hb_script_to_run=${MY_DIR}/startup.simics pnor_img=${MY_DIR}/../../../hbfw/img/axone.pnor sbe_seeprom_img=${SANDBOXBASE}/images/ppc/lab/flash/sbe_seeprom_p9a_10.bin.ecc num_procs=1 vpd_proc=vpd/images/99a8c3fe4e5c74798f5bd4212f3d9a2a" + execute_in_sandbox "cd ${SANDBOXBASE}/simics/ && ./runsim -m ${MACHINE} hb_script_to_run=${MY_DIR}/startup.simics pnor_img=${MY_DIR}/../../../hbfw/img/axone.pnor sbe_seeprom_img=${SANDBOXBASE}/images/ppc/lab/flash/sbe_seeprom_p9a_10.bin.ecc num_procs=1 vpd_proc=vpd/images/99a8c3fe4e5c74798f5bd4212f3d9a2a" "ppc" else execute_in_sandbox \ "start_simics -machine ${MACHINE} ${SIMICSOPTIONS} $*" "ppc" diff --git a/src/usr/isteps/istep07/call_mss_freq.C b/src/usr/isteps/istep07/call_mss_freq.C index 63e46465d..14ef31c06 100644 --- a/src/usr/isteps/istep07/call_mss_freq.C +++ b/src/usr/isteps/istep07/call_mss_freq.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2015,2018 */ +/* Contributors Listed Below - COPYRIGHT 2015,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -188,8 +188,9 @@ void* call_mss_freq( void *io_pArgs ) // allow it to change here TARGETING::Target * l_sys = nullptr; TARGETING::targetService().getTopLevelTarget( l_sys ); - + #ifndef CONFIG_AXONE_BRING_UP uint32_t l_originalNest = Util::getBootNestFreq(); + #endif // Read MC_SYNC_MODE from SBE itself and set the attribute uint8_t l_bootSyncMode = 0; @@ -253,7 +254,7 @@ void* call_mss_freq( void *io_pArgs ) "WARNING skipping p9_mss_freq_system HWP due to error detected in p9_mss_freq HWP. An error should have been committed."); } - + #ifndef CONFIG_AXONE_BRING_UP // Get latest MC_SYNC_MODE and FREQ_PB_MHZ uint8_t l_mcSyncMode = l_masterProc->getAttr<TARGETING::ATTR_MC_SYNC_MODE>(); uint32_t l_newNest = l_sys->getAttr<TARGETING::ATTR_FREQ_PB_MHZ>(); @@ -321,6 +322,7 @@ void* call_mss_freq( void *io_pArgs ) { TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, "WARNING skipping SBE update checks due to previous errors" ); } + #endif } } while(0); diff --git a/src/usr/isteps/istep10/call_host_slave_sbe_update.C b/src/usr/isteps/istep10/call_host_slave_sbe_update.C index 54330843b..3a0c4f021 100644 --- a/src/usr/isteps/istep10/call_host_slave_sbe_update.C +++ b/src/usr/isteps/istep10/call_host_slave_sbe_update.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2015,2018 */ +/* Contributors Listed Below - COPYRIGHT 2015,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -269,6 +269,7 @@ void* call_host_slave_sbe_update (void *io_pArgs) errlCommit( l_errl, HWPF_COMP_ID ); } + #ifndef CONFIG_AXONE_BRING_UP // Call to check state of Processor SBE SEEPROMs and // make any necessary updates l_errl = SBE::updateProcessorSbeSeeproms( @@ -283,6 +284,8 @@ void* call_host_slave_sbe_update (void *io_pArgs) break; } + #endif + // Call to Validate any Alternative Master's connection to PNOR // Only call this in MNFG mode // Any error returned should not fail istep |

