ubldr to kernel handoff fails
glenn <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.arm |
|---|---|
| Message-ID | <[email protected]> |
Problem: ubldr fails to pass control to a FreeBSD kernel when U-boot 2018.01 is used but succeeds with U-boot 2013.01 Details: I've built a working OPNsense 20.7 installation on a HardenedBSD 12.1 OS running off an SD card in a SolidRun ClearFog Base. The U-boot for this is a customization of 2013.01. Everything works as expected, but I want to update U-boot to 2018.01. To that end I use dd to copy over a custom 2018.01 U-boot image to the beginning of the SD card. The FAT partition and the UFS partition are untouched by this. U-boot proper and ubldr function as expected. When given the location of a dtb that I know that works, the boot progress halts immediately after: Kernel entry at 0xc00180... Kernel args: (null) is printed to the serial console. Removing the SD card and mounting the UFS file system on another FreeBSD system, I've checked that "readelf /mnt/boot/kernel/kernel" reports that the kernel entry address is indeed 0xc00180. Some months ago I ran into a problem that had the same symptoms, but that turned out to be a device tree issue where the serial console wasn't properly configured. That doesn't seem to be the case here, since the failed and successful systems use the same dtb file. A possible explanation occurs to me that the underlying U-boot API that ubldr depends on has changed in its functionality so that ubldr no longer works properly. This is a baffling issue for me and I would appreciate any ideas anyone has on the matter. _______________________________________________ [email protected] mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-arm To unsubscribe, send any mail to "[email protected]"