Which u-boot for rpi3? u-boot-rpi3-32 or the old one?

Mark Millard marklmi at yahoo.com
Wed Jun 17 06:32:09 UTC 2020


On 2020-Jun-16, at 22:21, bob prohaska <fbsd at www.zefox.net> wrote:

> On Tue, Jun 16, 2020 at 09:59:24PM -0700, Mark Millard wrote:
>> 
>> 
>> On 2020-Jun-16, at 21:34, bob prohaska <fbsd at www.zefox.net> wrote:
>> 
>>> Just noticed there are now two u-boot ports for the RPi3, one
>>> called u-boot-rpi3-32 and (the presumably original) u-boot-rpi3.
>>> 
>>> The descriptions are equally bland, what's the difference?
>>> The goal is to boot a recent snapshot of -current from USB
>>> using a Pi3b (no +). Now it's suffering from cpu_reset failed.
>> 
>> Looking, the check in history for sysutils/u-boot-rpi3-32
> 
> Could you write a few words about how one checks such history?
> There doesn't seem to be anything in /usr/ports/UPDATING.


Getting there directly:

https://svnweb.freebsd.org/ports/head/sysutils/u-boot-rpi3-32/?view=log


In steps via exploring:

https://svnweb.freebsd.org

then click on ports/ to get to: https://svnweb.freebsd.org/ports/

then click on head/ to get to: https://svnweb.freebsd.org/ports/head/

then click on sysutils/ to get to: https://svnweb.freebsd.org/ports/head/sysutils/

then select Page 2 in the Page popup so that the various u-boot* would
be in range
     This gets one to: https://svnweb.freebsd.org/ports/head/sysutils/?dir_pagestart=1000
     (currently)

then click on the number to the right of u-boot-rpi3-32/ (536829 currently)
     This gets one to: https://svnweb.freebsd.org/ports/head/sysutils/u-boot-rpi3-32/?view=log

For the example in use here there is only one log entry
currently.

>> reports for the creation of sysutils/u-boot-rpi3-32 :
>> 
>> Revision 536829 - Directory Listing 
>> Added Fri May 29 01:27:16 2020 UTC (2 weeks, 5 days ago) by brd
>> Add sysutils/u-boot-rpi3-32 to build a 32-bit version of u-boot
>> 
>> This is useful for using the camera hardware, as
>> misc/raspberrypi-userland does not support aarch64.
>> 
>> Approved by:	imp, manu
>> Differential Revision:	
>> https://reviews.freebsd.org/D21603
>> 
>> 
>> So:
>> 
>> A) sysutils/u-boot-rpi3 is for use with aarch64 FreeBSD
>> B) sysutils/u-boot-rpi3-32 is for use with armv7 FreeBSD
>> 
>> 
> 
> Mine is case A, but Case B is a little puzzling; will armv7 
> run on a Pi3 ? I thought arm64 was mandatory.

Sure, even Raspberry Pi OS still does not even have an
official 64-bit release for any armv7 or later based
Raspberry Pi that I'm aware of: all armv7 for official
releases for such RPi*'s. (There are earlier stage
64-bit materials these days for the aarch64 capable
RPi*'s, at least for the kernel. But no 64-bit/aarch64
userland that I'm aware of: just armv7.)

I'm unclear on if there are contexts for
which both sysutils/u-boot-rpi2/ and
sysutils/u-boot-rpi3-32/ are possibilities
for use with armv7 FreeBSD. sysutils/u-boot-rpi2/
does have a log entry indicating that it was
tested on both a RPi2 V1.1 and a v1.2, but it is
not explicit about which FreeBSD variant(s) were
involved for either. If there are contexts where
both u-boot's are possibilities, then I do not
know why one would pick one over the other.
May be sysutils/u-boot-rpi2/ can not handle
an RPi3 despite handling a RPi2 V1.2?


FYI: even under aarch64 FreeBSD, one can
install an armv7 world in its own directory
tree and chroot to it and run armv7 software
(world material, ports, etc., not kernel).
And poudriere can use such to do armv7 port
builds on CortexA53/A57/A72 and many more
without qemu being involved (or even
installed).

(There are oddities like Cortex-A32 that is
ARMv8.0-A but 32-bit only and Cortex-A34 that
is ARMv8.0-A but 64-bit only. Qualcomm also
has an ARMv8.1-A that is AArch64 only, not
32-bit. There may be more such oddities.)

===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)



More information about the freebsd-ports mailing list