diff options
author | Raptor Engineering Development Team <support@raptorengineering.com> | 2020-02-14 18:32:49 +0000 |
---|---|---|
committer | Raptor Engineering Development Team <support@raptorengineering.com> | 2020-02-17 12:33:18 +0000 |
commit | 136518a247758b2500054db5bc7708ba75a10d93 (patch) | |
tree | 683844546081fd5f56c2b574d1881a316cb9e760 /meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-update.sh | |
parent | 20475e2de0ba678dfa660d3415b6eee21795bc4f (diff) | |
download | talos-openbmc-136518a247758b2500054db5bc7708ba75a10d93.tar.gz talos-openbmc-136518a247758b2500054db5bc7708ba75a10d93.zip |
Update RCS MAC address persistance in updater script to allow U-boot environment changes across update files
Diffstat (limited to 'meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-update.sh')
-rwxr-xr-x | meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-update.sh | 34 |
1 files changed, 27 insertions, 7 deletions
diff --git a/meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-update.sh b/meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-update.sh index efe47cfe8..c342e504d 100755 --- a/meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-update.sh +++ b/meta-phosphor/recipes-phosphor/initrdscripts/files/obmc-update.sh @@ -235,7 +235,10 @@ then mkdir -p /var/lock BMC_MAC_ADDRESS=$(fw_printenv -n ethaddr) - echo "Detected RCS BMC MAC address $BMC_MAC_ADDRESS" + if test -n "$BMC_MAC_ADDRESS" + then + echo "Detected RCS BMC MAC address $BMC_MAC_ADDRESS" + fi for f in $imglist do @@ -245,16 +248,33 @@ then rm $f continue fi + + UPDATE_IMAGE_MAC=0 + if test -n "$BMC_MAC_ADDRESS" + then + if test "${f#$image}" = "bmc" + then + UPDATE_IMAGE_MAC=1 + fi + if test "${f#$image}" = "u-boot" + then + UPDATE_IMAGE_MAC=1 + fi + fi + + if test $UPDATE_IMAGE_MAC -eq 1 + then + echo "Restoring RCS BMC MAC address..." + bbe -e "s/rptaddr=01:23:45:67:89:ab/ethaddr=${BMC_MAC_ADDRESS}/" -o /run/initramfs/${f#$image}.modified $f + rm $f + bbe -e "s/rpt1addr=01:23:45:67:89:ab/eth1addr=${BMC_MAC_ADDRESS}/" -o $f /run/initramfs/${f#$image}.modified + rm /run/initramfs/${f#$image}.modified + fi + m=$(findmtd ${f#$image}) echo "Updating ${f#$image}..." flashcp -v $f /dev/$m && rm $f done - - echo "Restoring RCS BMC MAC address..." - fw_setenv ethaddr $BMC_MAC_ADDRESS - fw_setenv eth1addr $BMC_MAC_ADDRESS - fw_setenv rptaddr - fw_setenv rpt1addr fi if test -d $save -a "x$toram" = xy |