In short, the firmware cannot be updated either by upgrading macOS to High Sierra or by bless manually. Here comes the detail.
Attempt 1 - update it by updating macOS from 10.12.6 to 10.13.2
Failed with error message "An error occurred while verifying firmware". Key info in ia.log is as following.
ROM does not support APFS
Clearing automation and attempting to rebless.
Failed to get disk for UUID specified for rebless.
Operation: Verify firmware failed, Failure Reason: Error Domain=com.apple.osinstall Code=512
If look into previous log of EFI updating, it seems they are quite normal.
EFI currentVersion: [0000000000D30008] EFI updateVersion: [0000000000D70000]
/Volumes/bless.YdD7/EFI/APPLE/FIRMWARE/MBP91_00D7_B00.scap created successfully
Writing firmware update installed cookie (/Volumes/MacSSD/macOS Install Data/.FirmwareUpdateInstalled)
/usr/libexec/efiupdater finished with status: 0
Thus, I've no idea why High Sierra installer failed to update the EFI firmware at the very first time.
Attempt 2 - update EFI firmware manually
According to the chapter 2.0 How Does a Mac Update Its EFI Firmware & How Do You Find Your EFI Version of The Apple of Your EFI , with the following command bless, the file MBP91_00D3_B0C_LOCKED.scap extracted from mac2015002efiupdate.dmg, which downloaded from Apple.com, and the file MBP91_00D7_B00.scap extracted from Install macOS High Sierra.app, it executed successfully.
sudo bless -mount / -firmware <PATH>/MBP91_00D7_B00.scap --verbose --recovery
Shutdown, Power on. It got a flashing LED light indicating the firmware was about to be updated. Then, 3 times power off automatically in a short period, end up with a normal OS X startup. Everything stay still. In another word, the Boot ROM Version hasn't been changed.
Update @11 Jan 2018:
I've just seem a related post Is there any way to manually bless firmware when main disk is external?
It seems that the root cause is running OS X from a second internal disk. Unfortunately the first one of my MacBook is out of order.
Update @13 Jan 2018:
Confirmed the following methods do not work.
- replaced the Samsung SSD with original Apple HDD and tried again. The ia.log was same as that of SSD
- kept internal hard drive connected, connected the USB external drive or SXCARD reader. It selected the ESP on internal hard drive as the staging EFI. Thus, same result as above.
- disconnect all internal hard drive, connected the USB external drive and SXCARD reader. Got the log as
No appropriate ESP could be found. Error while writing firmware updater for EFI.