# Initialize HB search paths. $hb_startup_path = (lookup-file hbfw/startup.simics) $hb_script_location = (python "''.join(map('/'.__add__,\""+$hb_startup_path+"\"[1:].split('/')[0:-1]))") python "os.environ['HB_TOOLPATH'] = \""+$hb_script_location+"\"" $model = (shell "printenv CEC_MODEL") $hb_machine = "unknown" if ($model == "p9_nimbus") {$hb_machine = "nimbus"} if ($model == "p9zz_1s2u") {$hb_machine = "zztop"} python "os.environ['HB_MACHINE'] = \""+$hb_machine+"\"" echo "HB_MACHINE is: "+$hb_machine # Setup some common vars to use across machine types $hb_masterproc = "" @simenv.hb_masterproc = quiet_run_command("get-master-proc")[0] echo "Master Proc is: "+$hb_masterproc $hb_pnor = "" @simenv.hb_pnor = quiet_run_command("get-master-pnor")[0] try { @SIM_get_object(simenv.hb_pnor[0]) } except { # Default to Nimbus name foreach $pnor in (get-object-list -all BmcCmp) { $hb_pnor = ($pnor) } } echo "Master PNOR is: "+$hb_pnor # Choose a default core to start with $hb_cpu = "system_cmp0.cpu0_0_00_0" echo "Defaulting to CPU "+$hb_cpu+" for Hostboot tools" # @todo RTC 130184 Simics P9 SBE # Prevent SBE Updates from happening on an IPL #echo "Altering SBE SEEPROM Versions to disable Update in IPL" #foreach $cc in (get-object-list p9_proc) { # ($cc).procSBE0Primary_eeprom_image.set 0x300 0x5A5A5A5A 8 -l # ($cc).procSBE0Backup_eeprom_image.set 0x300 0x5A5A5A5A 8 -l #} # Load HB debug tools. try { run-python-file (lookup-file hbfw/simics-debug-framework.py) run-python-file (lookup-file hbfw/hb-simdebug.py) } except { echo "ERROR: Failed to load Hostboot debug tools." } ########################### WORKAROUNDS #################################### # Setup the mailbox. # for mbox on core 0 use: # proc_venicechip_cmp0.psi_hb->psihb_xivr_fsi=0x0140000000 #02010917 # for mbox on core 5 use: #proc_venicechip_cmp0.psi_hb->psihb_xivr_fsi=0x0000A00140000000 #02010917 #proc_venicechip_cmp0.psi_hb->psihb_irsn=0x00030003FFFF0000 #0201091b