Upgrade to 13.2 on old iMac

Hello,
I've deferred the upgrade to 13.2 (from 12.4) on my old iMacs for as long as possible, but the day has come and I'm stuck. The upgrade proceeded OK until I reached the point of rebooting into 13.2, which hangs, apparently because the framebuffer information is wrong. The attached photograph illustrates the situation when the boot process halts. In older versions of FreeBSD it was possible to specify the address and stride of the framebuffer in loader.conf, but that does not seem to work in 13.2-RELEASE.

The machine is a mid-2007 model A1224 (EMC 2133).

Please ask if you need further information and I appreciate any help offered.

sprock
 

Attachments

  • failed_boot.jpg
    failed_boot.jpg
    59.3 KB · Views: 98
If you have not already done so, please copy what's required to the EFI system partition.

freebsd-update(8) does not touch the ESP.

… (from 12.4) …

See <https://www.freebsd.org/releases/13.1R/relnotes/#boot>.

… apparently because the framebuffer information is wrong. …

The information is visible, however that's probably not what's wrong. If you like, compare your photograph above with the second photograph here:


255073 was one of numerous loader-related reports that were effectively fixed in 13.1-RELEASE. The release note (GitHub commit below) lacked a link, I'm sorry. The pre-commit review drew attention to the final paragraph of part of a 2021 status report <https://www.freebsd.org/status/report-2021-07-2021-09/#_improved_amd64_uefi_boot>.

loader.efi(8) now is vastly expanded compared to the 13.0-RELEASE edition of the page. I should probably recommend looking first at the current edition of the manual page; then the status report, only if the manpage does not help to resolve the issue for you.

HTH



 
Thanks for your reply and thorough explanation. As it turns out the efi partition is 780k but loader.efi from 13.2 is 889k. I assume the only option now is to do a clean install of 13.2.
 
Or use boot1.efi instead of loader.efi.
It's 158.5kB (162304bytes) on my stable/14 environment, but as I've patched its source code using the latest patch I've uploaded on PR 207940, the genuine one shoud be a bit smaller.
Note that my patch is based on the original author Naomichi Nonaka's latest one, and the only difference is how the candidates to boot is displayed.
 
I copied boot1.efi to efi/efi/freebsd. Is that what you meant? Unfortunately the system still hangs at boot.
 
I copied boot1.efi to efi/efi/freebsd. Is that what you meant? Unfortunately the system still hangs at boot.
Usually, if you installed using bsdinstall (default installer in installation CD/DVD and memstick.img), ESP on the first drive found to /boot/efi, so the directory should be, if properly mounted, /boot/efi/efi/freebsd, right?
Is there previous loader.efi? If so, rename loader.efi there to something else, for example, loader.old and rename boot1.efi there to loader.efi to mimic it.
Or change the entry in UEFI boot manager which pointing to loader.efi there to boot1.efi there using efibootmgr(8).
 
Back
Top