Re: u-boot debug, was: Re: U-boot on RPI3, sees disk but won't boot it

From: bob prohaska <fbsd_at_www.zefox.net>
Date: Tue, 27 Sep 2022 16:03:28 UTC
On Sun, Sep 25, 2022 at 04:43:15PM -0700, Mark Millard wrote:
[snip]
> 
> Because USB3 introduces various differences, some testing
> via the RPi4B USB2 ports is appropriate.
> 

That turns out to be an easy experiment. Here's a summary: 

I have two identical mass storage devices (Seagate Barracuda 1TB)
in identical Sabrent EC-UASP USB-SATA enclosures. One runs an old
installation of -current and is connected to a Pi4. The other runs
a recent 13-stable via a Sabrent USB 3 powered hub to a Pi3B.

Neither machine has a microSD card installed.

For as long as I've had them, the Pi4 running -current has booted
reliably and the Pi3 running 13-stable has failed u-boot's disk
discovery on reboot around half the time. When u-boot succeeded,
the 13-stable system ran perfectly until rebooted. 

After swapping the disks, enclosures and cables between Pi4 and
Pi3 (including the hub) both machines booted on the first try,
every try.

Moving the 13-stable (troublesome) disk to the Pi4's USB 2 port
didn't cause any problems either. The disk continued to boot.
Restoring the original setup restored the boot failures.

The u-boot versions are different: 13-stable uses u-boot-rpi-arm64,
compiled yesterday. The -current disk still uses the u-boot that
came with the snapshot used to set up the disk, reporting
U-Boot 2020.10 (Mar 04 2021 - 04:32:31 +0000)

Config.txt is identical apart from force_turbo=1 on 13-stable,
which didn't make any visible difference when added. 

Using the older u-boot on the 13-stable disk didn't have any 
effect. Are there any other files that alter u-boot behavior?

It's hard to see how the hub's at fault, since it works with 
-current.  

I did look at common/usb.c but it's far from obvious how one
can turn on the logging feature so as to report more errors
to the console.

Thanks for reading and replying!

bob prohaska