Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 20 Apr 2020 12:46:56 -0700
From:      bob prohaska <fbsd@www.zefox.net>
To:        Mark Millard <marklmi@yahoo.com>
Cc:        freebsd-arm@freebsd.org, bob prohaska <fbsd@www.zefox.net>
Subject:   Re: Booting from USB on RPi3
Message-ID:  <20200420194656.GB94315@www.zefox.net>
In-Reply-To: <B2921007-5CEA-4164-AE33-B470C70C35B5@yahoo.com>
References:  <20200420172512.GA94315@www.zefox.net> <B2921007-5CEA-4164-AE33-B470C70C35B5@yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Apr 20, 2020 at 11:22:32AM -0700, Mark Millard wrote:
> 
> 
> On 2020-Apr-20, at 10:25, bob prohaska <fbsd atwww.zefox.net> wrote:
> 
> > but when the microSD card is removed nothing happens (no rainbow screen) on
> > power-up. Presumably  my Pi3B is too old.
> 
> Quoting https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/msd.md :
> 
> QUOTE (presumes temporary boot of the typical RPi OS instead of FreeBSD)
> . . . check that the OTP has been programmed with:
> 
> $ vcgencmd otp_dump | grep 17:
> 
> 17:3020000a
> 
> Check that the output 0x3020000a is shown. If it is not, then the OTP bit has not been successfully programmed. In this case, go through the programming procedure again. If the bit is still not set, this may indicate a fault in the Pi hardware itself.
> END QUOTE
> 
> Have you checked this? Does it report 3020000a?
> 

Yes, it does, using an old Raspbian Stretch installation on microSD. AIUI,
this feature only allows boot with no microSD at all. If a microSD
is present, whatever bootloader is on it will start and that seems to
be the case here. 

Elsewhere the Pi Foundation notes that some Rpi3's were unable to
use the boot-from-usb feature without requiring a microSD card.
It's said that the "special" bootcode.bin will work in those cases. 
However, it's unlikely the new bootcode.bin will correctly load and
start Freebsd. Since FreeBSD's u-boot seems able to see the USB
hard disk that looked like  a good  place to start.

My error (I think) is the command syntax for usbboot. It requires
an address, a device and a partition. The only address the system
reports is usb@7e980000, but using that string verbatim causes a
syntax error, thus:

U-Boot> usbboot usb@7e980000 0:1

Loading from usb device 0, partition 1: Name: usbda1  Type: U-Boot
** Unknown image type

If I omit the usb@, _something_ gets loaded, but causes a reboot.

Replacing 0:1 with 1:1 silently renews the u-boot prompt with no error. 
Replacing 0:1 with 0:2 reproduces the synchronous abort handler message.

Using
U-Boot> usb dev
reports
IDE device 0: Vendor: Initio Rev: 1.06 Prod: MHT2040AH       
            Type: Hard Disk
            Capacity: 38154.3 MB = 37.2 GB (78140160 x 512)
The reference to IDE probably stems from having an IDE drive
in a USB 2.0 adapter. In any case, it's the only USB drive
on the system. It contains a FreeBSD image written using dd, 
just like a bootable microSD card. 

Thanks for reading, and any ideas!

bob prohaska







Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20200420194656.GB94315>