Re: Dealing with slow USB disks, was: Re: Saving environment variables in u-boot

bob prohaska <[email protected]>
Newsgroups gmane.os.freebsd.devel.arm
Message-ID <[email protected]>
On Sun, Dec 19, 2021 at 04:48:58PM -0800, Mark Millard wrote:
> On 2021-Dec-19, at 15:54, bob prohaska <[email protected]> wrote:
> 
> > On Sun, Dec 19, 2021 at 01:13:12PM -0800, Mark Millard wrote:
> >> On 2021-Dec-19, at 11:28, bob prohaska <fbsd at www.zefox.net> wrote:
> >> 
> >>> On Sun, Dec 19, 2021 at 12:55:12AM -0800, Mark Millard wrote:
> > ....
> >>>> (The above are JMicro based.) Can you identify your adapter
> >>>> type?
> >>>> 
> >>> 
> >>> The enclosure is simply marked SABRENT EC_UASP, 
> >>> The usb-sata bridge is marked   JMS576
> >>>                               2026 QH8A3A A
> >>>                               E76H20013
> >> 
> >> THat is one of the ones listed on
> >> 
> >> https://jamesachambers.com/fixing-storage-adapters-for-raspberry-pi-via-firmware-updates/
> >> 
> >> as potentially fixable (with quirks possibly involved). See:
> >> 
> >> https://www.sabrent.com/download/jmicron-sabrent-update-tool/
> >> 
> >> for SABRENT's Firmware-Update Tool. Looks like Windows7+ is
> >> a required context for doing the firmware update.
> >> 
> > Yes, I'm searching for  a Windows machine to give it a try.
> > I wonder how new the update is; running strings on the .exe finds
> > Borland C++ - Copyright 2002 Borland Corporation
> > 
> >> I've not checked if FreeBSD has any quirks in place.
> >> 
> > My troublesome Pi3 and trouble-free Pi4 with JMicron bridge report
> > umass0:  SCSI over Bulk-Only; quirks = 0x8100
> > da0: quirks=0x2<NO_6_BYTE>
> 
> FreeBSD version(s)? (The quirks lists can be distinct.)
> U-Boot versions(s)?
> RPi* firmware version(s)?

For the Pi4 that works I find
FreeBSD 14.0-CURRENT (GENERIC) #18 main-aee99ab4fe: Wed Dec 15 23:45:26 PST 2021
U-Boot 2020.10 (Mar 04 2021 - 04:32:31 +0000)
The start* files are all from March 4 or March 7, 2021
The files haven't been altered manually, but possibly by installworld/kernel.

The Pi3 with problems runs
FreeBSD pelorus.zefox.org 13.0-STABLE FreeBSD 13.0-STABLE #2 stable/13-n248556-0848451a2ee: Wed Dec 15 19:54:57 PST 2021     [email protected]:/usr/obj/usr/src/arm64.aarch64/sys/GENERIC  arm64

The start* files are dated March 3, 2021, 
u-boot.bin on the microSD card seems to be 
U-Boot 2020.10 (Apr 09 2021 - 03:55:54 +0000)
and all are from the original -release image.
> 
> The RPi4 could well have distinct results on USB3 vs.
> USB2 ports: The USB2 ports are likely limited to 500mA
> but the USB3 ports support 900mA (so: near the spin-up
> requirement).

I probably shouldn't compare the Pi4 with the Pi3, they're
very different in the USB department. 

> 
> > A second  Pi3 that uses the same Seagate drive through 
> > an ASMT bridge reports
> > umass0:  SCSI over Bulk-Only; quirks = 0x0100
> > da0: quirks=0x2<NO_6_BYTE>
> > It has no trouble finding the disk in repeated attempts.
> 
> FreeBSD version? (The quirks lists can be distinct.)
FreeBSD www.zefox.org 14.0-CURRENT FreeBSD 14.0-CURRENT #3 main-n249322-ae87a08c410: Mon Sep 13 14:44:29 PDT 2021     [email protected]:/usr/obj/usr/src/arm64.aarch64/sys/GENERIC  arm64

> U-Boot versions?
On the microSD:
U-Boot 2019.10 (Mar 17 2020 - 22:01:14 -0700) 

> RPi* firmware version?
Quite old also. 2018 and 2019, but I'm not sure the dates are right.
There's a file named uboot.env that is dated Dec. 30 1979, that
can't be right.


> 
> And are the RPi3's the same model (B vs. B+)?
>

Probably not, they were bought some time apart. I'd be hard pressed 
to say which is which without disconnecting them.
 
> >> 
> >> The power (current) requirements to get this drive spinning is double
> >> what a USB2 port has for a maximum in the USB2 standard: The drive is
> >> problematical unless power is being drawn from 2 USB2 ports for
> >> the one drive. EC-UASP does not seem to support such
> >> dual-USB2-port use. (The RPi*'s are not designed to provide extra
> >> power on a USB2 port as far as I know.)
> >> 
> > 
> > It's clear that I'm pushing limits quite hard at startup. Still, by
> > the time of disk discovery the initial surge is over.
> 
> Being mismatched for power could have non-time-local
> consequences to either the drive or the adapter or
> the RPi*.
> 
> (Avoiding USB Hub protocol activity is a separate/additional
> distinction.)
> 
> > There's no
> > mouse or keyboard on either Pi3. The Pi3 that finds the disk is 
> > running -current, the Pi3 that can't find the disk is stable/13.
> 
> What specific current and stable/13 commits?
No custom changes.

> What of U-Boot versions?
> What of RPi* firmware versions?
>
The best summary I can come up with is: 
Not able to find the USB disk, all dated 2021.
Able to find the USB disk, dated 2020 and older.


> There are cases with external power allowed that avoid
> adding the USB Hub protocol to the activity.
> 

I've got a powered usb-sata adapter on my shopping list.

Thanks for writing!

bob prohaska
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.