diff options
Diffstat (limited to 'src/build/simics/standalone.simics')
-rwxr-xr-x | src/build/simics/standalone.simics | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/src/build/simics/standalone.simics b/src/build/simics/standalone.simics index dbd5cc920..c785dfc44 100755 --- a/src/build/simics/standalone.simics +++ b/src/build/simics/standalone.simics @@ -13,6 +13,13 @@ if ($hb_mode == 0) { # Axone and beyond $hb_skip_vpd_preload = 1; } +# Load up the pnor parsing function +try { + add-directory $hb_pnor_dir + run-python-file (lookup-file simpnor.py) + echo "Loaded simpnor.py" +} except { "No simpnor.py found, using hardcoding PNOR offsets." } + # Preload VPD in PNOR unless told not to if ($hb_skip_vpd_preload == 0) { @@ -56,10 +63,33 @@ if ($hb_skip_vpd_preload == 0) { if ($hb_mode == 0) { $eccPreload = (lookup-file "%simics%/eecache_prebuilt.bin.ecc") # NOTE must change offset if PNOR layout changes EECACHE offsets - echo " - Loading prebuilt EECACHE "+$eccPreload+" at 0x3D80000 in PNOR" + echo " - Loading prebuilt EECACHE "+$eccPreload+" at 0x2C000 in PNOR" ($hb_pnor).load-file $eccPreload 0x2C000 } +# Look for attribute overrides to load +try { + $attr_tmp = (lookup-file "ATTR_TMP") + try { + @simenv.attr_tmp_addr = hb_get_pnor_offset("ATTR_TMP") + } except { + $attr_tmp_addr = 0x000B2000 + } + echo " - Loading ATTR_TMP "+$attr_tmp+" at "+$attr_tmp_addr+" in PNOR" + ($hb_pnor).load-file $attr_tmp $attr_tmp_addr +} except { echo "No attribute overrides found." } + +# Look for a guard file to load +try { + $guard = (lookup-file "GUARD") + try { + @simenv.guard_addr = hb_get_pnor_offset("GUARD") + } except { + $guard_addr = 0x000AC000 + } + echo " - Loading GUARD "+$guard+" at "+$guard_addr+" in PNOR" + ($hb_pnor).load-file $guard $guard_addr +} except { echo "No gard records found." } # Turn on all processor cec-chips if ($hb_mode == 1) { |